repo: ngircd
action: commit
revision: 
path_from: 
revision_from: dd59820051a286fd3e9782844229c22fd5d4201e:
path_to: 
revision_to: 
git.thebackupbox.net
ngircd
git clone git://git.thebackupbox.net/ngircd
commit dd59820051a286fd3e9782844229c22fd5d4201e
Author: Alexander Barton 
Date:   Sun Apr 25 15:43:18 2004 +0000

    Synchronize INVITE- and BAN-lists if the peer requests it:
    server flag "L". And better debug logging.

diff --git a/src/ngircd/irc-server.c b/src/ngircd/irc-server.c
index 59a2ec80551fce51e9db19baa605d4c54038505e..
index ..d230c75563d8509b183482a63a871ae7c70b07cd 100644
--- a/src/ngircd/irc-server.c
+++ b/src/ngircd/irc-server.c
@@ -14,7 +14,7 @@

 #include "portab.h"

-static char UNUSED id[] = "$Id: irc-server.c,v 1.35 2004/01/17 03:17:49 alex Exp $";
+static char UNUSED id[] = "$Id: irc-server.c,v 1.36 2004/04/25 15:43:18 alex Exp $";

 #include "imp.h"
 #include 
@@ -30,6 +30,7 @@ static char UNUSED id[] = "$Id: irc-server.c,v 1.35 2004/01/17 03:17:49 alex Exp
 #include "client.h"
 #include "channel.h"
 #include "irc-write.h"
+#include "lists.h"
 #include "log.h"
 #include "messages.h"
 #include "parse.h"
@@ -183,6 +184,9 @@ IRC_SERVER( CLIENT *Client, REQUEST *Req )
 			/* Send CHANINFO if the peer supports it */
 			if( strchr( Client_Flags( Client ), 'C' ))
 			{
+#ifdef DEBUG
+				Log( LOG_DEBUG, "Sending CHANINFO commands ..." );
+#endif
 				modes = Channel_Modes( chan );
 				topic = Channel_Topic( chan );

@@ -239,6 +243,18 @@ IRC_SERVER( CLIENT *Client, REQUEST *Req )
 				if( ! IRC_WriteStrClient( Client, "%s", str )) return DISCONNECTED;
 			}

+#ifdef IRCPLUS
+			if( strchr( Client_Flags( Client ), 'L' ))
+			{
+#ifdef DEBUG
+				Log( LOG_DEBUG, "Synchronizing INVITE- and BAN-lists ..." );
+#endif
+				/* Synchronize INVITE- and BAN-lists */
+				if( ! Lists_SendInvites( Client )) return DISCONNECTED;
+				if( ! Lists_SendBans( Client )) return DISCONNECTED;
+			}
+#endif
+
 			/* naechsten Channel suchen */
 			chan = Channel_Next( chan );
 		}

-----END OF PAGE-----