void lua_startbot(void *arg) { channel *cp; myureconnect = NULL; if(!luabotnick) luabotnick = getcopyconfigitem("lua", "botnick", "U", NICKLEN); lua_nick = registerlocaluser(luabotnick->content, "lua", "quakenet.department.of.corrections", LUA_FULLVERSION, "U", UMODE_ACCOUNT | UMODE_DEAF | UMODE_OPER | UMODE_SERVICE, &lua_bothandler); if(!lua_nick) { myureconnect = scheduleoneshot(time(NULL) + 1, &lua_startbot, NULL); return; } cp = findchannel(LUA_OPERCHAN); if(cp && localjoinchannel(lua_nick, cp)) { localgetops(lua_nick, cp); } else { localcreatechannel(lua_nick, LUA_OPERCHAN); } cp = findchannel(LUA_PUKECHAN); if(cp && localjoinchannel(lua_nick, cp)) { localgetops(lua_nick, cp); } else { localcreatechannel(lua_nick, LUA_PUKECHAN); } myublip = schedulerecurring(time(NULL) + 1, 0, 60, &lua_blip, NULL); myutick = schedulerecurring(time(NULL) + 1, 0, 1, &lua_tick, NULL); lua_registerevents(); }
void spawnclones(unsigned int count) { nick *np; unsigned int i,j; char nick[11], ident[11], host[40]; channel *cp; for (i=0;i<count;i++) { if (nclones >= MAXCLONES) return; for (j=0;j<10;j++) { nick[j]=(rand()%26)+'a'; ident[j]=(rand()%26)+'a'; host[j]=(rand()%26)+'a'; host[j+11]=(rand()%26)+'a'; host[j+22]=(rand()%26)+'a'; } host[10]=host[21]='.'; host[32]=nick[10]=ident[10]='\0'; np=clones[nclones++]=registerlocaluser(nick, ident, host, host, "", 0, clonehandler); if ((cp=findchannel(HOMECHANNEL))) { localjoinchannel(np, cp); } } }
void makenick(void *arg) { channel *cp; cmnick=registerlocaluser(NICK, "clone", "master", "Clone Master", "", 0, masterhandler); if ((cp=findchannel(HOMECHANNEL))) { localjoinchannel(cmnick, cp); } else { localcreatechannel(cmnick, HOMECHANNEL); } }
void versionscan_createfakeuser(void* arg) { channel* cp; char buf[200]; vsconnect=NULL; sprintf(buf, "%s v%s", VS_RNDESC, VS_VERSION); versionscan_nick=registerlocaluser(VS_NICK, VS_IDENT, VS_HOST, buf, VS_AUTHNAME, UMODE_ACCOUNT | UMODE_DEAF | UMODE_OPER | UMODE_SERVICE, versionscan_handler); if ((cp=findchannel(OPER_CHAN))) { localjoinchannel(versionscan_nick, cp); localgetops(versionscan_nick, cp); } else { localcreatechannel(versionscan_nick, OPER_CHAN); } }
static void reconnectfakeuser(void *arg) { fakeuser *fake = arg; nick *user; if (fake->user) return; 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); }
void _init(void) { fakeq=registerlocaluser("Q","TheQBot","CServe.quakenet.org", "The Q Bot","Q", UMODE_INV|UMODE_SERVICE|UMODE_DEAF|UMODE_OPER|UMODE_ACCOUNT, &chanservuserhandler); }