qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5 14/50] mutli-process: build remote command line args


From: Daniel P . Berrangé
Subject: Re: [PATCH v5 14/50] mutli-process: build remote command line args
Date: Mon, 2 Mar 2020 17:47:45 +0000
User-agent: Mutt/1.13.3 (2020-01-12)

On Mon, Mar 02, 2020 at 06:36:13PM +0100, Philippe Mathieu-Daudé wrote:
> typo "multi" in patch subject.
> 
> On 2/24/20 9:55 PM, Jagannathan Raman wrote:
> > From: Elena Ufimtseva <address@hidden>
> > 
> > Signed-off-by: Elena Ufimtseva <address@hidden>
> > Signed-off-by: Jagannathan Raman <address@hidden>
> > Signed-off-by: John G Johnson <address@hidden>
> > ---
> >   v4 -> v5:
> >    - Added "exec" suboption to get the executable's name
> >    - Addressed feedback about variable names
> >    - Removed redundant check for spawning a process
> > 
> >   hw/proxy/qemu-proxy.c         | 68 
> > +++++++++++++++++++++++++++++++++----------
> >   include/hw/proxy/qemu-proxy.h |  2 +-
> >   2 files changed, 54 insertions(+), 16 deletions(-)
> > 
> > diff --git a/hw/proxy/qemu-proxy.c b/hw/proxy/qemu-proxy.c
> > index 828bbd7..d792e86 100644
> > --- a/hw/proxy/qemu-proxy.c
> > +++ b/hw/proxy/qemu-proxy.c
> > @@ -19,19 +19,50 @@
> >   static void pci_proxy_dev_realize(PCIDevice *dev, Error **errp);
> > +static int add_argv(char *opts_str, char **argv, int argc)
> > +{
> > +    int max_args = 64;
> > +
> > +    if (argc < max_args - 1) {
> > +        argv[argc++] = opts_str;
> > +        argv[argc] = 0;
> > +    } else {
> > +        return 0;
> > +    }
> > +
> > +    return argc;
> > +}
> > +
> > +static int make_argv(char *opts_str, char **argv, int argc)
> > +{
> > +    int max_args = 64;
> > +
> > +    char *p2 = strtok(opts_str, " ");
> > +    while (p2 && argc < max_args - 1) {
> > +        argv[argc++] = p2;
> > +        p2 = strtok(0, " ");
> > +    }
> > +    argv[argc] = 0;
> 
> Is there a GLib function to do that?

g_shell_parse_argv() perhaps

  https://developer.gnome.org/glib/stable/glib-Shell-related-Utilities.html


Though my preference would be to avoid the need to do this at all, by
not accepting a raw shell command line string in the first place.


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 :|




reply via email to

[Prev in Thread] Current Thread [Next in Thread]