+ SILC_LOG_DEBUG(("Connection callback %p, status %d, error %d, message %s",
+ conn, status, error, message ? message : "N/A"));
+
+ server->op = NULL;
+
+ switch (status) {
+ case SILC_CLIENT_CONN_SUCCESS:
+ if (server->disconnected) {
+ silc_client_close_connection(client, conn);
+ return;
+ }
+
+ /* We have successfully connected to server */
+
+ /* Enable queueing until we have our requested nick */
+ if (((opt_nickname &&
+ !silc_utf8_strcasecmp(opt_nickname,
+ conn->local_entry->nickname)) ||
+ (settings_get_str("nick") &&
+ !silc_utf8_strcasecmp(settings_get_str("nick"),
+ conn->local_entry->nickname))) &&
+ silc_utf8_strcasecmp(conn->local_entry->nickname,
+ conn->local_entry->username))
+ silc_queue_enable(conn);
+
+ /* Put default attributes */
+ silc_query_attributes_default(silc_client, conn);
+
+ server->connected = TRUE;
+ server->conn = conn;
+ server->conn->context = server;
+ signal_emit("event connected", 1, server);
+ break;
+
+ case SILC_CLIENT_CONN_SUCCESS_RESUME:
+ if (server->disconnected) {
+ silc_client_close_connection(client, conn);
+ return;
+ }
+
+ /* We have successfully resumed old detached session */
+ server->connected = TRUE;
+ server->conn = conn;
+ server->conn->context = server;
+ signal_emit("event connected", 1, server);
+
+ /* Put default attributes */
+ silc_query_attributes_default(silc_client, conn);