All pastes #1505902 Raw Edit

WinSock

public c v1 · immutable
#1505902 ·published 2009-07-24 16:49 UTC
rendered paste body
#include <stdio.h>#include <string.h>#include <windows.h>#include <winsock.h>//#prgma ("wsock32.lib")int main(int argc, char * argv[]){  int eid;  WORD wsaVersion;  wsaVersion = MAKEWORD(2, 0);  WSADATA wsaData;    eid = WSAStartup(wsaVersion, &wsaData);    if (eid != 0)  {    printf("WinSock startup failed.\r\n");  }    unsigned int fd;    fd = socket(AF_INET, SOCK_STREAM, 0);    if (fd < 0)  {    printf("Error in socket file descripter.\r\n");  }    struct sockaddr_in s;    s.sin_family = AF_INET;  s.sin_port = htons(6667);  s.sin_addr.s_addr = inet_addr("69.147.233.10");    eid = connect(fd, (struct sockaddr *) &s, sizeof s);  if (eid < 0)  {    printf("Error connecting socket.\r\n");  }    char buffer[512], suffix[512];  memset(buffer, 0, sizeof buffer);  sprintf(buffer, "NICK %s\r\n", "sixfoimpala");  send(fd, buffer, strlen(buffer), 0);  memset(buffer, 0, sizeof buffer);  sprintf(buffer, "USER %s \"\" \"\" :%s\r\n", "rollin60", "iamlegend");  send(fd, buffer, strlen(buffer), 0);  memset(buffer, 0, sizeof buffer);  sprintf(buffer, "JOIN %s\r\n", "#help");  send(fd, buffer, strlen(buffer), 0);  memset(buffer, 0, sizeof buffer);  while (1)  {    eid = recv(fd, buffer, sizeof buffer, 0);    if (eid <= 0)     {      break;    }    if (sscanf(buffer, "PING :%s", suffix) > 0)    {      sprintf(buffer, "PONG :%s\r\n", suffix);      send(fd, buffer, strlen(buffer), 0);    }    printf("%s\r\n", buffer);    memset(buffer, 0, sizeof buffer);  }  closesocket(fd);  WSACleanup();  getchar();  return 0;}