Author: Pekka Riikonen <priikone@silcnet.org>
- Copyright (C) 1997 - 2007 Pekka Riikonen
+ Copyright (C) 1997 - 2014 Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
goto out;
}
+ /* All auto-generated private message keys must be rekeyed because
+ we changed nick and others may not know about it. */
+ conn->internal->ake_generation++;
+ SILC_LOG_DEBUG(("AKE keys will be rekeyed, generation %u",
+ conn->internal->ake_generation));
+
silc_rwlock_unlock(conn->local_entry->internal.lock);
/* Notify application */
silc_client_ref_channel(client, conn, channel);
}
+ /* Get hmac */
+ hmac = silc_argument_get_arg_type(args, 11, NULL);
+ if (hmac && !silc_hmac_is_supported(hmac)) {
+ if (cmd->verbose)
+ SAY(client, conn, SILC_CLIENT_MESSAGE_COMMAND_ERROR,
+ "Cannot join channel: Unsupported HMAC `%s'", hmac);
+ ERROR_CALLBACK(SILC_STATUS_ERR_UNKNOWN_ALGORITHM);
+ silc_rwlock_unlock(channel->internal.lock);
+ goto out;
+ }
+
/* Get the list count */
tmp = silc_argument_get_arg_type(args, 12, &len);
if (!tmp) {
}
}
- /* Get hmac */
- hmac = silc_argument_get_arg_type(args, 11, NULL);
- if (hmac) {
- if (!silc_hmac_alloc(hmac, NULL, &channel->internal.hmac)) {
- if (cmd->verbose)
- SAY(client, conn, SILC_CLIENT_MESSAGE_COMMAND_ERROR,
- "Cannot join channel: Unsupported HMAC `%s'", hmac);
- ERROR_CALLBACK(SILC_STATUS_ERR_UNKNOWN_ALGORITHM);
- silc_rwlock_unlock(channel->internal.lock);
- goto out;
- }
- }
-
/* Get channel mode */
tmp = silc_argument_get_arg_type(args, 5, &len);
if (tmp && len == 4)
SilcServerEntry server_entry;
unsigned char *tmp;
SilcUInt32 len;
- SilcPublicKey public_key;
+ SilcPublicKey public_key = NULL;
SilcID id;
/* Sanity checks */