From: Pekka Riikonen Date: Thu, 15 Mar 2001 10:54:13 +0000 (+0000) Subject: update. X-Git-Tag: SILC.0.1~120 X-Git-Url: http://git.silcnet.org/gitweb/?a=commitdiff_plain;h=a36444acb47c0ad7cc73fabdc94362e8b6a27aa8;p=silc.git update. --- diff --git a/CHANGES b/CHANGES index aead67d5..73afc309 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,8 @@ +Thu Mar 15 12:46:58 EET 2001 Pekka Riikonen + + * Fixed fatal bug in failure packet handling. Server ignored + the failiure and thus crashed when it came. + Wed Mar 14 20:37:35 EET 2001 Pekka Riikonen * Added new SILC_CF_LAG_STRICT command flag that strictly forces diff --git a/apps/silcd/server.c b/apps/silcd/server.c index 849fc10b..47a62ddb 100644 --- a/apps/silcd/server.c +++ b/apps/silcd/server.c @@ -1028,7 +1028,8 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_second) SILC_LOG_DEBUG(("Start")); - if (protocol->state == SILC_PROTOCOL_STATE_ERROR) { + if (protocol->state == SILC_PROTOCOL_STATE_ERROR || + protocol->state == SILC_PROTOCOL_STATE_FAILURE) { /* Error occured during protocol */ silc_protocol_free(protocol); silc_ske_free_key_material(ctx->keymat); @@ -1126,7 +1127,8 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_final) SILC_LOG_DEBUG(("Start")); - if (protocol->state == SILC_PROTOCOL_STATE_ERROR) { + if (protocol->state == SILC_PROTOCOL_STATE_ERROR || + protocol->state == SILC_PROTOCOL_STATE_FAILURE) { /* Error occured during protocol */ silc_protocol_free(protocol); if (ctx->packet)