uint16 ident;
/* Get command reply payload from packet */
- payload = silc_command_payload_parse(buffer);
+ payload = silc_command_payload_parse(buffer->data, buffer->len);
if (!payload) {
/* Silently ignore bad reply packet */
SILC_LOG_DEBUG(("Bad command reply packet"));
COMMAND_REPLY_ERROR;
return;
}
- idp = silc_id_payload_parse_data(id_data, len);
+ idp = silc_id_payload_parse(id_data, len);
if (!idp) {
COMMAND_REPLY_ERROR;
return;
/* Add server to cache */
silc_idcache_add(conn->server_cache, server_entry->server_name,
- server_entry->server_id, (void *)server_entry, FALSE);
+ server_entry->server_id, (void *)server_entry,
+ 0, NULL);
} else {
server_entry = (SilcServerEntry)id_cache->context;
}
/* Take received Client ID */
tmp = silc_argument_get_arg_type(cmd->args, 2, &len);
- idp = silc_id_payload_parse_data(tmp, len);
+ idp = silc_id_payload_parse(tmp, len);
if (!idp) {
COMMAND_REPLY_ERROR;
goto out;
/* Add it to the cache */
silc_idcache_add(conn->server_cache, server->server_name,
- server->server_id, (void *)server, FALSE);
+ server->server_id, (void *)server, 0, NULL);
if (SILC_ID_SERVER_COMPARE(server_id, conn->remote_id))
goto out;
SILC_GET16_MSB(status, silc_argument_get_arg_type(cmd->args, 1, NULL));
if (status != SILC_STATUS_OK) {
- cmd->client->ops->say(cmd->client, conn, SILC_CLIENT_MESSAGE_ERROR,
- "%s", silc_client_command_status_message(status));
+ if (status != SILC_STATUS_ERR_USER_ON_CHANNEL)
+ cmd->client->ops->say(cmd->client, conn, SILC_CLIENT_MESSAGE_ERROR,
+ "%s", silc_client_command_status_message(status));
COMMAND_REPLY_ERROR;
goto out;
}
silc_free(channel_name);
goto out;
}
- idp = silc_id_payload_parse_data(tmp, len);
+ idp = silc_id_payload_parse(tmp, len);
if (!idp) {
COMMAND_REPLY_ERROR;
silc_free(channel_name);
COMMAND_REPLY_ERROR;
goto out;
}
- idp = silc_id_payload_parse_data(tmp, len);
+ idp = silc_id_payload_parse(tmp, len);
if (!idp) {
COMMAND_REPLY_ERROR;
goto out;