[libvirt] [PATCH] portability fixes to tools/virt-pki-validate.in
Daniel Veillard
veillard at redhat.com
Thu Apr 22 11:53:30 UTC 2010
On Wed, Apr 21, 2010 at 05:09:31PM -0600, Eric Blake wrote:
> From: Dustin Kirkland <kirkland at canonical.com>
>
> A few fixes will help make tools/virt-pki-validate.in useful on Debian
> and Ubuntu. And one fix should be useful to everyone (see #3).
>
> 1) note our gnutls-bin package (in addition to your gnutls-utils
> package) in the no-certtool error text
>
> 2) fix a bashism, == should be = in the case where /bin/sh is a symlink
> to dash
>
> 3) $(SYSCONFDIR) cannot evaluate; set a single shell SYSCONFDIR
> variable to the autoconf @SYSCONFDIR@ value, and use $SYSCONFDIR
> everywhere
>
> Bug report:
> * https://bugs.edge.launchpad.net/ubuntu/+source/libvirt/+bug/562266
>
> Signed-off-by: Dustin Kirkland <kirkland at canonical.com>
> Signed-off-by: Eric Blake <eblake at redhat.com>
> ---
>
> The following is the uncontroversial parts (at least, IMO) of your
> patch; leaving only the change for the regexp, which should be in a
> separate patch anyways.
>
> tools/virt-pki-validate.in | 28 +++++++++++++++++-----------
> 1 files changed, 17 insertions(+), 11 deletions(-)
>
> diff --git a/tools/virt-pki-validate.in b/tools/virt-pki-validate.in
> index ee7b79d..64579b0 100755
> --- a/tools/virt-pki-validate.in
> +++ b/tools/virt-pki-validate.in
> @@ -16,8 +16,8 @@ PORT=16514
> CERTOOL=`which certtool 2>/dev/null`
> if [ ! -x $CERTOOL ]
> then
> - echo Could not locate the certtool program
> - echo make sure the gnutls-utils package is installed
> + echo "Could not locate the certtool program"
> + echo "make sure the gnutls-utils (or gnutls-bin) package is installed"
> exit 1
> fi
> echo Found $CERTOOL
> @@ -25,7 +25,8 @@ echo Found $CERTOOL
> #
> # Check the directory structure
> #
> -PKI="@SYSCONFDIR@/pki"
> +SYSCONFDIR="@SYSCONFDIR@"
> +PKI="$SYSCONFDIR/pki"
> if [ ! -d $PKI ]
> then
> echo the $PKI directory is missing, it is usually
> @@ -129,8 +130,8 @@ then
> echo "as root do: chmod 644 $CA/cacert.pem"
> exit 1
> fi
> -ORG=`$CERTOOL -i --infile $CA/cacert.pem | grep Issuer | sed 's+Issuer: CN=++'`
> -if [ "$ORG" == "" ]
> +ORG=`$CERTOOL -i --infile $CA/cacert.pem | sed -n '/Issuer/ s+Issuer: CN=++p'`
> +if [ "$ORG" = "" ]
> then
> echo the CA certificate $CA/cacert.pem does not define the organization
> echo it should probably regenerated
> @@ -240,19 +241,24 @@ fi
>
> if [ "$SERVER" = "1" ]
> then
> - if [ -r $(SYSCONFDIR)/sysconfig/libvirtd ]
> + if [ -r "$SYSCONFDIR"/sysconfig/libvirtd ]
> then
> - if [ "`grep '^LIBVIRTD_ARGS' $(SYSCONFDIR)/sysconfig/libvirtd | grep -- '--listen'`" = "" ]
> + if grep "^LIBVIRTD_ARGS.*--listen" "$SYSCONFDIR"/sysconfig/libvirtd \
> + >/dev/null 2>&1
> then
> - echo Make sure $(SYSCONFDIR)/sysconfig/libvirtd is setup to listen to
> + :
> + else
> + echo Make sure "$SYSCONFDIR"/sysconfig/libvirtd is setup to listen to
> echo TCP/IP connections and restart the libvirtd service
> fi
> fi
> - if [ -r $(SYSCONFDIR)/sysconfig/iptables ]
> + if [ -r "$SYSCONFDIR"/sysconfig/iptables ]
> then
> - if [ "`grep $PORT $(SYSCONFDIR)/sysconfig/iptables`" = "" ]
> + if grep $PORT "$SYSCONFDIR"/sysconfig/iptables >/dev/null 2>&1
> then
> - echo Make sure $(SYSCONFDIR)/sysconfig/iptables is setup to allow
> + :
> + else
> + echo Make sure "$SYSCONFDIR"/sysconfig/iptables is setup to allow
> echo incoming TCP/IP connections on port $PORT and
> echo restart the iptables service
> fi
ACK,
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list