On Mon, May 21, 2018 at 07:17:35PM +0300, Pavel Balaev wrote: > This is a second attempt at sending this patch: > > http://lists.nongnu.org/archive/html/qemu-devel/2018-05/msg04697.html > > Signed-off-by: Pavel Balaev <m...@void.so> > --- > io/channel-socket.c | 18 +++++++++++++++++- > 1 file changed, 17 insertions(+), 1 deletion(-) > > diff --git a/io/channel-socket.c b/io/channel-socket.c > index 57cfb4d3a6..b50e63a053 100644 > --- a/io/channel-socket.c > +++ b/io/channel-socket.c > @@ -685,8 +685,10 @@ qio_channel_socket_close(QIOChannel *ioc, > Error **errp) > { > QIOChannelSocket *sioc = QIO_CHANNEL_SOCKET(ioc); > + int rc = 0; > > if (sioc->fd != -1) { > + SocketAddress *addr = socket_local_address(sioc->fd, errp); > #ifdef WIN32 > WSAEventSelect(sioc->fd, NULL, 0); > #endif > @@ -697,8 +699,22 @@ qio_channel_socket_close(QIOChannel *ioc, > return -1; > } > sioc->fd = -1; > + > + if (addr && addr->type == SOCKET_ADDRESS_TYPE_UNIX > + && addr->u.q_unix.path) { > + if (unlink(addr->u.q_unix.path) < 0 && errno != ENOENT) { > + error_setg_errno(errp, errno, > + "Failed to unlink socket %s", > + addr->u.q_unix.path); > + rc = -1; > + } > + } > + > + if (addr) { > + qapi_free_SocketAddress(addr); > + } > } > - return 0; > + return rc; > } > > static int
Signed-off-by: Daniel P. Berrangé <berra...@redhat.com> I've queued this now, thanks. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|