X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=blobdiff_plain;f=lib%2Fsilcclient%2Fclient_channel.c;h=1a4a6d5968a7dc86acd239d228369e0ce975f571;hp=4f89d7270b01458f2fc23a81516c8d4aab10d099;hb=386c883d8774999c6e74d7c6c37e52e4163a4cb1;hpb=73e02ea64eb9744bde0121ee487f8ce8eb803aa9 diff --git a/lib/silcclient/client_channel.c b/lib/silcclient/client_channel.c index 4f89d727..1a4a6d59 100644 --- a/lib/silcclient/client_channel.c +++ b/lib/silcclient/client_channel.c @@ -396,8 +396,7 @@ void silc_client_save_channel_key(SilcClient client, key = silc_channel_key_get_key(payload, &tmp_len); cipher = silc_channel_key_get_cipher(payload, NULL); channel->key_len = tmp_len * 8; - channel->key = silc_calloc(tmp_len, sizeof(*channel->key)); - memcpy(channel->key, key, tmp_len); + channel->key = silc_memdup(key, tmp_len); if (!silc_cipher_alloc(cipher, &channel->channel_key)) { client->internal->ops->say( @@ -520,8 +519,7 @@ int silc_client_add_channel_private_key(SilcClient client, /* Save the key */ entry = silc_calloc(1, sizeof(*entry)); - entry->key = silc_calloc(keymat->enc_key_len / 8, sizeof(*entry->key)); - memcpy(entry->key, keymat->send_enc_key, keymat->enc_key_len / 8); + entry->key = silc_memdup(keymat->send_enc_key, keymat->enc_key_len / 8); entry->key_len = keymat->enc_key_len / 8; /* Allocate the cipher and set the key*/