• C
    qemu-sockets: Report explicit error if unlink fails · 0ef705a2
    Cole Robinson 提交于
    Consider this case:
    
    $ ls -ld ~/root-owned/
    drwx--x--x. 2 root root 4096 Apr 29 12:55 /home/crobinso/root-owned/
    $ ls -l ~/root-owned/foo.sock
    -rwxrwxrwx. 1 crobinso crobinso 0 Apr 29 12:55 /home/crobinso/root-owned/foo.sock
    
    $ qemu-system-x86_64 -vnc unix:~/root-owned/foo.sock
    qemu-system-x86_64: -vnc unix:/home/crobinso/root-owned/foo.sock: Failed to start VNC server: Failed to bind socket to /home/crobinso/root-owned/foo.sock: Address already in use
    
    ...which is techinically true, but the real error is that we failed to
    unlink. So report it.
    
    This may seem pathological but it's a real possibility via libvirt.
    Signed-off-by: NCole Robinson <crobinso@redhat.com>
    Reviewed-by: NEric Blake <eblake@redhat.com>
    Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
    0ef705a2
qemu-sockets.c 27.9 KB