Introduction
Introduction Statistics Contact Development Disclaimer Help
some changes - sic - simple irc client
git clone git://git.suckless.org/sic
Log
Files
Refs
README
LICENSE
---
commit 1edd94af86c032d4a83e5e2778526e567c1c4715
parent a3abf3b3ef581c415e4a29845453e49258faaada
Author: Anselm R. Garbe <[email protected]>
Date: Fri, 9 Feb 2007 14:40:11 +0100
some changes
Diffstat:
M sic.c | 50 +++++++++++++++--------------…
1 file changed, 24 insertions(+), 26 deletions(-)
---
diff --git a/sic.c b/sic.c
@@ -102,45 +102,43 @@ parsesrv(char *msg) {
if(!msg || !(*msg))
return;
pout("debug", msg);
- if(msg[0] == ':') { /* check prefix */
- if(!(p = strchr(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, '!')))
*p = 0;
- usr = &msg[1];
- cmd = ++p;
- if((p = strchr(usr, '!')))
- *p = 0;
- } else
- cmd = msg;
/* remove CRLFs */
- for(p = cmd; *p; p++)
+ if(!(p = strchr(cmd, ':')))
+ return;
+ *p = 0;
+ txt = ++p;
+ for(p = txt; *p; p++)
if(*p == '\r' || *p == '\n')
*p = 0;
if(!strncmp("PONG", cmd, 4))
return;
- if(!strncmp("PRIVMSG", cmd, 7) || !strncmp("PING", cmd, 4)) {
+ if(!strncmp("PRIVMSG", cmd, 7)) {
if(!(p = strchr(cmd, ' ')))
return;
*p = 0;
chan = ++p;
for(; *p && *p != ' '; p++);
*p = 0;
- if(!(p = strchr(++p, ':')))
- return;
- *p = 0;
- txt = ++p;
- if(!strncmp("PRIVMSG", cmd, 8) && chan && txt) {
- snprintf(bufout, sizeof bufout, "<%s> %s", usr, txt);
- pout(chan, bufout);
- }
- else if(!strncmp("PING", cmd, 5) && txt) {
- snprintf(bufout, sizeof bufout, "PONG %s\r\n", txt);
- write(srv, bufout, strlen(bufout));
- }
- return;
+ snprintf(bufout, sizeof bufout, "<%s> %s", usr, txt);
+ pout(chan, bufout);
+ }
+ else if(!strncmp("PING", cmd, 4) && txt) {
+ snprintf(bufout, sizeof bufout, "PONG %s\r\n", txt);
+ write(srv, bufout, strlen(bufout));
+ }
+ else {
+ snprintf(bufout, sizeof bufout, "-!- %s", cmd);
+ pout(usr, bufout);
}
- snprintf(bufout, sizeof bufout, "-!- %s", cmd);
- pout(host, bufout);
}
int
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.