From: Stefano Brivio <sbrivio@redhat.com>
To: Laurent Vivier <lvivier@redhat.com>
Cc: qemu-devel@nongnu.org,
"Ralph Schmieder" <ralph.schmieder@gmail.com>,
"Daniel P . Berrangé" <berrange@redhat.com>,
"Markus Armbruster" <armbru@redhat.com>
Subject: Re: [RFC PATCH v2 0/8] qapi: net: add unix socket type support to netdev backend
Date: Fri, 13 May 2022 20:27:36 +0200 [thread overview]
Message-ID: <20220513202736.3844375e@elisabeth> (raw)
In-Reply-To: <20220512080932.735962-1-lvivier@redhat.com>
On Thu, 12 May 2022 10:09:24 +0200
Laurent Vivier <lvivier@redhat.com> wrote:
> "-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-68E43E67BE60@gmail.com/
>
> This series adds support of unix socket type using SocketAddress QAPI structure.
>
> Two new netdev backends, "stream" and "dgram" are added, that are barely a copy of "socket"
> backend but they use the SocketAddress QAPI to provide socket parameters.
> And then they also implement unix sockets (TCP and UDP).
>
> Some examples of CLI syntax:
>
> for TCP:
>
> -netdev stream,id=socket0,addr.type=inet,addr.host=localhost,addr.port=1234
> -netdev stream,id=socket0,server=off,addr.type=inet,addr.host=localhost,addr.port=1234
>
> -netdev dgram,id=socket0,\
> local.type=inet,local.host=localhost,local.port=1234,\
> remote.type=inet,remote.host=localhost,remote.port=1235
>
> for UNIX:
>
> -netdev stream,id=socket0,addr.type=unix,addr.path=/tmp/qemu0
> -netdev stream,id=socket0,server=off,addr.type=unix,addr.path=/tmp/qemu0
>
> -netdev dgram,id=socket0,\
> local.type=unix,local.path=/tmp/qemu0,\
> remote.type=unix,remote.path=/tmp/qemu1
>
> for FD:
>
> -netdev stream,id=socket0,addr.type=fd,addr.str=4
> -netdev stream,id=socket0,server=off,addr.type=fd,addr.str=5
>
> -netdev dgram,id=socket0,local.type=fd,addr.str=4
>
> v2:
> - use "stream" and "dgram" rather than "socket-ng,mode=stream"
> and ""socket-ng,mode=dgram"
> - extract code to bypass qemu_opts_parse_noisily() to
> a new patch
> - do not ignore EINVAL (Stefano)
> - fix "-net" option
>
> CC: Ralph Schmieder <ralph.schmieder@gmail.com>
> CC: Stefano Brivio <sbrivio@redhat.com>
> CC: Daniel P. Berrangé <berrange@redhat.com>
> CC: Markus Armbruster <armbru@redhat.com>
>
> Laurent Vivier (7):
> net: introduce convert_host_port()
> qapi: net: introduce a way to bypass qemu_opts_parse_noisily()
> qapi: net: add stream and dgram netdevs
> net: stream: add unix socket
> net: dgram: make dgram_dst generic
> net: dgram: move mcast specific code from net_socket_fd_init_dgram()
> net: dgram: add unix socket
>
> Stefano Brivio (1):
> net: stream: Don't ignore EINVAL on netdev socket connection
Except for 4/8:
Reviewed-by: Stefano Brivio <sbrivio@redhat.com>
Except for 6/8 to 8/8:
Tested-by: Stefano Brivio <sbrivio@redhat.com>
--
Stefano
prev parent reply other threads:[~2022-05-13 18:32 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-12 8:09 [RFC PATCH v2 0/8] qapi: net: add unix socket type support to netdev backend Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 1/8] net: introduce convert_host_port() Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 2/8] qapi: net: introduce a way to bypass qemu_opts_parse_noisily() Laurent Vivier
2022-05-13 11:21 ` Markus Armbruster
2022-06-09 20:52 ` Laurent Vivier
2022-06-15 11:56 ` Markus Armbruster
2022-05-12 8:09 ` [RFC PATCH v2 3/8] qapi: net: add stream and dgram netdevs Laurent Vivier
2022-05-13 11:44 ` Markus Armbruster
2022-06-14 21:42 ` Laurent Vivier
2022-06-15 11:46 ` Markus Armbruster
2022-06-20 9:12 ` Laurent Vivier
2022-06-20 11:22 ` Markus Armbruster
2022-06-20 12:09 ` Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 4/8] net: stream: Don't ignore EINVAL on netdev socket connection Laurent Vivier
2022-05-12 8:39 ` Daniel P. Berrangé
2022-05-12 8:09 ` [RFC PATCH v2 5/8] net: stream: add unix socket Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 6/8] net: dgram: make dgram_dst generic Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 7/8] net: dgram: move mcast specific code from net_socket_fd_init_dgram() Laurent Vivier
2022-05-12 8:09 ` [RFC PATCH v2 8/8] net: dgram: add unix socket Laurent Vivier
2022-05-13 18:27 ` Stefano Brivio [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220513202736.3844375e@elisabeth \
--to=sbrivio@redhat.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=lvivier@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=ralph.schmieder@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.