[Libguestfs] [libnbd PATCH] nbdsh: Simplify the script

Eric Blake eblake at redhat.com
Tue Jun 22 19:16:37 UTC 2021


On Tue, Jun 22, 2021 at 01:33:27PM +0200, Martin Kletzander wrote:
> There is no need for any hacks if we just do what execution of the module would
> have done.
> 
> Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
> ---
>  sh/nbdsh.in | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/sh/nbdsh.in b/sh/nbdsh.in
> index d10f0c1b6b26..f66e2918d304 100644
> --- a/sh/nbdsh.in
> +++ b/sh/nbdsh.in
> @@ -1,4 +1,4 @@
> -#!/bin/sh -
> +#!/usr/bin/env @PYTHON@

What does argv[0] say in this case?  How about ps listings?

>  # Copyright (C) 2011-2019 Red Hat Inc.
>  #
>  # @configure_input@
> @@ -17,10 +17,6 @@
>  # License along with this library; if not, write to the Free Software
>  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
>  
> -# Test if /bin/sh supports exec -a option (only supported in bash 4.2
> -# and above, and not part of POSIX).
> -if /bin/sh -c 'exec -a test true' 2>/dev/null; then
> -    exec -a nbdsh @PYTHON@ -mnbd "$@"

The result of this hack is a ps listing that shows 'nbdsh' (rather
than /usr/bin/env or /path/to/python) as the running process name.

> -else
> -    exec          @PYTHON@ -mnbd "$@"
> -fi
> +import nbdsh
> +
> +nbdsh.shell()

I'm afraid that undoing your hack results in a worse experience for
chasing down nbdsh processes.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org




More information about the Libguestfs mailing list