]> git.proxmox.com Git - mirror_qemu.git/commitdiff
io: use qemu_accept to ensure SOCK_CLOEXEC is set
authorDaniel P. Berrange <berrange@redhat.com>
Thu, 10 Mar 2016 17:07:27 +0000 (17:07 +0000)
committerDaniel P. Berrange <berrange@redhat.com>
Thu, 10 Mar 2016 17:11:40 +0000 (17:11 +0000)
The QIOChannelSocket code mistakenly uses the bare accept()
function which does not set SOCK_CLOEXEC.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
io/channel-socket.c

index 775bb9fcbc484f9df8098a07836a0bacee2303e6..9b5f2d8887ed3d0b49ef85ac22ef9082f75878ee 100644 (file)
@@ -343,8 +343,8 @@ qio_channel_socket_accept(QIOChannelSocket *ioc,
 
  retry:
     trace_qio_channel_socket_accept(ioc);
-    cioc->fd = accept(ioc->fd, (struct sockaddr *)&cioc->remoteAddr,
-                      &cioc->remoteAddrLen);
+    cioc->fd = qemu_accept(ioc->fd, (struct sockaddr *)&cioc->remoteAddr,
+                           &cioc->remoteAddrLen);
     if (cioc->fd < 0) {
         trace_qio_channel_socket_accept_fail(ioc);
         if (socket_error() == EINTR) {