tags 735536 patch thanks Hi,
the attached patch created the trustdb gpg is missing. It might make sense to fix the while loop to stop in case import_key fails, but fixing the issue behind this bug was more important for me. The patch also fixes a warning about defined being deprecated. Cheers, Bernd -- Bernd Zeimetz Debian GNU/Linux Developer http://bzed.de http://www.debian.org GPG Fingerprint: ECA1 E3F2 8E11 2432 D485 DD95 EB36 171A 6FF9 435F
--- /usr/bin/caff 2011-11-01 20:01:39.000000000 +0100 +++ caff 2014-01-26 22:46:39.626878889 +0100 @@ -596,7 +596,7 @@ } } - next unless (defined(@$readyr)); # Wait some more. + next unless ($readyr); # Wait some more. for my $rfd (@$readyr) { $readwrote_stuff_this_time = 1; @@ -732,11 +732,31 @@ }; ###### +# create trustdb in $gnupghome +###### +sub create_trustdb($) { + my ($gnupghome) = @_; + + my $gpg = GnuPG::Interface->new(); + $gpg->call( $CONFIG{'gpg'} ); + $gpg->options->hash_init( + 'homedir' => $gnupghome, + 'extra_args' => [ qw{ --import-ownertrust } ] ); + $gpg->options->meta_interactive( 0 ); + my ($inputfd, $stdoutfd, $stderrfd, $statusfd, $handles) = make_gpg_fds(); + my $pid = $gpg->wrap_call(handles => $handles); + my ($stdout, $stderr, $status) = readwrite_gpg('#\n', $inputfd, $stdoutfd, $stderrfd, $statusfd); + waitpid $pid, 0; +}; + +###### # import a key from the scalar $asciikey into a gpg homedirectory in $tempdir ###### sub import_key($$) { my ($gnupghome, $asciikey) = @_; + create_trustdb($gnupghome); + my $gpg = GnuPG::Interface->new(); $gpg->call( $CONFIG{'gpg'} ); $gpg->options->hash_init(