]> arthur.barton.de Git - ngircd.git/commitdiff
Infom clients when other servers change their user modes
authorAlexander Barton <alex@barton.de>
Mon, 1 Aug 2011 19:10:16 +0000 (21:10 +0200)
committerAlexander Barton <alex@barton.de>
Mon, 1 Aug 2011 19:10:16 +0000 (21:10 +0200)
src/ngircd/irc-mode.c

index 2cc60f46b72f2f9405aee5ab751a1bd159c09652..1222bc5cd67a357e2452c122856bbfbf02c33221 100644 (file)
@@ -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),