#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

Reply via email to