From 028091ca08ee9c28b02586eeaf5b9df69b3d91df Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Fri, 15 Dec 2000 23:06:24 +0000 Subject: [PATCH] No send the Channel ID as is! --- apps/silcd/packet_send.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/apps/silcd/packet_send.c b/apps/silcd/packet_send.c index 6f258e14..775ab48e 100644 --- a/apps/silcd/packet_send.c +++ b/apps/silcd/packet_send.c @@ -1124,25 +1124,26 @@ void silc_server_send_channel_key(SilcServer server, SilcChannelEntry channel, unsigned char route) { - SilcBuffer packet, idp; + SilcBuffer packet; + unsigned char *chid; unsigned int tmp_len; - + SILC_LOG_DEBUG(("Start")); - - idp = silc_id_payload_encode(channel->id, SILC_ID_CHANNEL); - if (!idp) + + chid = silc_id_id2str(channel->id, SILC_ID_CHANNEL); + if (!chid) return; - + /* Encode channel key packet */ tmp_len = strlen(channel->channel_key->cipher->name); - packet = silc_channel_key_payload_encode(idp->len, idp->data, tmp_len, - channel->channel_key->cipher->name, - channel->key_len / 8, channel->key); - + packet = silc_channel_key_payload_encode(SILC_ID_CHANNEL_LEN, chid, tmp_len, + channel->channel_key->cipher->name, + channel->key_len / 8, channel->key); + silc_server_packet_send_to_channel(server, channel, SILC_PACKET_CHANNEL_KEY, - route, packet->data, packet->len, FALSE); + route, packet->data, packet->len, FALSE); silc_buffer_free(packet); - silc_buffer_free(idp); + silc_free(chid); } /* Generic function to send any command. The arguments must be sent already -- 2.43.0