Do not allow several server connections.
authorPekka Riikonen <priikone@silcnet.org>
Wed, 14 Feb 2001 15:31:33 +0000 (15:31 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Wed, 14 Feb 2001 15:31:33 +0000 (15:31 +0000)
CHANGES
apps/silc/local_command.c

diff --git a/CHANGES b/CHANGES
index 81ad9c494f0761575d7616a44da0b0d8932298c4..b214f5f5fe55e38d119acb901376e8b5e0c2f8b6 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -14,6 +14,13 @@ Wed Feb 14 16:03:25 EET 2001  Pekka Riikonen <priikone@poseidon.pspt.fi>
        * Sort the ID Cache in client library when the ID Cache data
          has changed (needs sorting).
 
+       * Do not allow for SILC client to create several connections to
+         several servers.  The client does not support windows right now
+         and generating multiple connections causes weird behaviour.
+
+         Irssi-silc client does support windows and can handle several
+         connections without problems, see: www.irssi.org and SILC plugin.
+
 Tue Feb 13 19:55:59 EET 2001  Pekka Riikonen <priikone@poseidon.pspt.fi>
 
        * Added --with-gmp configuration option.  If set the GMP
index 110a8eb81092fa17fecc154d30a86f755a89aa3c..56e36da4a9f6bdc2071b1071c9d4184cd3579ab1 100644 (file)
@@ -20,6 +20,9 @@
 /*
  * $Id$
  * $Log$
+ * Revision 1.3  2001/02/14 15:31:33  priikone
+ *     Do not allow several server connections.
+ *
  * Revision 1.2  2001/01/30 21:40:21  priikone
  *     updates.
  *
@@ -204,6 +207,17 @@ SILC_CLIENT_LCMD_FUNC(server)
     port = 706;
   }
 
+  if (conn && conn->remote_host) {
+    if (!strcmp(hostname, conn->remote_host) && port == conn->remote_port) {
+      silc_say(client, conn, "You are already connected to that server");
+      goto out;
+    }
+
+    /* Close connection */
+    cmd->client->ops->disconnect(cmd->client, cmd->conn);
+    silc_client_close_connection(cmd->client, cmd->conn->sock);
+  }
+
   /* Connect asynchronously to not to block user interface */
   silc_client_connect_to_server(cmd->client, port, hostname, NULL);