| #!/usr/local/bin/perl5 |
| # |
| # This is only something I'm playing with, it does not work :-) |
| # |
| |
| use Tk; |
| |
| my $main=MainWindow->new(); |
| my $f=$main->Frame(-relief => "ridge", -borderwidth => 2); |
| $f->pack(-fill => 'x'); |
| |
| my $ff=$f->Frame; |
| $ff->pack(-fill => 'x'); |
| my $l=$ff->Label(-text => "TkCA - SSLeay", |
| -relief => "ridge", -borderwidth => 2); |
| $l->pack(-fill => 'x', -ipady => 5); |
| |
| my $l=$ff->Button(-text => "Certify"); |
| $l->pack(-fill => 'x', -ipady => 5); |
| |
| my $l=$ff->Button(-text => "Review"); |
| $l->pack(-fill => 'x', -ipady => 5); |
| |
| my $l=$ff->Button(-text => "Revoke"); |
| $l->pack(-fill => 'x', -ipady => 5); |
| |
| my $l=$ff->Button(-text => "Generate CRL"); |
| $l->pack(-fill => 'x', -ipady => 5); |
| |
| my($db)=&load_db("demoCA/index.txt"); |
| |
| MainLoop; |
| |
| sub load_db |
| { |
| my(%ret); |
| my($file)=@_; |
| my(*IN); |
| my(%db_serial,%db_name,@f,@db_s); |
| |
| $ret{'serial'}=\%db_serial; |
| $ret{'name'}=\%db_name; |
| |
| open(IN,"<$file") || die "unable to open $file:$!\n"; |
| while (<IN>) |
| { |
| chop; |
| s/([^\\])\t/\1\t\t/g; |
| my(@f)=split(/\t\t/); |
| die "wrong number of fields in $file, line $.\n" |
| if ($#f != 5); |
| |
| my(%f); |
| $f{'type'}=$f[0]; |
| $f{'exp'}=$f[1]; |
| $f{'rev'}=$f[2]; |
| $f{'serial'}=$f[3]; |
| $f{'file'}=$f[4]; |
| $f{'name'}=$f[5]; |
| die "serial number $f{'serial'} appears twice (line $.)\n" |
| if (defined($db{$f{'serial'}})) |
| $db_serial{$f{'serial'}}=\%f; |
| $db_name{$f{'name'}}.=$f{'serial'}." "; |
| } |
| return \%ret; |
| } |