repo: ngircd
action: commit
revision: 
path_from: 
revision_from: 3dc3a035386789852ba5a9fbc22b9b3c2793f0b0:
path_to: 
revision_to: 
git.thebackupbox.net
ngircd
git clone git://git.thebackupbox.net/ngircd
commit 3dc3a035386789852ba5a9fbc22b9b3c2793f0b0
Author: Alexander Barton 
Date:   Mon Aug 1 21:10:16 2011 +0200

    Infom clients when other servers change their user modes

diff --git a/src/ngircd/irc-mode.c b/src/ngircd/irc-mode.c
index 2cc60f46b72f2f9405aee5ab751a1bd159c09652..
index ..1222bc5cd67a357e2452c122856bbfbf02c33221 100644
--- a/src/ngircd/irc-mode.c
+++ b/src/ngircd/irc-mode.c
@@ -271,6 +271,14 @@ client_exit:

 		if (Client_Type(Client) == CLIENT_SERVER) {
 			/* Forward modes to other servers */
+			if (Client_Conn(Target) != NONE) {
+				/* Remote server (service?) changed modes
+				 * for one of our clients. Inform it! */
+				IRC_WriteStrClientPrefix(Target, Origin,
+							 "MODE %s :%s",
+							 Client_ID(Target),
+							 the_modes);
+			}
 			IRC_WriteStrServersPrefix(Client, Origin,
 						  "MODE %s :%s",
 						  Client_ID(Target),

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