From 2eb7e56fca4eb05b83a945df2d560d581c26bdc8 Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Fri, 30 Aug 2002 06:58:43 +0000 Subject: [PATCH] Fixed fingerprint emptines checking. Bug #18. --- CHANGES | 6 ++++++ apps/silcd/command.c | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) 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; -- 2.24.0