+}
+
+/* Received reply for forwarded IDENTIFY command. We have received the
+ requested identify information now and we will cache it. After this we
+ will call the pending command so that the requestee gets the information
+ after all. */
+
+SILC_SERVER_CMD_REPLY_FUNC(identify)
+{
+ SilcServerCommandReplyContext cmd = (SilcServerCommandReplyContext)context;
+ SilcServer server = cmd->server;
+ SilcCommandStatus status;
+ unsigned char *tmp;
+
+ SILC_LOG_DEBUG(("Start"));
+
+ tmp = silc_command_get_arg_type(cmd->payload, 1, NULL);
+ SILC_GET16_MSB(status, tmp);
+ if (status != SILC_STATUS_OK)
+ goto out;
+
+ /* Process one identify reply */
+ if (status == SILC_STATUS_OK) {
+ unsigned char *id_data;
+ char *nickname;
+
+ id_data = silc_command_get_arg_type(cmd->payload, 2, NULL);
+ nickname = silc_command_get_arg_type(cmd->payload, 3, NULL);
+ if (!id_data || !nickname)
+ goto out;
+
+#if 0
+ /* Allocate client entry */
+ client_entry = silc_calloc(1, sizeof(*client_entry));
+ client_entry->id = silc_id_str2id(id_data, SILC_ID_CLIENT);
+ client_entry->nickname = strdup(nickname);
+
+ /* Save received Client ID to ID cache */
+ silc_idcache_add(win->client_cache, client_entry->nickname,
+ SILC_ID_CLIENT, client_entry->id, client_entry, TRUE);
+#endif
+ }
+
+ if (status == SILC_STATUS_LIST_START) {
+
+ }
+
+ if (status == SILC_STATUS_LIST_END) {
+
+ }
+
+ /* Execute pending IDENTIFY command so that the client who originally
+ requested the identify information will get it after all. */
+ SILC_SERVER_COMMAND_EXEC_PENDING(cmd, SILC_COMMAND_IDENTIFY);
+
+ out:
+ silc_server_command_reply_free(cmd);