From: Pekka Riikonen Date: Fri, 30 Aug 2002 06:58:43 +0000 (+0000) Subject: Fixed fingerprint emptines checking. Bug #18. X-Git-Tag: silc.client.0.9.5~18 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=2eb7e56fca4eb05b83a945df2d560d581c26bdc8 Fixed fingerprint emptines checking. Bug #18. --- diff --git a/CHANGES b/CHANGES index e5d980db..0351172b 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,9 @@ +Fri Aug 30 08:57:33 CEST 2002 Pekka Riikonen + + * Fixed fingerprint checking to check for entirely empty + fingerprint instead of two first bytes when determining + if it is set. Bug #18. Affected file silcd/command.c. + Sun Aug 25 08:02:04 CEST 2002 Lubomir Sedlacik * Conditionalize non-gcc compiler optimizations for various diff --git a/apps/silcd/command.c b/apps/silcd/command.c index b1aaea08..49904b72 100644 --- a/apps/silcd/command.c +++ b/apps/silcd/command.c @@ -742,7 +742,7 @@ silc_server_command_whois_send_reply(SilcServerCommandContext cmd, SilcUInt16 ident = silc_command_get_ident(cmd->payload); char nh[256], uh[256]; unsigned char idle[4], mode[4]; - unsigned char *fingerprint; + unsigned char *fingerprint, fempty[20]; SilcSocketConnection hsock; if (nickname) { @@ -764,6 +764,8 @@ silc_server_command_whois_send_reply(SilcServerCommandContext cmd, } } + memset(fempty, 0, sizeof(fempty)); + /* Start processing found clients. */ status = SILC_STATUS_OK; if (valid_count > 1) @@ -817,7 +819,7 @@ silc_server_command_whois_send_reply(SilcServerCommandContext cmd, channels = silc_server_get_client_channel_list(server, entry, TRUE, TRUE, &umode_list); - if (entry->data.fingerprint[0] != 0 && entry->data.fingerprint[1] != 0) + if (memcmp(entry->data.fingerprint, fempty, sizeof(fempty))) fingerprint = entry->data.fingerprint; else fingerprint = NULL;