Author: Pekka Riikonen <priikone@poseidon.pspt.fi>
- Copyright (C) 1997 - 2000 Pekka Riikonen
+ Copyright (C) 1997 - 2001 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
GNU General Public License for more details.
*/
-/*
- * $Id$
- * $Log$
- * Revision 1.1 2000/06/27 11:36:56 priikone
- * Initial revision
- *
- *
- */
+/* $Id$ */
#include "serverincludes.h"
SILC_LOG_DEBUG(("Creating new Server ID"));
*new_id = silc_calloc(1, sizeof(**new_id));
- if (*new_id == NULL) {
- SILC_LOG_ERROR(("Could not allocate new Server ID"));
- return;
- }
/* Get IP address */
len = sizeof(server);
}
/* Create the ID */
- (*new_id)->ip = server.sin_addr;
+ SILC_PUT32_MSB(server.sin_addr.s_addr, (*new_id)->ip.data);
+ (*new_id)->ip.data_len = 4;
(*new_id)->port = server.sin_port;
(*new_id)->rnd = silc_rng_get_rn16(rng);
+
+ SILC_LOG_DEBUG(("New ID (%s)", silc_id_render(*new_id, SILC_ID_SERVER)));
}
/* Creates Client ID */
SILC_LOG_DEBUG(("Creating new Client ID"));
*new_id = silc_calloc(1, sizeof(**new_id));
- if (*new_id == NULL) {
- SILC_LOG_ERROR(("Could not allocate new Client ID"));
- return;
- }
/* Create hash of the nickanem */
silc_hash_make(md5hash, nickname, strlen(nickname), hash);
/* Create the ID */
- (*new_id)->ip.s_addr = server_id->ip.s_addr;
+ memcpy((*new_id)->ip.data, server_id->ip.data, server_id->ip.data_len);
+ (*new_id)->ip.data_len = server_id->ip.data_len;
(*new_id)->rnd = silc_rng_get_byte(rng);
memcpy((*new_id)->hash, hash, CLIENTID_HASH_LEN);
+
+ SILC_LOG_DEBUG(("New ID (%s)", silc_id_render(*new_id, SILC_ID_CLIENT)));
}
/* Creates Channel ID */
SILC_LOG_DEBUG(("Creating new Channel ID"));
*new_id = silc_calloc(1, sizeof(**new_id));
- if (*new_id == NULL) {
- SILC_LOG_ERROR(("Could not allocate new Channel ID"));
- return;
- }
/* Create the ID */
- (*new_id)->ip.s_addr = router_id->ip.s_addr;
+ memcpy((*new_id)->ip.data, router_id->ip.data, router_id->ip.data_len);
+ (*new_id)->ip.data_len = router_id->ip.data_len;
(*new_id)->port = router_id->port;
(*new_id)->rnd = silc_rng_get_rn16(rng);
+
+ SILC_LOG_DEBUG(("New ID (%s)", silc_id_render(*new_id, SILC_ID_CHANNEL)));
}