]> jfr.im git - irc/quakenet/newserv.git/blobdiff - fakeusers/fakeusers.c
LUA: add function for channel chanop notice
[irc/quakenet/newserv.git] / fakeusers / fakeusers.c
index 91274628047eaa7078fd6fc29c5fde6396ea5020..0e92560aaebddc7a5e53b72dcf66f6a3383f4a12 100644 (file)
@@ -108,8 +108,10 @@ static void reconnectfakeuser(void *arg) {
   if (fake->user)
     return;
 
-  if ((user = getnickbynick(fake->nick)) && (IsOper(user) || IsService(user) || IsXOper(user)))
+  if ((user = getnickbynick(fake->nick)) && (IsOper(user) || IsService(user) || IsXOper(user))) {
+    fake_remove(fake);
     return;
+  }
 
   fake->user = registerlocaluser(fake->nick, fake->ident, fake->host, fake->realname,
                                  NULL, UMODE_INV | UMODE_DEAF, &fakeuser_handler);
@@ -237,6 +239,7 @@ static int fakeadd(void *source, int cargc, char **cargv) {
               fake->nick, fake->ident, fake->host, fake->realname);
 
   scheduleoneshot(time(NULL) + 1, &reconnectfakeuser, fake);
+
   return CMD_OK;
 }
 
@@ -256,6 +259,7 @@ static int fakelist(void *sender, int cargc, char **cargv) {
   }
 
   controlreply(sender, "%d fakeusers are currently connected", fakeusercount);
+
   return CMD_OK;
 }
 
@@ -272,12 +276,12 @@ static int fakekill(void *sender, int cargc, char **cargv) {
     return CMD_ERROR;
   }
 
-  nofudb->squery(nofudb, "DELETE FROM ? WHERE nick = ?", "Ts", "fakeusers", fake->nick);
   controlreply(sender, "Killed fake user %s", fake->nick);
   controlwall(NO_OPER, NL_FAKEUSERS, "Fake user %s!%s@%s (%s) removed by %s/%s", fake->nick, fake->ident,
               fake->host, fake->realname, ((nick *)sender)->nick, ((nick *)sender)->authname);
 
   fake_remove(fake);
+
   return CMD_OK;
 }