changed Makefile; build all commands as an own file
[NeonServV5.git] / cmd_neonserv_resync.c
index 5ce398305d0ab694fbf81c49bc6d012604a4a618..c9d4bba40d11c86e57f660b096715f63435f6154 100644 (file)
@@ -1,4 +1,6 @@
 
+#include "cmd_neonserv.h"
+
 /*
 * argv[0] - usermask
 * argv[1] - min access
@@ -15,7 +17,7 @@ struct neonserv_cmd_resync_cache {
     int max_access;
 };
 
-static CMD_BIND(neonserv_cmd_resync) {
+CMD_BIND(neonserv_cmd_resync) {
     int min_access = 0, max_access = 500;
     char *usermask = NULL;
     if(argc > 0)
@@ -103,14 +105,14 @@ static void neonserv_cmd_resync_async1(struct ClientSocket *client, struct Clien
             if(!(chanuser->flags & CHANUSERFLAG_OPPED) && resync_op)
                 modeBufferOp(modeBuf, chanuser->user->nick);
         } else if(caccess >= db_enfvoice) {
-            if((chanuser->flags & CHANUSERFLAG_OPPED) && resync_op)
+            if((chanuser->flags & CHANUSERFLAG_OPPED) && resync_op && !(chanuser->user->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP)))
                 modeBufferDeop(modeBuf, chanuser->user->nick);
             if(!(chanuser->flags & CHANUSERFLAG_VOICED) && resync_voice)
                 modeBufferVoice(modeBuf, chanuser->user->nick);
         } else {
-            if((chanuser->flags & CHANUSERFLAG_OPPED) && resync_op)
+            if((chanuser->flags & CHANUSERFLAG_OPPED) && resync_op && !(chanuser->user->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP)))
                 modeBufferDeop(modeBuf, chanuser->user->nick);
-            if((chanuser->flags & CHANUSERFLAG_VOICED) && resync_voice)
+            if((chanuser->flags & CHANUSERFLAG_VOICED) && resync_voice && !(chanuser->user->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP)))
                 modeBufferDevoice(modeBuf, chanuser->user->nick);
         }