updates.
authorPekka Riikonen <priikone@silcnet.org>
Sun, 16 Sep 2001 10:39:55 +0000 (10:39 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Sun, 16 Sep 2001 10:39:55 +0000 (10:39 +0000)
CHANGES
TODO
apps/silcd/packet_send.c
apps/silcd/protocol.c
lib/silccrypt/silchmac.c

diff --git a/CHANGES b/CHANGES
index 34ac4caf2a6dc1906d092088831203b2d5223da6..0173db9144eb77995e098556a4e85babd884baa2 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,13 @@ Sun Sep 16 12:32:58 EEST 2001  Pekka Riikonen <priikone@silcnet.org>
          is something sensible in the silc_packet_decrypt_rest_special
          in lib/silccrypt/silcpacket.c.
 
+       * Free and NULL the allocated pointer in silc_hmac_alloc if
+         the HMAC allocation fails.  The affected file is
+         lib/silccrypt/silchmac.c.
+
+       * Print the selected security properties to the log files in
+         the server.  Affected file silcd/protocol.c.
+
 Sat Sep 15 13:29:17 EEST 2001  Pekka Riikonen <priikone@silcnet.org>
 
        * Check that the public key exists in the GETKEY command before
diff --git a/TODO b/TODO
index 5e818544b7e4ab7c1f566d6733f0cd8e6df848ca..aca1fcc95254871d65b6647dc746281919001907 100644 (file)
--- a/TODO
+++ b/TODO
@@ -53,6 +53,8 @@ TODO/bugs In SILC Server
 
  o Add perhaps /var/run/silcd.pid for PID information for the server.
 
+ o Update idle times only for private/channel messaegs.
+
  o Add a timeout to handling incmoing JOIN commands.  It should be 
    enforced that JOIN command is executed only once in a second or two
    seconds.  Now it is possible to accept n incoming JOIN commands
index 31e9bea15e373b42dc9d9e38565d14d0ecfb469d..550ec9c39bbb4f8a14cee3a2403efa1945469636 100644 (file)
@@ -743,9 +743,6 @@ void silc_server_packet_relay_to_channel(SilcServer server,
            memcpy(tmp, data, data_len);
 
            /* Decrypt the channel message (we don't check the MAC) */
-           /* XXX this could be optimized and removed all together by
-              taking a copy of the original data before encrypting it
-              and thus would not required decrypting. */
            if (channel->channel_key &&
                !silc_channel_message_payload_decrypt(tmp, data_len, 
                                                      channel->channel_key,
index 53b31d9727f476cbbc81a7b41ad62131db3d6c2e..4d306195f71e09c7a3b6569f2e8da5cf865b4ef6 100644 (file)
@@ -280,6 +280,12 @@ int silc_server_protocol_ke_set_keys(SilcSKE ske,
 
   sock->user_data = (void *)conn_data;
 
+  SILC_LOG_INFO(("%s (%s) security properties: %s %s %s", 
+                sock->hostname, sock->ip,
+                idata->send_key->cipher->name,
+                idata->hmac_send->hmac->name,
+                idata->hash->hash->name));
+
   return TRUE;
 }
 
index 454c175fedeef80ee45accb1799dbecda89588e6..00fd15ecb4d252aafd8ba7fbe1d9923f74ea9117 100644 (file)
@@ -123,6 +123,8 @@ bool silc_hmac_alloc(char *name, SilcHash hash, SilcHmac *new_hmac)
 
     if (!silc_hash_alloc(hname, &hash)) {
       silc_free(tmp);
+      silc_free(*new_hmac);
+      *new_hmac = NULL;
       return FALSE;
     }
 
@@ -142,6 +144,8 @@ bool silc_hmac_alloc(char *name, SilcHash hash, SilcHmac *new_hmac)
     }
   }
 
+  silc_free(*new_hmac);
+  *new_hmac = NULL;
   return FALSE;
 }