| Server IP : 182.53.201.61 / Your IP : 216.73.217.175 Web Server : Apache/2.2.15 (Fedora) System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686 User : apache ( 48) PHP Version : 5.3.3 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/libexec/webmin/usermin/ |
Upload File : |
#!/usr/bin/perl
# Save, create or delete an IP-specific SSL key
require './usermin-lib.pl';
&ReadParse();
&get_usermin_miniserv_config(\%miniserv);
@ipkeys = &webmin::get_ipkeys(\%miniserv);
if (!$in{'new'}) {
$ipkey = $ipkeys[$in{'idx'}];
}
else {
$ipkey = { };
}
if ($in{'delete'}) {
# Just remove this entry
splice(@ipkeys, $in{'idx'}, 1);
}
else {
# Validate inputs
&error_setup($text{'ipkey_err'});
@ips = split(/\s+/, $in{'ips'});
foreach $i (@ips) {
&check_ipaddress($i) ||
&error(&text('ipkey_eip', $i));
}
@ips || &error(&text('ipkey_eips'));
$ipkey->{'ips'} = \@ips;
&webmin::validate_key_cert($in{'key'}, $in{'cert_def'} ? undef : $in{'cert'});
$ipkey->{'key'} = $in{'key'};
$ipkey->{'cert'} = $in{'cert_def'} ? undef : $in{'cert'};
if ($in{'extracas_mode'} == 0) {
delete($ipkey->{'extracas'});
}
elsif ($in{'extracas_mode'} == 2) {
$ipkey->{'extracas'} = 'none';
}
else {
@files = split(/\s+/, $in{'extracas'});
@files || &error($text{'ipkey_eextracas'});
foreach $f (@files) {
-r $f || &error(&text('ipkey_eextraca', $f));
}
$ipkey->{'extracas'} = join(' ', @files);
}
# Save or add
if ($in{'new'}) {
push(@ipkeys, $ipkey);
}
}
&webmin::save_ipkeys(\%miniserv, \@ipkeys);
&lock_file($usermin_miniserv_config);
&put_usermin_miniserv_config(\%miniserv);
&unlock_file($usermin_miniserv_config);
&restart_usermin_miniserv();
&webmin_log("ipkey");
&redirect("edit_ssl.cgi?mode=ips");