X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Firc_src%2Fmain.c;h=a08553a03844bfd4ff491247b610e9b4eb49e515;hb=6c7e82169e66197939b83945812b02787ed0f52e;hp=952da4e8428da778c19172c5823ec8b80d1b0f4a;hpb=f36dc289101a45c839595bb88cf1bf942f2cf12b;p=tpg%2Facess2.git diff --git a/Usermode/Applications/irc_src/main.c b/Usermode/Applications/irc_src/main.c index 952da4e8..a08553a0 100644 --- a/Usermode/Applications/irc_src/main.c +++ b/Usermode/Applications/irc_src/main.c @@ -578,6 +578,10 @@ void ParseServerLine(tServer *Server, char *Line) break; } } + else if( strcmp(cmd, "PING") == 0 ) + { + writef(Server->FD, "PONG %s\n", gsHostname); + } else if( strcmp(cmd, "NOTICE") == 0 ) { char *class, *message; @@ -643,7 +647,7 @@ int ProcessIncoming(tServer *Server) { #endif // Read data - len = read(Server->FD, BUFSIZ - Server->ReadPos, &Server->InBuf[Server->ReadPos]); + len = read(Server->FD, &Server->InBuf[Server->ReadPos], BUFSIZ - Server->ReadPos); if( len == -1 ) { return -1; } @@ -697,7 +701,7 @@ int writef(int FD, const char *Format, ...) vsnprintf(buf, len+1, Format, args); va_end(args); - return write(FD, len, buf); + return write(FD, buf, len); } }