Fixed CMODE setting when founder mode was set. Bug #95.
authorPekka Riikonen <priikone@silcnet.org>
Sun, 1 Dec 2002 15:41:25 +0000 (15:41 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Sun, 1 Dec 2002 15:41:25 +0000 (15:41 +0000)
CHANGES
apps/silcd/command.c

diff --git a/CHANGES b/CHANGES
index 314b44dd866204be78f1476c5af8e9800ec8a4eb..e5d681150da7c2b894c4700cc6e82aabd4d17679 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,8 @@
+Sun Dec  1 20:48:17 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed CMODE setting in server when founder mode was set.
+         Affected file silcd/command.c.  Bug #95.
+
 Sun Dec  1 16:32:03 CET 2002  Jochen Eisinger <c0ffee@penguin-breeder.org>
 
        * Format CMODE +c and +h to display both the mode and the argument
index 6ae07106f5875f881c1c902bf4191b64d25a9221..8cf36b6bbddca43fcbed640c56725b7b1e9083de 100644 (file)
@@ -2969,6 +2969,11 @@ SILC_SERVER_CMD_FUNC(cmode)
                                                0);
          goto out;
        }
+      } else {
+       /* If key was not sent and the channel mode has already founder
+          then the key was not to be changed. */
+       if (channel->mode & SILC_CHANNEL_MODE_FOUNDER_AUTH)
+         goto has_founder;
       }
 
       /* Set the founder authentication */
@@ -3013,6 +3018,7 @@ SILC_SERVER_CMD_FUNC(cmode)
        channel->founder_key = NULL;
        goto out;
       }
+    has_founder:
     }
   } else {
     if (chl->mode & SILC_CHANNEL_UMODE_CHANFO) {