diff options
-rwxr-xr-x | configure | 4 | ||||
-rw-r--r-- | make/opensslcert.pm | 32 |
2 files changed, 34 insertions, 2 deletions
@@ -25,6 +25,7 @@ use Getopt::Long; use make::utilities; use make::configure; use make::gnutlscert; +use make::opensslcert; GetOptions ( 'enable-gnutls' => \$opt_use_gnutls, @@ -744,8 +745,7 @@ if ($config{USE_GNUTLS} eq "y") { * Generating the certificates may take some time, go grab a * * coffee, or something. * *************************************************************\n\n"; - system("openssl req -x509 -nodes -newkey rsa:1024 -keyout key.pem -out cert.pem"); - system("openssl dhparam -out dhparams.pem 1024"); + make_openssl_cert(); print "\nCertificate generation complete, copying to config directory... "; system("mv key.pem $config{CONFIG_DIR}/key.pem"); system("mv cert.pem $config{CONFIG_DIR}/cert.pem"); diff --git a/make/opensslcert.pm b/make/opensslcert.pm new file mode 100644 index 000000000..2caad06cd --- /dev/null +++ b/make/opensslcert.pm @@ -0,0 +1,32 @@ +package make::opensslcert; + +use Exporter 'import'; +use make::configure; +@EXPORT = qw(make_openssl_cert); + + +sub make_openssl_cert() +{ + open (FH, ">openssl.template"); + my $org = promptstring_s("Please enter the organization name", "My IRC Network"); + my $unit = promptstring_s("Please enter the unit Name", "Server Admins"); + my $state = promptstring_s("Please enter your state or locality name", "Alaska"); + my $country = promptstring_s("Please enter your country (two letter code)", "US"); + my $city = promptstring_s("Please enter your city", "Factory Town"); + my $email = promptstring_s("Please enter a contact email address", "oompa\@loompa.com"); + print FH <<__END__; +$country +$state +$city +$org +$unit +$email +firstname.lastname@yourcompany.com +__END__ +close(FH); +system("cat openssl.template | openssl req -x509 -nodes -newkey rsa:1024 -keyout key.pem -out cert.pem 2>/dev/null"); +system("openssl dhparam -out dhparams.pem 1024"); +unlink("openssl.template"); +} + +1; |