From: Dariusz Michaluk Date: Fri, 26 Apr 2019 12:18:41 +0000 (+0200) Subject: Increase backlog for listening sockets X-Git-Tag: submit/tizen/20190426.145014~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ff02215ef57cd37f1410c9c17e8a9ff75f2bc2d1;p=platform%2Fcore%2Fsecurity%2Fsecurity-manager.git Increase backlog for listening sockets When systemd's socket activaction is utilized, the default backlog parameter passed to the listen() function is set to SOMAXCONN, which is equal to 128. In distributions where systemd is not used for socket activation, the default UNIX socket implementation sets the backlog value to 5. This may lead to rare overflow of an internal connection queue. This manifests itself as the -EAGAIN error returned by connect(). To mitigate the issue, the backlog parameter has been set to SOMAXCONN, which is a default value used by systemd. Change-Id: I42b277d8d66c23335474fdf63db937ef22b8e171 --- diff --git a/src/server/main/socket-manager.cpp b/src/server/main/socket-manager.cpp index 4b8a7849..46b1822a 100644 --- a/src/server/main/socket-manager.cpp +++ b/src/server/main/socket-manager.cpp @@ -552,7 +552,7 @@ int SocketManager::CreateDomainSocketHelp( umask(originalUmask); - if (-1 == listen(sockfd, 5)) { + if (-1 == listen(sockfd, SOMAXCONN)) { int err = errno; close(sockfd); LogError("Error in listen: " << GetErrnoString(err));