]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/client.c
- new allocated connection structures will be initialized correctly now.
[ngircd-alex.git] / src / ngircd / client.c
index daa65b148415fd7992f29f8b9f0102581973981f..a383e89783e02717b65e874b77820fb09d22a230 100644 (file)
@@ -2,23 +2,13 @@
  * ngIRCd -- The Next Generation IRC Daemon
  * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
  *
- * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
- * der GNU General Public License (GPL), wie von der Free Software Foundation
- * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
- * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
- * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
- * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ * Please read the file COPYING, README and AUTHORS for more information.
  *
- * $Id: client.c,v 1.62 2002/10/09 16:53:02 alex Exp $
- *
- * client.c: Management aller Clients
- *
- * Der Begriff "Client" ist in diesem Fall evtl. etwas verwirrend: Clients sind
- * alle Verbindungen, die im gesamten(!) IRC-Netzwerk bekannt sind. Das sind IRC-
- * Clients (User), andere Server und IRC-Services.
- * Ueber welchen IRC-Server die Verbindung nun tatsaechlich in das Netzwerk her-
- * gestellt wurde, muss der jeweiligen Struktur entnommen werden. Ist es dieser
- * Server gewesen, so existiert eine entsprechende CONNECTION-Struktur.
+ * Client management.
  */
 
 
@@ -27,6 +17,8 @@
 
 #include "portab.h"
 
+static char UNUSED id[] = "$Id: client.c,v 1.65 2002/12/12 12:24:18 alex Exp $";
+
 #include "imp.h"
 #include <assert.h>
 #include <unistd.h>
@@ -375,7 +367,7 @@ Client_SetFlags( CLIENT *Client, CHAR *Flags )
        assert( Flags != NULL );
 
        strncpy( Client->flags, Flags, CLIENT_FLAGS_LEN - 1 );
-       Client->modes[CLIENT_FLAGS_LEN - 1] = '\0';
+       Client->flags[CLIENT_FLAGS_LEN - 1] = '\0';
 } /* Client_SetFlags */
 
 
@@ -808,8 +800,9 @@ Client_CheckID( CLIENT *Client, CHAR *ID )
                if( strcasecmp( c->id, ID ) == 0 )
                {
                        /* die Server-ID gibt es bereits */
-                       sprintf( str, "ID \"%s\" already registered!", ID );
-                       Log( LOG_ERR, "%s (on connection %d)", str, Client->conn_id );
+                       sprintf( str, "ID \"%s\" already registered", ID );
+                       if( Client->conn_id != c->conn_id ) Log( LOG_ERR, "%s (on connection %d)!", str, c->conn_id );
+                       else Log( LOG_ERR, "%s (via network)!", str );
                        Conn_Close( Client->conn_id, str, str, TRUE );
                        return FALSE;
                }