#include #include #include #include #pragma comment(lib, "ws2_32.lib") int main(int argc, char* argv[]) { WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKADDR_IN sin; char buffer[BUFSIZ]; char *ptr; char msg[256]; sock = socket(AF_INET, SOCK_STREAM, 0); sin.sin_addr.s_addr = inet_addr("85.188.1.26"); sin.sin_family = AF_INET; sin.sin_port = htons(6667); char nickbot[30]="Geek-Only"; char channel[20]="#geek-only"; char serveur[30]="irc.freenode.net"; char user[50]="Geek-Only Geek-Only Geek-Only :Geek-OnlyBot"; char master[30]="HellDragon"; char *autorize=":HellDragon!"; connect(sock, (SOCKADDR *)&sin, sizeof(sin)); sprintf (buffer, "NICK %s\n", nickbot); send (sock, buffer, strlen (buffer), 0); sprintf (buffer, "USER %s\n", user); send (sock, buffer, strlen (buffer), 0); sprintf (buffer, "JOIN %s\n", channel); send (sock, buffer, strlen (buffer), 0); sprintf (buffer, "PRIVMSG %s :Connected.\n", master); send (sock, buffer, strlen (buffer), 0); while (1) { memset(buffer, '\0', BUFSIZ); recv(sock, buffer, BUFSIZ-1, 0); printf("%s",buffer); if (strstr(buffer, "PING :")) { ptr = strstr(buffer, "PING :") + strlen("PING :"); snprintf(msg, 256, "PONG :%s\n", ptr); send(sock, msg, strlen(msg), 0); } if (strstr(buffer, "testttttttttttttttttt")) { ptr = strstr(buffer, "testtttttttttttttttttl"); snprintf(msg, 256, "PRIVMSG %s :test\n", channel); send(sock, msg, strlen(msg), 0); } if ((strstr(buffer, autorize)) && (strstr(buffer, "!close"))) { ptr = strstr(buffer, "!close"); { WSACleanup(); closesocket(sock); } } } }