summary refs log tree commit diff stats
path: root/hw/core
diff options
context:
space:
mode:
authorDaniel P. Berrangé <berrange@redhat.com>2019-01-14 11:33:18 +0000
committerDaniel P. Berrangé <berrange@redhat.com>2019-01-24 12:23:35 +0000
commit73564c407caedf992a1c688b5fea776a8b56ba2a (patch)
tree68663aff3cae0b7d1d97c74854801b6e805dd887 /hw/core
parent6d809e7da943bb4b95b408fbf3d80d097c0f7d38 (diff)
downloadfocaccia-qemu-73564c407caedf992a1c688b5fea776a8b56ba2a.tar.gz
focaccia-qemu-73564c407caedf992a1c688b5fea776a8b56ba2a.zip
io: ensure UNIX client doesn't unlink server socket
The qio_channel_socket_close method for was mistakenly unlinking the
UNIX server socket, even if the channel was a client connection. This
was not noticed with chardevs, since they never call close, but with the
VNC server, this caused the VNC server socket to be deleted after the
first client quit.

The qio_channel_socket_close method also needlessly reimplemented the
logic that already exists in socket_listen_cleanup(). Just call that
method directly, for listen sockets only.

This fixes a regression introduced in QEMU 3.0.0 with

  commit d66f78e1eaa832f73c771d9df1b606fe75d52a50
  Author: Pavel Balaev <mail@void.so>
  Date:   Mon May 21 19:17:35 2018 +0300

    Delete AF_UNIX socket after close

Fixes launchpad #1795100

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Diffstat (limited to 'hw/core')
0 files changed, 0 insertions, 0 deletions