aboutsummaryrefslogtreecommitdiff
path: root/toys/pending/tcpsvd.c
diff options
context:
space:
mode:
Diffstat (limited to 'toys/pending/tcpsvd.c')
-rw-r--r--toys/pending/tcpsvd.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/toys/pending/tcpsvd.c b/toys/pending/tcpsvd.c
index 31c27610..e5bd76b5 100644
--- a/toys/pending/tcpsvd.c
+++ b/toys/pending/tcpsvd.c
@@ -248,7 +248,7 @@ static int create_bind_sock(char *host, struct sockaddr *haddr)
sockfd = xsocket(rp->ai_family, TT.udp ?SOCK_DGRAM :SOCK_STREAM, 0);
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &set, sizeof(set));
if (TT.udp) setsockopt(sockfd, IPPROTO_IP, IP_PKTINFO, &set, sizeof(set));
- if ((bind(sockfd, rp->ai_addr, rp->ai_addrlen)) < 0) perror_exit("Bind failed");
+ xbind(sockfd, rp->ai_addr, rp->ai_addrlen);
if(haddr) memcpy(haddr, rp->ai_addr, rp->ai_addrlen);
freeaddrinfo(res);
return sockfd;
@@ -386,8 +386,7 @@ void tcpsvd_main(void)
free(serv);
free(clie);
}
- if (TT.udp && (connect(newfd, (struct sockaddr *)buf, sizeof(buf)) < 0))
- perror_exit("connect");
+ if (TT.udp) xconnect(newfd, (struct sockaddr *)buf, sizeof(buf));
close(0);
close(1);