Commit Diff
Diff:
967476799f6fa2b30f82cbebb270d055ec63a547
dd59820051a286fd3e9782844229c22fd5d4201e
Commit:
dd59820051a286fd3e9782844229c22fd5d4201e
Tree:
3d359e336f369154fba6b0e7597050d74ea5d46c
Author:
Alexander Barton <alex@barton.de>
Committer:
Alexander Barton <alex@barton.de>
Date:
Sun Apr 25 15:43:18 2004 UTC
Message:
Synchronize INVITE- and BAN-lists if the peer requests it: server flag "L". And better debug logging.
blob - 59a2ec80551fce51e9db19baa605d4c54038505e
blob + d230c75563d8509b183482a63a871ae7c70b07cd
--- src/ngircd/irc-server.c
+++ 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 <assert.h>
@@ -30,6 +30,7 @@ static char UNUSED id[] = "$Id: irc-server.c,v 1.35 20
#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 );
}
IRCNow