From: Chris Porter Date: Mon, 1 May 2006 17:51:00 +0000 (+0100) Subject: More small error fixes. X-Git-Url: https://jfr.im/git/irc/quakenet/newserv.git/commitdiff_plain/1fbb1306f51a7081c3dd16620f1ad3b6eb3e49de More small error fixes. --- diff --git a/chanserv/authcmds.c b/chanserv/authcmds.c index 0d3d5fc9..e85a1818 100644 --- a/chanserv/authcmds.c +++ b/chanserv/authcmds.c @@ -141,7 +141,7 @@ int csa_doauth(void *source, int cargc, char **cargv) { reguser *rup; activeuser* aup; nick *sender=source; - nicklist *nl; + nicklist *nl = NULL; char userhost[USERLEN+HOSTLEN+2]; int ucount=0; diff --git a/lib/base64.c b/lib/base64.c index cac65cf1..8e4a370d 100644 --- a/lib/base64.c +++ b/lib/base64.c @@ -23,8 +23,7 @@ int numerictab[] = { char tokens[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789[]"; -/* Moved into include file -long numerictolong(const char *numeric, int numericlen) +INLINE long numerictolong(const char *numeric, int numericlen) { long mynumeric=0; int i; @@ -35,7 +34,6 @@ long numerictolong(const char *numeric, int numericlen) return mynumeric; } -*/ char *longtonumeric(long param, int len) { diff --git a/lua/luacommands.c b/lua/luacommands.c index 1c604a9a..f23fd7ee 100644 --- a/lua/luacommands.c +++ b/lua/luacommands.c @@ -349,6 +349,8 @@ static int lua_getuserbyauth(lua_State *l) { if(!lua_isstring(l, 1)) return 0; + acc = lua_tostring(l, 1); + for(i=0;inext) { if(np && np->authname && !ircd_strcmp(np->authname, acc)) { diff --git a/noperserv/noperserv.c b/noperserv/noperserv.c index f54a9035..dc1162af 100644 --- a/noperserv/noperserv.c +++ b/noperserv/noperserv.c @@ -147,7 +147,7 @@ void _fini() { /* @test */ int noperserv_hello(void *sender, int cargc, char **cargv) { - char *newaccount; + char *newaccount = NULL; no_autheduser *au; int i; nick *np = (nick *)sender, *np2, *target = NULL; diff --git a/nterface/nterfacer.c b/nterface/nterfacer.c index 491b8c74..1d9c90e8 100644 --- a/nterface/nterfacer.c +++ b/nterface/nterfacer.c @@ -498,7 +498,7 @@ int nterfacer_line_event(struct esocket *sock, char *newline) { } int nterfacer_new_rline(char *line, struct esocket *socket, int *number) { - char *sp, *p, *parsebuf, *pp, commandbuf[MAX_BUFSIZE], *args[MAX_ARGS], *newp; + char *sp, *p, *parsebuf = NULL, *pp, commandbuf[MAX_BUFSIZE], *args[MAX_ARGS], *newp; int argcount; struct service_node *service; struct rline *prequest; @@ -598,7 +598,7 @@ int nterfacer_new_rline(char *line, struct esocket *socket, int *number) { *newp = '\0'; } if(argcount < hl->args) { - if(argcount) + if(argcount && parsebuf) free(parsebuf); return RE_WRONG_ARG_COUNT; } @@ -606,7 +606,7 @@ int nterfacer_new_rline(char *line, struct esocket *socket, int *number) { prequest = (struct rline *)malloc(sizeof(struct rline)); if(!prequest) { MemError(); - if(argcount) + if(argcount && parsebuf) free(parsebuf); return RE_MEM_ERROR; } @@ -623,7 +623,7 @@ int nterfacer_new_rline(char *line, struct esocket *socket, int *number) { rlines = prequest; re = (hl->function)(prequest, argcount, args); - if(argcount) + if(argcount && parsebuf) free(parsebuf); return re; diff --git a/regexgline/regexgline.c b/regexgline/regexgline.c index 6652db87..697da05f 100644 --- a/regexgline/regexgline.c +++ b/regexgline/regexgline.c @@ -658,10 +658,12 @@ struct rg_struct *rg_newstruct(time_t expires) { struct rg_struct *rg_newsstruct(char *id, char *mask, char *setby, char *reason, char *expires, char *type, time_t iexpires, int iid) { struct rg_struct *newrow, *lp, *cp; time_t rexpires; + int stupidwarning; char glineiddata[1024]; if (iexpires == 0) { - if(!protectedatoi(expires, (int *)&rexpires)) + if(!protectedatoi(expires, &stupidwarning)) return NULL; + rexpires = (time_t)stupidwarning; } else { rexpires = iexpires; } @@ -746,14 +748,14 @@ struct rg_struct *rg_newsstruct(char *id, char *mask, char *setby, char *reason, void rg_dogline(struct rg_glinelist *gll, nick *np, struct rg_struct *rp, char *matched) { /* PPA: if multiple users match the same user@host or *@host it'll send multiple glines?! */ char hostname[RG_MASKLEN]; - int usercount; + int usercount = 0; rg_loggline(rp, np); if (rp->type == 1) { nick *tnp; - for(usercount=0,tnp=np->host->nicks;tnp;tnp=tnp->nextbyhost) + for(tnp=np->host->nicks;tnp;tnp=tnp->nextbyhost) if(!ircd_strcmp(np->ident, tnp->ident)) usercount++; diff --git a/trojanscan/trojanscan.c b/trojanscan/trojanscan.c index add79407..403a544d 100644 --- a/trojanscan/trojanscan.c +++ b/trojanscan/trojanscan.c @@ -1315,7 +1315,7 @@ int trojanscan_add_ll(struct trojanscan_prechannels **head, struct trojanscan_pr void trojanscan_watch_clone_update(struct trojanscan_prechannels *hp, int count) { int i, j, marked; struct trojanscan_prechannels *lp; - struct trojanscan_templist *markedlist; + struct trojanscan_templist *markedlist = NULL; if(count > 0) { markedlist = (struct trojanscan_templist *)calloc(count, sizeof(struct trojanscan_templist)); @@ -1325,15 +1325,17 @@ void trojanscan_watch_clone_update(struct trojanscan_prechannels *hp, int count) for(i=0;inext) { - if(!markedlist[j].active && !lp->exempt && !ircd_strcmp(lp->name->content, trojanscan_chans[i].channel->content)) { /* we're already on the channel */ - if(trojanscan_chans[i].watch_clone) { - markedlist[j].active = 1; - markedlist[j].watch_clone = trojanscan_chans[i].watch_clone; - lp->watch_clone = trojanscan_chans[i].watch_clone; + if(markedlist) { + for(lp=hp,j=0;jnext) { + if(!markedlist[j].active && !lp->exempt && !ircd_strcmp(lp->name->content, trojanscan_chans[i].channel->content)) { /* we're already on the channel */ + if(trojanscan_chans[i].watch_clone) { + markedlist[j].active = 1; + markedlist[j].watch_clone = trojanscan_chans[i].watch_clone; + lp->watch_clone = trojanscan_chans[i].watch_clone; + } + marked = 1; + break; } - marked = 1; - break; } } if(!marked && trojanscan_chans[i].watch_clone) { @@ -1343,6 +1345,9 @@ void trojanscan_watch_clone_update(struct trojanscan_prechannels *hp, int count) } } + if(!markedlist) + return; + for(j=0,lp=hp;jnext) { if((!markedlist[j].active || !markedlist[j].watch_clone) && !lp->exempt) { channel *cp = findchannel(lp->name->content);