tap-vsockd: exit non-zero if the server cannot start

Signed-off-by: David Scott <dave.scott@docker.com>
This commit is contained in:
David Scott 2016-05-14 19:35:58 +01:00
parent 4ffd1742dd
commit a4a8d02560

View File

@ -255,7 +255,7 @@ static void handle(SOCKET fd, const char *tap)
/* Server: /* Server:
* accept() in an endless loop, handle a connection at a time * accept() in an endless loop, handle a connection at a time
*/ */
static int server(GUID serviceid, const char *tap) static void server(GUID serviceid, const char *tap)
{ {
SOCKET lsock = INVALID_SOCKET; SOCKET lsock = INVALID_SOCKET;
SOCKET csock = INVALID_SOCKET; SOCKET csock = INVALID_SOCKET;
@ -266,7 +266,7 @@ static int server(GUID serviceid, const char *tap)
lsock = socket(AF_HYPERV, SOCK_STREAM, HV_PROTOCOL_RAW); lsock = socket(AF_HYPERV, SOCK_STREAM, HV_PROTOCOL_RAW);
if (lsock == INVALID_SOCKET) { if (lsock == INVALID_SOCKET) {
sockerr("socket()"); sockerr("socket()");
return 1; exit(1);
} }
sa.Family = AF_HYPERV; sa.Family = AF_HYPERV;
@ -278,14 +278,14 @@ static int server(GUID serviceid, const char *tap)
if (res == SOCKET_ERROR) { if (res == SOCKET_ERROR) {
sockerr("bind()"); sockerr("bind()");
closesocket(lsock); closesocket(lsock);
return 1; exit(1);
} }
res = listen(lsock, SOMAXCONN); res = listen(lsock, SOMAXCONN);
if (res == SOCKET_ERROR) { if (res == SOCKET_ERROR) {
sockerr("listen()"); sockerr("listen()");
closesocket(lsock); closesocket(lsock);
return 1; exit(1);
} }
while(1) { while(1) {
@ -293,7 +293,7 @@ static int server(GUID serviceid, const char *tap)
if (csock == INVALID_SOCKET) { if (csock == INVALID_SOCKET) {
sockerr("accept()"); sockerr("accept()");
closesocket(lsock); closesocket(lsock);
return 1; exit(1);
} }
printf("Connect from: "GUID_FMT":"GUID_FMT"\n", printf("Connect from: "GUID_FMT":"GUID_FMT"\n",