Skip to content

Instantly share code, notes, and snippets.

@Tanner
Created March 18, 2013 18:30
Show Gist options
  • Save Tanner/5189559 to your computer and use it in GitHub Desktop.
Save Tanner/5189559 to your computer and use it in GitHub Desktop.
/**
* Create a socket and connect to the server.
*
* @param server_ip Server IP (dotted quad)
* @param server_port Port Number
* @return Socket descriptor
*/
int server_connect(char *server_ip, unsigned int server_port) {
// Create a socket using TCP
int sock;
if ((sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) {
fprintf(stderr, "Could not create socket.\n");
return -1;
}
// Construct the server address structure
struct sockaddr_in server_address;
memset(&server_address, 0, sizeof(server_address));
server_address.sin_family = AF_INET;
server_address.sin_addr.s_addr = inet_addr(server_ip);
server_address.sin_port = htons(server_port);
// Establish the connection to the server
if (connect(sock, (struct sockaddr *) &server_address, sizeof(server_address)) < 0) {
fprintf(stderr, "Could not connect to server.\n");
return -1;
}
return sock;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment