提交 70e4295b 编写于 作者: J Jiri Denemark

Add backlog parameter to virNetSocketListen

So that callers can change the default value.
上级 f4287c76
...@@ -127,7 +127,7 @@ virNetServerServicePtr virNetServerServiceNewTCP(const char *nodename, ...@@ -127,7 +127,7 @@ virNetServerServicePtr virNetServerServiceNewTCP(const char *nodename,
goto error; goto error;
for (i = 0 ; i < svc->nsocks ; i++) { for (i = 0 ; i < svc->nsocks ; i++) {
if (virNetSocketListen(svc->socks[i]) < 0) if (virNetSocketListen(svc->socks[i], 0) < 0)
goto error; goto error;
/* IO callback is initially disabled, until we're ready /* IO callback is initially disabled, until we're ready
...@@ -187,7 +187,7 @@ virNetServerServicePtr virNetServerServiceNewUNIX(const char *path, ...@@ -187,7 +187,7 @@ virNetServerServicePtr virNetServerServiceNewUNIX(const char *path,
goto error; goto error;
for (i = 0 ; i < svc->nsocks ; i++) { for (i = 0 ; i < svc->nsocks ; i++) {
if (virNetSocketListen(svc->socks[i]) < 0) if (virNetSocketListen(svc->socks[i], 0) < 0)
goto error; goto error;
/* IO callback is initially disabled, until we're ready /* IO callback is initially disabled, until we're ready
......
...@@ -1076,10 +1076,10 @@ ssize_t virNetSocketWrite(virNetSocketPtr sock, const char *buf, size_t len) ...@@ -1076,10 +1076,10 @@ ssize_t virNetSocketWrite(virNetSocketPtr sock, const char *buf, size_t len)
} }
int virNetSocketListen(virNetSocketPtr sock) int virNetSocketListen(virNetSocketPtr sock, int backlog)
{ {
virMutexLock(&sock->lock); virMutexLock(&sock->lock);
if (listen(sock->fd, 30) < 0) { if (listen(sock->fd, backlog > 0 ? backlog : 30) < 0) {
virReportSystemError(errno, "%s", _("Unable to listen on socket")); virReportSystemError(errno, "%s", _("Unable to listen on socket"));
virMutexUnlock(&sock->lock); virMutexUnlock(&sock->lock);
return -1; return -1;
......
...@@ -105,7 +105,7 @@ void virNetSocketFree(virNetSocketPtr sock); ...@@ -105,7 +105,7 @@ void virNetSocketFree(virNetSocketPtr sock);
const char *virNetSocketLocalAddrString(virNetSocketPtr sock); const char *virNetSocketLocalAddrString(virNetSocketPtr sock);
const char *virNetSocketRemoteAddrString(virNetSocketPtr sock); const char *virNetSocketRemoteAddrString(virNetSocketPtr sock);
int virNetSocketListen(virNetSocketPtr sock); int virNetSocketListen(virNetSocketPtr sock, int backlog);
int virNetSocketAccept(virNetSocketPtr sock, int virNetSocketAccept(virNetSocketPtr sock,
virNetSocketPtr *clientsock); virNetSocketPtr *clientsock);
......
...@@ -159,7 +159,7 @@ static int testSocketTCPAccept(const void *opaque) ...@@ -159,7 +159,7 @@ static int testSocketTCPAccept(const void *opaque)
goto cleanup; goto cleanup;
for (i = 0 ; i < nlsock ; i++) { for (i = 0 ; i < nlsock ; i++) {
if (virNetSocketListen(lsock[i]) < 0) if (virNetSocketListen(lsock[i], 0) < 0)
goto cleanup; goto cleanup;
} }
...@@ -217,7 +217,7 @@ static int testSocketUNIXAccept(const void *data ATTRIBUTE_UNUSED) ...@@ -217,7 +217,7 @@ static int testSocketUNIXAccept(const void *data ATTRIBUTE_UNUSED)
if (virNetSocketNewListenUNIX(path, 0700, getgid(), &lsock) < 0) if (virNetSocketNewListenUNIX(path, 0700, getgid(), &lsock) < 0)
goto cleanup; goto cleanup;
if (virNetSocketListen(lsock) < 0) if (virNetSocketListen(lsock, 0) < 0)
goto cleanup; goto cleanup;
if (virNetSocketNewConnectUNIX(path, false, NULL, &csock) < 0) if (virNetSocketNewConnectUNIX(path, false, NULL, &csock) < 0)
...@@ -276,7 +276,7 @@ static int testSocketUNIXAddrs(const void *data ATTRIBUTE_UNUSED) ...@@ -276,7 +276,7 @@ static int testSocketUNIXAddrs(const void *data ATTRIBUTE_UNUSED)
goto cleanup; goto cleanup;
} }
if (virNetSocketListen(lsock) < 0) if (virNetSocketListen(lsock, 0) < 0)
goto cleanup; goto cleanup;
if (virNetSocketNewConnectUNIX(path, false, NULL, &csock) < 0) if (virNetSocketNewConnectUNIX(path, false, NULL, &csock) < 0)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册