"-netdev socket" only supports inet sockets. It's not a complex task to add support for unix sockets, but the socket netdev parameters are not defined to manage well unix socket parameters.
As discussed in: "socket.c added support for unix domain socket datagram transport" https://lore.kernel.org/qemu-devel/1c0e1bc5-904f-46b0-8044-68e43e67b...@gmail.com/ This series adds support of unix socket type using SocketAddress QAPI structure. A new netdev backend "socket-ng" is added, that is barely a copy of "socket" backend but it uses the SocketAddress QAPI to provide socket parameters. And then it also implement unix sockets (TCP and UDP). Some examples of CLI syntax: for TCP: -netdev socket-ng,id=socket0,mode=server,addr.type=inet,addr.host=localhost,addr.port=1234 -netdev socket-ng,id=socket0,mode=client,addr.type=inet,addr.host=localhost,addr.port=1234 -netdev socket-ng,id=socket0,mode=dgram,\ local.type=inet,local.host=localhost,local.port=1234,\ remote.type=inet,remote.host=localhost,remote.port=1235 for UNIX: -netdev socket-ng,id=socket0,mode=server,addr.type=unix,addr.path=/tmp/qemu0 -netdev socket-ng,id=socket0,mode=client,addr.type=unix,addr.path=/tmp/qemu0 -netdev socket-ng,id=socket0,mode=dgram,\ local.type=unix,local.path=/tmp/qemu0,\ remote.type=unix,remote.path=/tmp/qemu1 for FD: -netdev socket-ng,id=socket0,mode=server,addr.type=fd,addr.str=4 -netdev socket-ng,id=socket0,mode=client,addr.type=fd,addr.str=5 -netdev socket-ng,id=socket0,mode=dgram,local.type=fd,addr.str=4 CC: Ralph Schmieder <ralph.schmie...@gmail.com> CC: Stefano Brivio <sbri...@redhat.com> CC: Daniel P. Berrangé <berra...@redhat.com> CC: Markus Armbruster <arm...@redhat.com> Laurent Vivier (6): net: introduce convert_host_port() qapi: net: add socket-ng netdev net: socket-ng: add unix socket for server and client mode. net: socket-ng: make dgram_dst generic net: socket-ng: move mcast specific code from net_socket_fd_init_dgram() net: socket-ng: add unix socket for dgram mode hmp-commands.hx | 2 +- include/qemu/sockets.h | 2 + net/clients.h | 3 + net/hub.c | 1 + net/meson.build | 1 + net/net.c | 123 +++-- net/socket-ng.c | 1060 ++++++++++++++++++++++++++++++++++++++++ qapi/net.json | 41 +- 8 files changed, 1200 insertions(+), 33 deletions(-) create mode 100644 net/socket-ng.c -- 2.35.3