aboutsummaryrefslogtreecommitdiff
path: root/programs/ekr_client.c
diff options
context:
space:
mode:
Diffstat (limited to 'programs/ekr_client.c')
-rw-r--r--programs/ekr_client.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/programs/ekr_client.c b/programs/ekr_client.c
index 6aa045dc..936416f5 100644
--- a/programs/ekr_client.c
+++ b/programs/ekr_client.c
@@ -161,7 +161,7 @@ main(int argc, char *argv[])
#ifdef _WIN32
SOCKET fd;
#else
- int fd;
+ int fd, rc;
#endif
struct socket *s;
#ifdef _WIN32
@@ -176,13 +176,13 @@ main(int argc, char *argv[])
#endif
if (argc < 4) {
- printf("error: this program requires 4 arguments!\n");
+ fprintf(stderr, "error: this program requires 4 arguments!\n");
exit(EXIT_FAILURE);
}
#ifdef _WIN32
if (WSAStartup(MAKEWORD(2,2), &wsaData) != 0) {
- printf("WSAStartup failed\n");
+ fprintf(stderr, "WSAStartup failed\n");
exit (EXIT_FAILURE);
}
#endif
@@ -190,7 +190,7 @@ main(int argc, char *argv[])
/* set up a connected UDP socket */
#ifdef _WIN32
if ((fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) == INVALID_SOCKET) {
- printf("socket() failed with error: %d\n", WSAGetLastError());
+ fprintf(stderr, "socket() failed with error: %d\n", WSAGetLastError());
exit(EXIT_FAILURE);
}
#else
@@ -206,12 +206,12 @@ main(int argc, char *argv[])
#endif
sin.sin_port = htons(atoi(argv[2]));
if (!inet_pton(AF_INET, argv[1], &sin.sin_addr.s_addr)){
- printf("error: invalid address\n");
+ fprintf(stderr, "error: invalid address\n");
exit(EXIT_FAILURE);
}
#ifdef _WIN32
if (bind(fd, (struct sockaddr *)&sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR) {
- printf("bind() failed with error: %d\n", WSAGetLastError());
+ fprintf(stderr, "bind() failed with error: %d\n", WSAGetLastError());
exit(EXIT_FAILURE);
}
#else
@@ -232,7 +232,7 @@ main(int argc, char *argv[])
}
#ifdef _WIN32
if (connect(fd, (struct sockaddr *)&sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR) {
- printf("connect() failed with error: %d\n", WSAGetLastError());
+ fprintf(stderr, "connect() failed with error: %d\n", WSAGetLastError());
exit(EXIT_FAILURE);
}
#else
@@ -247,9 +247,15 @@ main(int argc, char *argv[])
usrsctp_sysctl_set_sctp_ecn_enable(0);
usrsctp_register_address((void *)&fd);
#ifdef _WIN32
- tid = CreateThread(NULL, 0, &handle_packets, (void *)&fd, 0, NULL);
+ if ((tid = CreateThread(NULL, 0, &handle_packets, (void *)&fd, 0, NULL)) == NULL) {
+ fprintf(stderr, "CreateThread() failed with error: %d\n", GetLastError());
+ exit(EXIT_FAILURE);
+ }
#else
- pthread_create(&tid, NULL, &handle_packets, (void *)&fd);
+ if ((rc = pthread_create(&tid, NULL, &handle_packets, (void *)&fd)) != 0) {
+ fprintf(stderr, "pthread_create: %s\n", strerror(rc));
+ exit(EXIT_FAILURE);
+ }
#endif
if ((s = usrsctp_socket(AF_CONN, SOCK_STREAM, IPPROTO_SCTP, receive_cb, NULL, 0, &fd)) == NULL) {
perror("usrsctp_socket");
@@ -299,7 +305,7 @@ main(int argc, char *argv[])
TerminateThread(tid, 0);
WaitForSingleObject(tid, INFINITE);
if (closesocket(fd) == SOCKET_ERROR) {
- printf("closesocket() failed with error: %d\n", WSAGetLastError());
+ fprintf(stderr, "closesocket() failed with error: %d\n", WSAGetLastError());
}
WSACleanup();
#else