diff options
author | epoch <epoch@hacking.allowed.org> | 2014-03-25 15:53:47 -0500 |
---|---|---|
committer | epoch <epoch@hacking.allowed.org> | 2014-03-25 15:53:47 -0500 |
commit | 7bfe791fa77d7b9adf430bd24266d9837230cade (patch) | |
tree | e2c7379347538543ee74ef9154f89c2c316142a5 /libirc/libirc.c | |
parent | fe808525acbc71410e22bbb6b5cfa5266b2dd30f (diff) | |
download | segfault-7bfe791fa77d7b9adf430bd24266d9837230cade.tar.gz segfault-7bfe791fa77d7b9adf430bd24266d9837230cade.zip |
fixed it *really*
Diffstat (limited to 'libirc/libirc.c')
-rw-r--r-- | libirc/libirc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libirc/libirc.c b/libirc/libirc.c index c529d10..ee4506d 100644 --- a/libirc/libirc.c +++ b/libirc/libirc.c @@ -100,8 +100,12 @@ int runit(int fd,void (*line_handler)(),void (*extra_handler)()) { line[i-s+1]=0;//gotta null terminate this. line_handler expects it. s=i+1;//the character after the newline. if(!strncmp(line,"PING",4)) { - fprintf(fp,"PONG %s\r\n",line+6);//a whole FILE * and fdopen JUST for this??? oy... - fflush(fp); + t=malloc(strlen(line)); + strcpy(t,"PONG "); + strcat(t,line+6); + write(fd,t,strlen(t)); + //fprintf(fp,"PONG %s",line+6);//a whole FILE * and fdopen JUST for this??? oy... + //fflush(fp); #ifdef DEBUG printf("%s\nPONG %s\n",line,line+6); write(fd,"PRIVMSG %s :PONG! w00t!\r\n",DEBUG,28); |