SILC_ATTRIBUTE_USER_PUBLIC_KEY,
SILC_ATTRIBUTE_FLAG_VALID,
&obj, sizeof(obj));
+ silc_free(obj.data);
}
- silc_client_nickname_parse(client, conn, cmd->argv[1], &nickname);
- if (!nickname)
- nickname = strdup(cmd->argv[1]);
+ if (nick) {
+ silc_client_nickname_parse(client, conn, cmd->argv[1], &nickname);
+ if (!nickname)
+ nickname = strdup(cmd->argv[1]);
+ }
/* Send command */
silc_client_command_send_va(conn, cmd, cmd->cmd, NULL, NULL,
* operating system, `hostname' is the client's host name and the
* `realname' is the user's real name.
*
- * The `running' callback is called after the client is running after
- * silc_client_run or silc_client_run_one has been called. Application
- * may start using the Client library API after that. Setting the
- * callback is optional, but recommended.
+ * The `running' callback with `context' is called after the client is
+ * running after silc_client_run or silc_client_run_one has been called.
+ * Application may start using the Client library API after that. Setting
+ * the callback is optional, but recommended.
*
***/
SilcBool silc_client_init(SilcClient client, const char *username,
* session. The `callback' with `context' will be called after the session
* has been set up. It will also be called later when remote host
* disconnects. The `conn_type' is the type of session this is going to
- * be.
+ * be. If the remote is SILC server it is SILC_CONN_SERVER or if it is
+ * SILC client it is SILC_CONN_CLIENT.
*
* Returns SilcAsyncOperation which can be used to cancel the connecting,
* or NULL on error. Note that the returned pointer becomes invalid