Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #include <sys/socket.h>
- #include <sys/types.h>
- #include <netdb.h>
- int main() {
- int connected = 0;
- char server[1024]="irc.freenode.net";
- char nick[1024]= "NICK anon\r\n";
- char channel[1024]="JOIN #tiutiu\r\n";
- int port = 6667; // server port
- char user[1024] = "USER anon randomtext israndom \r\n"; // USER raw
- struct sockaddr_in addr;
- struct hostent *host;
- host = gethostbyname(server);
- addr.sin_addr.s_addr = *(unsigned long*)host->h_addr;
- addr.sin_family = AF_INET;
- addr.sin_port = htons((unsigned short)port);
- int sockd = socket(AF_INET, SOCK_STREAM, 0);
- connect(sockd, (struct sockaddr *)&addr, sizeof(addr));
- printf("Connecting to: %s ", server);
- send(sockd, nick, strlen(nick), 0); // Converts nick string to c-array and sends it to server
- printf("Sent: %s to server", nick);
- printf("CONNECTING TO CHANNEL %s ", channel);
- send(sockd, channel, strlen(channel), 0);
- printf("CONNECTED");
- send(sockd, user, strlen(user), 0);
- printf("sent: %s to server", user);
- int j=0;
- char sockbuff[4096]; // array to hold the incoming socket data
- while (connected < 7) {
- memset(&sockbuff, '\0', sizeof(sockbuff));
- recv(sockd, sockbuff, 4096, 0);
- printf("%s\n %d \n",sockbuff, connected);
- connected+=1;
- }
- char* msg;
- printf("MESSAGE: ");
- while (scanf("%s",&msg)!=EOF) {
- char message[1024]="PRIVMSG #tiutiu : hello\r\n";
- printf("sending %s" , message);
- send(sockd, message, strlen(message), 0);
- printf("%s\n", sockbuff);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement