summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>2009-02-05 14:11:04 -0500
committerDaniel Kahn Gillmor <dkg@fifthhorseman.net>2009-02-05 14:11:04 -0500
commit5b27a01c0f34d12118bfee293ec5d2bc8a51c822 (patch)
treee065131511f63b1e9a8e8d9fc71921a17852fd6c /src
parente7108ef5a8b136bea860f239ed1d2dc2110ff186 (diff)
pem2openpgp now supports generating the key as an alternative to reading it from stdin.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/keytrans/pem2openpgp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/keytrans/pem2openpgp b/src/keytrans/pem2openpgp
index c765002..2631da6 100755
--- a/src/keytrans/pem2openpgp
+++ b/src/keytrans/pem2openpgp
@@ -347,13 +347,16 @@ sub fingerprint {
return Digest::SHA1::sha1(pack('Cn', 0x99, length($rsabody)).$rsabody);
}
-# we're just not dealing with newline business right now. slurp in
-# the whole file.
-undef $/;
-my $buf = <STDIN>;
-
-my $rsa = Crypt::OpenSSL::RSA->new_private_key($buf);
+my $rsa;
+if (defined $ENV{PEM2OPENPGP_NEWKEY}) {
+ $rsa = Crypt::OpenSSL::RSA->generate_key($ENV{PEM2OPENPGP_NEWKEY});
+} else {
+ # we're just not dealing with newline business right now. slurp in
+ # the whole file.
+ undef $/;
+ $rsa = Crypt::OpenSSL::RSA->new_private_key(<STDIN>);
+}
$rsa->use_sha1_hash();