X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=jam.c;h=e772fd9d9d4217725c5db903de8b505f80bab9ab;hb=e56014729532a37e05a977b85c9e3bbd3884cc75;hp=b4f8ad37e4e7d3e014471cf4b53c7ab37ee1d7c6;hpb=729c2889c5ce1163ae768690c2c8b5290b799338;p=jam diff --git a/jam.c b/jam.c index b4f8ad3..e772fd9 100644 --- a/jam.c +++ b/jam.c @@ -34,6 +34,7 @@ int get_server_socket(unsigned short port) { int server_sock; struct sockaddr_in sin; + unsigned one = 1; server_sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); if (server_sock == -1) { @@ -41,6 +42,11 @@ int get_server_socket(unsigned short port) exit(1); } + if (setsockopt(server_sock, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one)) == -1) { + perror("setsocket(SO_REUSEADDR)"); + exit(1); + } + sin.sin_family = AF_INET; sin.sin_port = htons(port); sin.sin_addr.s_addr = INADDR_ANY; @@ -80,7 +86,10 @@ int main() exit(1); } - pthread_create(&thread, NULL, receiver_worker, (void *)sock); + if (pthread_create(&thread, NULL, receiver_worker, (void *)sock) == -1) { + perror("pthread_create()"); + exit(1); + } } exit(0);