updates.
[crypto.git] / lib / doc / command_reply_args.html
index 1b366a7a0c63513cfa73b1d189bd06874c492d5e..49b79d6a1bacda08f744a19ef8b252d816aef559 100644 (file)
@@ -30,10 +30,8 @@ The 'command_reply' client operation callback function prototype is as follows:
 <tt>
 &nbsp;&nbsp;
 void (*command_reply)(SilcClient client, SilcClientConnection conn,<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-SilcCommandPayload cmd_payload, bool success, SilcCommand command,<br />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-SilcStatus status, ...);
+                      SilcCommand command, SilcStatus status,<br />
+                      SilcStatus error, va_list ap);
 </tt>
 
 <br />&nbsp;<br />
@@ -103,7 +101,7 @@ SilcChannelPayload.  If the `channel_usermodes' is valid then the table
 has as many entries as there are entries in the `channels' list, and the
 first entry in the table is the user mode on the first channel in the
 `channels' list.  The `channel_usermodes' is the table of the user's modes
-no the joined channels.  The 'attr' is the Requested Attributes that may
+on the joined channels.  The 'attr' is the Requested Attributes that may
 have been returned by the client and it can be parsed by traversing the
 SilcDList and using silc_attribute_get_attribute function.  Each entry in
 the list is SilcAttribute.
@@ -143,7 +141,9 @@ this command reply.  The 'name' and 'info' may be NULL.
 <td><small>
 Returns the new Client ID and new nickname inside the SilcClientEntry.
 The `old_client_id' is the old Client ID used by the client before the
-nickname was changed.  The `nickname' is the new nickname.
+nickname was changed.  The `nickname' is the new nickname.  Note that,
+when user changes nickname SILC_NOTIFY_TYPE_NICK_CHANGE is not delivered
+to application.  Instead this SILC_COMMAND_NICK command reply is delivered.
 </td>
 <td width="50%"><small>SilcClientEntry local_entry, char *nickname,
 const SilcClientID *old_client_id
@@ -197,7 +197,8 @@ SilcArgumentPayload invite_list
 <td><small>
 Called after killing a client.  Returns the client that was killed.
 The `client_entry' may be NULL.  The `client_entry' will become invalid
-after the command reply has returned from application.
+after the command reply has returned from application.  The
+SILC_NOTIFY_TYPE_KILLED will not be delivered for clients that you killed.
 </td>
 <td width="50%"><small>SilcClientEntry client_entry
 </td>
@@ -257,7 +258,7 @@ it is not available.  The `founder_key' is the channel founder's public key
 or NULL if founder public key has not been set.  The `channel_pubkeys' is
 a list of channel public keys (for authentication on joining) or NULL if
 they have not been set.  Each entry in the list is SilcArgumentDecodedList
-each containing one channel public key.  The library will free the list.
+each containing one channel SilcPublicKey.  The library will free the list.
 </td>
 <td width="50%"><small>char *channel_name, SilcChannelEntry channel,
 SilcUInt32 channel_mode, SilcHashTableList *user_list, char *topic,
@@ -292,7 +293,10 @@ founder's public key when it was set.  It may also return the channel
 public key list when the list was altered.  The 'founder_key' and
 'channel_pubkeys' arguments may be NULL.  The 'channel_pubkeys' is a list
 of SilcArgumentDecodedList contexts which each contain one channel public
-key.  The library will automatically free the list.
+key.  The library will automatically free the list.  If the `founder_key'
+was present it will be updated to `channel' entry by the library after
+calling the command_reply callback.  Application may check if the `founder_key'
+is different from the key in `channel' entry to detect if it was changed.
 </td>
 <td width="50%"><small>SilcChannelEntry channel, SilcUInt32 mode,
 SilcPublicKey founder_key, SilcDList channel_pubkeys, SilcUint32 user_limit