#3575: smime_keys.pl fails on filenames with spaces -----------------------+---------------------------------------------------- Reporter: Y_Plentyn | Owner: mutt-dev Type: defect | Status: new Priority: minor | Milestone: Component: crypto | Version: Keywords: | -----------------------+---------------------------------------------------- Forwarding from http://bugs.debian.org/658324 :
{{{ Dear Maintainer, I recently needed to update by smime-keyring with a new version of my own certificate to a new one, and saved it to a file named "cacert kan...@ak-online.be renewed.p12". Unfortunately 'smime_keys add_p12 "cacert kan...@ak-online.be renewed.p12"' failed with the return code 256 from openssl and a dump of it's commandline options. I looked into smime_keys and found that the perl-script builds the command in line 156 directly from $ARGV[1]: >>>> snip <<<< 156: my $cmd = "$opensslbin pkcs12 -in $ARGV[1] -out $pem_file"; 157: system $cmd and die "'$cmd' returned $?"; >>>> snip <<<< The error-message also contained the exact commandline it tried to execute which was: >>>> snip <<<< '/usr/bin/openssl pkcs12 -in cacert kan...@ak-online.be renewed.p12 -out cacert kan...@ak-online.be renewed.p12.pem' returned 256 at /usr/bin/smime_keys line 157. >>>> snip <<<< As there were no quotation marks around the filename I tried it with a symlink to the same file, but without any space in the filename and it worked like a charm. I therefore think that there is some kind of escaping of $ARGV[1] neccesary to stop smime_keys from passing the spaces directly to the shell that executes openssl. Kind regards, Andre }}} -- Ticket URL: <http://dev.mutt.org/trac/ticket/3575> Mutt <http://www.mutt.org/> The Mutt mail user agent