.ti 0
3.2.3 SILC Server Ports
-SILC uses currently TCP port 334 on SILC network. However, this is not
-official port assigned for SILC. Official port has been requested by
-the IANA.
+Following ports has been assigned by IANA for the SILC protocol:
+
+.in 10
+silc 706/tcp SILC
+silc 706/udp SILC
+.in 3
If there are needs to create new SILC networks in the future the port
-numbers must be officially assigned by the IANA. Most convenience case
-would be to assign port numbers upwards from 334.
+numbers must be officially assigned by the IANA.
Server on network above privileged ports (>1023) should not be trusted
as they could have been set up by untrusted party.
None. This is reserved command and must not be sent.
- 2 SILC_COMMAND_WHOIS
+ 1 SILC_COMMAND_WHOIS
- Max Arguments: 2
- Arguments: (1) <nickname>[@<server>] (2) [<count>]
+ Max Arguments: 3
+ Arguments: (1) <nickname>[@<server>] (2) [<Client ID>]
+ (3) [<count>]
+
+ Whois command is used to query various information about specific
+ user. The user maybe requested by their nickname and server name.
+ The query may find multiple matching users as there are no unique
+ nicknames in the SILC. The <count> option maybe given to narrow
+ down the number of accepted results. If this is not defined there
+ are no limit of accepted results. The query may also be narrowed
+ down by defining the server name of the nickname.
- Whois. Whois command is used to query various information about
- specific user. The user maybe requested by their nickname and
- server name. The query may find multiple matching users as
- there are no unique nicknames in the SILC. The <count> option
- maybe given to narrow down the number of accepted results. If
- this is not defined there are no limit of accepted results.
- The query may also be narrowed down by defining the server name
- of the nickname.
+ It is also possible to search the user by Client ID. If <Client ID>
+ is provided server must use it as the search value instead of
+ the <nickname>.
To prevent miss-use of this service wildcards in the nickname
or in the servername are not permitted. It is not allowed
SILC_STATUS_ERR_TOO_MANY_PARAMS
- 3 SILC_COMMAND_WHOWAS
+ 2 SILC_COMMAND_WHOWAS
Max Arguments: 2
Arguments: (1) <nickname>[@<server>] (2) [<count>]
SILC_STATUS_ERR_TOO_MANY_PARAMS
- 4 SILC_COMMAND_IDENTIFY
+ 3 SILC_COMMAND_IDENTIFY
Max Arguments: 2
Arguments: (1) <nickname>[@<server>] (2) [<count>]
be based on specific nickname request.
Implementations may not want to give interface access to this
- commands as it is hardly a command that would be used a end user.
+ command as it is hardly a command that would be used a end user.
However, it must be implemented as it is used with private message
sending.
SILC_STATUS_ERR_TOO_MANY_PARAMS
- 5 SILC_COMMAND_NICK
+ 4 SILC_COMMAND_NICK
Max Arguments: 1
Arguments: (1) <nickname>
SILC_STATUS_ERR_TOO_MANY_PARAMS
- 6 SILC_COMMAND_LIST
+ 5 SILC_COMMAND_LIST
Max Arguments: 2
Arguments: (1) [<Channel ID>] [<server>]
SILC_STATUS_ERR_NO_SUCH_SERVER
- 7 SILC_COMMAND_TOPIC
+ 6 SILC_COMMAND_TOPIC
Max Arguments: 2
Arguments: (1) <Channel ID> (2) [<server>]]
SILC_STATUS_ERR_NO_CHANNEL_PRIV
- 8 SILC_COMMAND_INVITE
+ 7 SILC_COMMAND_INVITE
Max Arguments: 2
Arguments: (1) <Client ID> (2) <Channel ID>
SILC_STATUS_ERR_USER_ON_CHANNEL
- 9 SILC_COMMAND_QUIT
+ 8 SILC_COMMAND_QUIT
Max Arguments: 1
Arguments: (1) [<quit message>]
This command does not reply anything.
- 10 SILC_COMMAND_KILL
+ 9 SILC_COMMAND_KILL
Max Arguments: 2
Arguments: (1) <Client ID> (2) [<comment>]
- 11 SILC_COMMAND_INFO
+ 10 SILC_COMMAND_INFO
Max Arguments: 1
Arguments: (1) [<server>]
SILC_STATUS_OK
SILC_STATUS_ERR_WILDCARDS
SILC_STATUS_ERR_NOT_REGISTERED
+ SILC_STATUS_ERR_NOT_ENOUGH_PARAMS
SILC_STATUS_ERR_TOO_MANY_PARAMS
- SILC_STATUS_ERR_NO_SUCH_SERVER_ID
SILC_STATUS_ERR_NO_SUCH_SERVER
- 12 SILC_COMMAND_CONNECT
+ 11 SILC_COMMAND_CONNECT
Max Arguments: 2
Arguments: (1) <Server ID>
SILC_STATUS_ERR_NO_ROUTER_PRIV
- 13 SILC_COMMAND_PING
+ 12 SILC_COMMAND_PING
Max Arguments: 1
Arguments: (1) <Server ID>
SILC_STATUS_ERR_NOT_REGISTERED
- 14 SILC_COMMAND_OPER
+ 13 SILC_COMMAND_OPER
Max Arguments: 2
Arguments: (1) <username> (2) <authentication data>
SILC_STATUS_ERR_AUTH_FAILED
- 15 SILC_COMMAND_JOIN
+ 14 SILC_COMMAND_JOIN
Max Arguments: 3
Arguments: (1) <channel> (2) [<passphrase>]
SILC_STATUS_ERR_USER_ON_CHANNEL
- 16 SILC_COMMAND_MOTD
+ 15 SILC_COMMAND_MOTD
Max Arguments: 1
Arguments: (1) <server>
SILC_STATUS_ERR_NO_SUCH_SERVER
- 17 SILC_COMMAND_UMODE
+ 16 SILC_COMMAND_UMODE
Max Arguments: 2
Arguments: (1) <Client ID> (2) <client mode mask>
SILC_STATUS_ERR_NO_CLIENT_ID
- 18 SILC_COMMAND_CMODE
+ 17 SILC_COMMAND_CMODE
- Max Arguments: 6
+ Max Arguments: 8
Arguments: (1) <Channel ID> (2) <channel mode mask>
(3) [<user limit>] (4) [<passphrase>]
- (5) [<Client ID>] (6) [<cipher>[:<key len>]]
+ (5) [<ban mask>] (6) [<invite list>]
+ (7) [<Client ID>] (8) [<cipher>[:<key len>]]
This command is used by client to set or change channel flags on
a channel. Channel has several modes that set various properties
Typical implementation would use [+|-]b on user interface
to set/unset this mode.
+
+ 0x0100 SILC_CMODE_INVITE
+
+ Invite list has been set to the channel. The invite list
+ can be used to mark the clients that is able to join
+ channel without being invited when the channel is set to
+ be invite-only channel. The <invite list> argument is the
+ set invite mask. When unsetting entry from the invite list
+ the entry must be provided as argument. Channel founder and
+ channel operator may set/unset this mode.
+
+ Typical implementation would use [+|-]I on user interface
+ to set/unset this mode.
+
- 0x0100 SILC_CMODE_OPERATOR
+ 0x0200 SILC_CMODE_OPERATOR
Sets channel operator privileges on the channel for a
client on the channel. The <Client ID> argument is the
to set/unset this mode.
- 0x0200 SILC_CMODE_CIPHER
+ 0x0400 SILC_CMODE_CIPHER
Sets specific cipher to be used to protect channel
traffic. The <cipher> argument is the requested cipher.
- 19 SILC_COMMAND_KICK
+ 18 SILC_COMMAND_KICK
Max Arguments: 3
Arguments: (1) <channel> (2) <Client ID>
SILC_STATUS_ERR_NO_CLIENT_ID
- 20 SILC_COMMAND_RESTART
+ 19 SILC_COMMAND_RESTART
Max Arguments: 0
Arguments: None
SILC_STATUS_ERR_NO_SERVER_PRIV
- 21 SILC_COMMAND_CLOSE
+ 20 SILC_COMMAND_CLOSE
Max Arguments: 1
Arguments: (1) <Server ID>
SILC_STATUS_ERR_NO_SUCH_SERVER_ID
- 22 SILC_COMMAND_DIE
+ 21 SILC_COMMAND_DIE
Max Arguments: 0
Arguments: None
SILC_STATUS_ERR_NO_SERVER_PRIV
- 23 SILC_COMMAND_SILCOPER
+ 22 SILC_COMMAND_SILCOPER
Max Arguments: 2
Arguments: (1) <username> (2) <authentication data>
SILC_STATUS_ERR_AUTH_FAILED
- 24 SILC_COMMAND_LEAVE
+ 23 SILC_COMMAND_LEAVE
Max Arguments: 1
Arguments: (1) <Channel ID>
SILC_STATUS_ERR_NO_CHANNEL_ID
- 25 SILC_COMMAND_NAMES
+ 24 SILC_COMMAND_NAMES
Max Arguments: 1
Arguments: (1) <Channel ID>
Max Arguments: 3
Arguments: (1) <Status Payload> (2) <Channel ID>
- (3) <name list>
+ (3) <name list> (4) <Client ID list>
- This command replies with the comma separated list of users on
- the channel and the Channel ID of the channel requested.
+ This command replies with the Channel ID of the requested channel,
+ comma separated list of users on the channel and Client ID list
+ of the users on the list. The Client ID list has Client ID's
+ of all users in the list. First Client ID in the list must be
+ the Client ID of the first user in <name list>. The Client ID
+ List is formed by adding Client ID's each after each. Note that
+ the Client ID list is binary data.
Status messages:
SILC_STATUS_ERR_NOT_ON_CHANNEL
- 26 - 254
+ 25 - 254
Currently undefined commands.