accept environment variables to adjust the behavior of pem2openpgp
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>
Wed, 4 Feb 2009 02:32:50 +0000 (21:32 -0500)
committerDaniel Kahn Gillmor <dkg@fifthhorseman.net>
Wed, 4 Feb 2009 02:32:50 +0000 (21:32 -0500)
src/keytrans/pem2openpgp

index 3d9f6f83eb34cc43fdac303891c45194d7a15bf5..0910d07f8b27009d31c315e1a781a82f9813eefd 100755 (executable)
@@ -352,7 +352,21 @@ my $hash_algo = pack('C', $digests->{sha1});
 # could an environment variable (if set) override the current time, to
 # be able to create a standard key?  If we read the key from a file
 # instead of stdin, should we use the creation time on the file?
-my $timestamp = time();
+my $timestamp = $ENV{PEM2OPENPGP_TIMESTAMP};
+if (! defined $timestamp)
+  $timestamp = time();
+
+my $flags = 0;
+if (! defined $ENV{PEM2OPENPGP_USAGE_FLAGS})
+  $flags = $usage_flags->{authenticate};
+else {
+  my @ff = split(",", $ENV{PEM2OPENPGP_USAGE_FLAGS});
+  foreach $f (@ff) {
+    if (! defined $usage_flags->{$f})
+      die "No such flag $f";
+    $flags |= $usage_flags->{$f};
+  }
+}
 
 my $creation_time_packet = pack('CCN', 5, $subpacket_types->{sig_creation_time}, $timestamp);