From: Pekka Riikonen Date: Sun, 10 Jun 2007 19:32:15 +0000 (+0000) Subject: Added more joining error handling for server 1.1. X-Git-Tag: silc.toolkit.1.1.1~20 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=79c8fb87832c75f607b9422ac0dd6d862836af48 Added more joining error handling for server 1.1. --- diff --git a/apps/irssi/src/silc/core/client_ops.c b/apps/irssi/src/silc/core/client_ops.c index e64b6fba..38e90d08 100644 --- a/apps/irssi/src/silc/core/client_ops.c +++ b/apps/irssi/src/silc/core/client_ops.c @@ -729,11 +729,10 @@ void silc_notify(SilcClient client, SilcClientConnection conn, name = va_arg(va, char *); client_entry = va_arg(va, SilcClientEntry); - memset(buf, 0, sizeof(buf)); - snprintf(buf, sizeof(buf) - 1, "%s@%s", - client_entry->username, client_entry->hostname); - signal_emit("message invite", 4, server, channel ? channel->channel_name : - name, client_entry->nickname, buf); + silc_snprintf(buf, sizeof(buf) - 1, "%s@%s", + client_entry->username, client_entry->hostname); + signal_emit("message invite", 4, server, name, + client_entry->nickname, buf); break; case SILC_NOTIFY_TYPE_JOIN: @@ -1737,6 +1736,20 @@ void silc_command_reply(SilcClient client, SilcClientConnection conn, NICK_REC *ownnick; if (SILC_STATUS_IS_ERROR(status)) { + if (status == SILC_STATUS_ERR_NO_SUCH_SERVER) { + char *tmp = va_arg(vp, char *); + if (tmp) + silc_say_error("JOIN: %s: %s", tmp, + silc_get_status_message(status)); + return; + } + if (status == SILC_STATUS_ERR_NO_SUCH_CHANNEL) { + char *tmp = va_arg(vp, char *); + if (tmp) + silc_say_error("JOIN: %s: %s", tmp, + silc_get_status_message(status)); + return; + } silc_say_error("JOIN: %s", silc_get_status_message(status)); return; } diff --git a/apps/irssi/src/silc/core/silc-core.c b/apps/irssi/src/silc/core/silc-core.c index aadf2662..4385a2a2 100644 --- a/apps/irssi/src/silc/core/silc-core.c +++ b/apps/irssi/src/silc/core/silc-core.c @@ -775,6 +775,7 @@ void silc_core_init(void) /* Initialize client parameters */ memset(¶ms, 0, sizeof(params)); strcat(params.nickname_format, settings_get_str("nickname_format")); + params.full_channel_names = TRUE; /* Allocate SILC client */ silc_client = silc_client_alloc(&ops, ¶ms, NULL, silc_version_string); diff --git a/configure.ad b/configure.ad index 4dd8e659..47702fb4 100644 --- a/configure.ad +++ b/configure.ad @@ -605,7 +605,7 @@ else # pkg-config check PKG_CHECK_MODULES(SILC, [silc >= 1.1], compile_libs=false, compile_libs=true) #ifdef SILC_DIST_CLIENTLIB - PKG_CHECK_MODULES(SILCCLIENT, [silcclient >= 1.1], compile_libs=false, compile_libs=true) + PKG_CHECK_MODULES(SILCCLIENT, [silcclient >= 1.1.1], compile_libs=false, compile_libs=true) #endif SILC_DIST_CLIENTLIB #ifdef SILC_DIST_SERVERLIB PKG_CHECK_MODULES(SILCSERVER, silcserver, compile_libs=false, compile_libs=true) diff --git a/lib/configure.ad b/lib/configure.ad index 56df49e3..7821a258 100644 --- a/lib/configure.ad +++ b/lib/configure.ad @@ -88,8 +88,8 @@ LIBSILC_REVISION=0 # prev = 0 LIBSILC_AGE=0 # prev = 0 # libsilcclient versions -LIBSILCCLIENT_CURRENT=1 # prev = 1 -LIBSILCCLIENT_REVISION=1 # prev = 0 +LIBSILCCLIENT_CURRENT=2 # prev = 1 +LIBSILCCLIENT_REVISION=0 # prev = 0 LIBSILCCLIENT_AGE=0 # prev = 0 # libsilcserver versions