+Sat Feb 17 22:11:50 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
+
+ * Moved the calling of ops->connect() from connect_to_server_final
+ into receive_new_id functin since that is the point when the
+ client is actually allowed to send traffic to network. The
+ affected file is lib/silcclient/client.c.
+
Sat Feb 17 13:15:35 EET 2001 Pekka Riikonen <priikone@poseidon.pspt.fi>
* When receiving NEW_CHANNEL_LIST, NEW_CHANNEL_USER_LIST,
conn->remote_id_data = silc_id_id2str(ctx->dest_id, SILC_ID_SERVER);
conn->remote_id_data_len = SILC_ID_SERVER_LEN;
- /* Notify application of successful connection */
- client->ops->connect(client, conn, TRUE);
-
silc_protocol_free(protocol);
if (ctx->auth_data)
silc_free(ctx->auth_data);
/* Put it to the ID cache */
silc_idcache_add(conn->client_cache, conn->nickname, SILC_ID_CLIENT,
conn->local_id, (void *)conn->local_entry, TRUE);
+
+ /* Notify application of successful connection. We do it here now that
+ we've received the Client ID and are allowed to send traffic. */
+ client->ops->connect(client, conn, TRUE);
}
/* Processed received Channel ID for a channel. This is called when client