X-Git-Url: https://git.armaanb.net/?a=blobdiff_plain;f=sic.c;h=77c6a29a4a2202799f52899743fe40b2485fac94;hb=82946e102dd8ca48b8a8df710c20bef94c649af0;hp=41be7a9fea92fca704adbcb83c6577556aa981fc;hpb=1160be7ffa49eaa0f15b549c5da005d80fe4c126;p=sic.git diff --git a/sic.c b/sic.c index 41be7a9..77c6a29 100644 --- a/sic.c +++ b/sic.c @@ -95,11 +95,6 @@ parsein(char *msg) { strncpy(channel, msg + 3, sizeof channel); return; } - else if(!strncmp(msg + 1, "t ", 2)) { - if((p = strchr(msg + 3, ' '))) - *(p++) = 0; - snprintf(bufout, sizeof bufout, "TOPIC %s :%s\r\n", msg + 3, p); - } else snprintf(bufout, sizeof bufout, "%s\r\n", msg + 1); write(srv, bufout, strlen(bufout)); @@ -110,17 +105,20 @@ parsesrv(char *msg) { char *chan, *cmd, *p, *txt, *usr; txt = NULL; + usr = host; if(!msg || !(*msg)) return; if(msg[0] != ':') - return; /* don't handle prefix-less server commands */ - if(!(p = strchr(msg, ' '))) - return; - usr = msg + 1; - *p = 0; - cmd = ++p; - if((p = strchr(usr, '!'))) + cmd = msg; + else { + if(!(p = strchr(msg, ' '))) + return; *p = 0; + usr = msg + 1; + cmd = ++p; + if((p = strchr(usr, '!'))) + *p = 0; + } for(p = cmd; *p; p++) /* remove CRLFs */ if(*p == '\r' || *p == '\n') *p = 0;