#!/usr/bin/perl
#
# Edit password file. Uses PGP6.
#
# Wed Apr 16 06:37:57 BST 2008. (c) Frank Shute
use strict;
use warnings;
use Term::ReadKey;
use Env qw(HOME VISUAL);
# Define variables
my $passfile = "$HOME/pass.asc";
my $plainfile = "$HOME/pass";
my $pgpkey_id = "0x0631D08B";
if ( -e "$passfile" ) {
print "Enter your password: ";
ReadMode 2;
my $password = ReadLine 0;
chomp $password;
ReadMode 0;
print "\n";
system "pgp $passfile -o $plainfile -z $password";
system "$VISUAL $plainfile";
system "pgp -sew $plainfile $pgpkey_id -z $password";
} else {
die "$passfile doesn't exist!";
}
if ( -e "$plainfile~" ) && ( -e "$passfile" ) {
system "rm $plainfile~";
}