All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	qemu-devel@nongnu.org, qemu-block@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v1 2/2] qemu-nbd: convert to use the QAPI SocketAddress object
Date: Wed, 16 Sep 2015 15:13:35 +0100	[thread overview]
Message-ID: <20150916141335.GF21184@redhat.com> (raw)
In-Reply-To: <55F977E3.2060807@redhat.com>

On Wed, Sep 16, 2015 at 08:08:35AM -0600, Eric Blake wrote:
> On 09/16/2015 07:52 AM, Daniel P. Berrange wrote:
> > The qemu-nbd program currently uses a QemuOpts objects
> > when setting up sockets. Switch it over to use the
> > QAPI SocketAddress objects instead.
> > 
> > Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
> > ---
> >  qemu-nbd.c | 102 +++++++++++++++++++++++--------------------------------------
> >  1 file changed, 38 insertions(+), 64 deletions(-)
> > 
> 
> > +static SocketAddress *nbd_build_socket_address(const char *sockpath,
> > +                                               const char *bindto,
> > +                                               const char *port)
> > +{
> > +    SocketAddress *saddr;
> > +
> > +    saddr = g_new0(SocketAddress, 1);
> > +    if (sockpath) {
> > +        saddr->kind = SOCKET_ADDRESS_KIND_UNIX;
> 
> More minor conflicts with my qapi cleanups.  Not a show-stopper.
> 
> > +        saddr->q_unix = g_new0(UnixSocketAddress, 1);
> > +        saddr->q_unix->path = g_strdup(sockpath);
> > +    } else {
> > +        saddr->kind = SOCKET_ADDRESS_KIND_INET;
> > +        saddr->inet = g_new0(InetSocketAddress, 1);
> > +        saddr->inet->host = g_strdup(bindto);
> > +        if (port) {
> > +            saddr->inet->port = g_strdup(port);
> > +        } else  {
> > +            saddr->inet->port = g_strdup_printf("%d", NBD_DEFAULT_PORT);
> 
> The qapi type is gross for requiring port as a string. But we have plans
> to clean that up, not a showstopper for this patch.

On the contrary - QAPI is correct in requiring this, as it lets you
provide a service name (as defined in /etc/services) instead of a
numeric port, and getaddrinfo() will look that up and convert to
numeric format.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

  reply	other threads:[~2015-09-16 14:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-16 13:52 [Qemu-devel] [PATCH v1 0/2] Remove use of QemuOpts from the nbd code Daniel P. Berrange
2015-09-16 13:52 ` [Qemu-devel] [PATCH v1 1/2] nbd: convert to use the QAPI SocketAddress object Daniel P. Berrange
2015-09-16 14:02   ` Eric Blake
2015-09-16 14:21   ` Paolo Bonzini
2015-09-16 13:52 ` [Qemu-devel] [PATCH v1 2/2] qemu-nbd: " Daniel P. Berrange
2015-09-16 14:08   ` Eric Blake
2015-09-16 14:13     ` Daniel P. Berrange [this message]
2015-09-16 14:23       ` Paolo Bonzini
2015-09-16 14:24       ` Eric Blake

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=20150916141335.GF21184@redhat.com \
    --to=berrange@redhat.com \
    --cc=eblake@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /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.