#include #include #include #include #include #include #include #include #define IP "66.252.19.80" #define MYPORT 6667 int main() { int sockfd; struct sockaddr_in my_addr; sockfd = socket(AF_INET, SOCK_STREAM, 0); my_addr.sin_family = AF_INET; my_addr.sin_port = htons(MYPORT); my_addr.sin_addr.s_addr = inet_addr(IP); bzero(&(my_addr.sin_zero), 8); if(connect(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) < 0) { printf( "Connection failed.\n" ); return 1; } else { printf( "Connection success.\n" ); } char *msg = "USER programmeri localhost localhost :okay\r\n"; send(sockfd, msg, strlen(msg), 0); msg = "NICK programmeri\r\n"; send(sockfd, msg, strlen(msg), 0); msg = "JOIN #testaus\r\n"; send(sockfd, msg, strlen(msg), 0); msg = "PRIVMSG #testaus :Terve. Olen tallainen idle botti.\r\n"; send(sockfd, msg, strlen(msg), 0); int bufsize = 1024; char buffer[bufsize]; while(recv(sockfd, buffer, bufsize, 0) != -1) { if(strstr(buffer, "!quit")) { msg = "PRIVMSG #testaus :Tervemenoa. Meika haippasee...\r\n"; send(sockfd, msg, strlen(msg), 0); /* exit loop and continue to close the socket */ break; } /* Not so sure about this one :D */ memset( buffer, 0, 1024 ); } close(sockfd); return 0; }