[libvirt] [PATCH] portability fixes to tools/virt-pki-validate.in

Eric Blake eblake at redhat.com
Wed Apr 21 21:22:11 UTC 2010


On 04/21/2010 03:00 PM, Dustin Kirkland wrote:
> portability fixes to tools/virt-pki-validate.in
> 
> 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 #4).
> 
>  1) note our gnutls-bin package (in addition to your gnutls-utils
> package) in the no-certtool error text
> 
>  2) adjust the ORG-setting sed regular expressions to work with both Red
> Hat and Ubuntu style cacert.pem Issuer format

I'm not very qualified to speak on 1 or 2...

> 
>  3) fix a bashism, == should be = in the case where /bin/sh is a symlink
> to dash

But 3 is a definite bug worth fixing.

> 
>  4) $(SYSCONFDIR) cannot evaluate; set a single shell SYSCONFDIR
> variable to the autoconf @SYSCONFDIR@ value, and use $SYSCONFDIR
> everywhere

As is 4.

> @@ -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 | grep Issuer | sed -e 's+\s*Issuer: .*CN=++' -e 's+,EMAIL=.*++'`

I tend to cringe at 'grep | sed', since pretty much anything you can do
with grep can be subsumed into sed for one less process:

ORG=`$CERTOOL ... | sed '/Issuer/ s+...++'`

Not that it was your bug, but we might as well fix it while we are here.

>  if [ "$SERVER" = "1" ]
>  then
> -    if [ -r $(SYSCONFDIR)/sysconfig/libvirtd ]
> +    if [ -r $SYSCONFDIR/sysconfig/libvirtd ]

To be safe, we need quoting: [ -r "$SYSCONFDIR/sysconfig/libvirtd" ]
(multiple instances).

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20100421/a3b14175/attachment-0001.sig>


More information about the libvir-list mailing list