From e4937dce99d54acba03ca81321092afe20081f8f Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Tue, 5 Jun 2007 19:03:45 +0000 Subject: [PATCH] Fixed silc_client_get_clients_local to parse nick@server string in addition to formatted nickname strings. --- CHANGES | 10 ++++++++++ lib/silcclient/client_entry.c | 11 +++++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/CHANGES b/CHANGES index 74873f58..9c0b3f31 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,13 @@ +Tue Jun 5 20:48:40 EEST 2007 Pekka Riikonen + + * Fixed silc_packet_get_ids to decode the IDs correctly. + Affected file is lib/silccore/silcpacket.c. + + * Fixed silc_client_get_clients_local to parse correctly nickname + string that may have server name in it (nick@server) regardless + whether it was formatted nickname or not. Affected file is + lib/silcclient/client_entry.c. + Mon Jun 4 22:02:53 CEST 2007 Jochen Eisinger * Only destroy sendbuffers, if they still exist (they cease to diff --git a/lib/silcclient/client_entry.c b/lib/silcclient/client_entry.c index 27e78e34..705e1cd1 100644 --- a/lib/silcclient/client_entry.c +++ b/lib/silcclient/client_entry.c @@ -72,19 +72,22 @@ SilcDList silc_client_get_clients_local_ext(SilcClient client, SilcList list; SilcDList clients; SilcClientEntry entry; - char *nicknamec, *parsed = NULL, *format = NULL; + char nick[128 + 1], *nicknamec, *parsed = NULL, *format = NULL; if (!client || !conn || !nickname) return NULL; + /* Get nickname from nickname@server string */ + silc_parse_userfqdn(nickname, nick, sizeof(nick), NULL, 0); + /* Parse nickname in case it is formatted */ - if (!silc_client_nickname_parse(client, conn, (char *)nickname, &parsed)) + if (!silc_client_nickname_parse(client, conn, (char *)nick, &parsed)) return NULL; if (!get_all && parsed) - format = (char *)nickname; + format = (char *)nick; if (!parsed) { - parsed = silc_memdup(nickname, strlen(nickname)); + parsed = silc_memdup(nick, strlen(nick)); if (!parsed) return NULL; } -- 2.24.0