%PDF- %PDF-
Direktori : /usr/share/webmin/webmin/ |
Current File : //usr/share/webmin/webmin/postinstall.pl |
require 'webmin-lib.pl'; sub module_install { # Update cache of which module's underlying servers are installed &build_installed_modules(); # Pick a random update time if (!defined($config{'uphour'}) || $config{'uphour'} == 3 && $config{'upmins'} == 0 && !$config{'update'}) { &seed_random(); $config{'uphour'} = int(rand()*24); $config{'upmins'} = int(rand()*60); &save_module_config(); } # Figure out the preferred cipher mode &lock_file("$config_directory/miniserv.conf"); my %miniserv; &get_miniserv_config(\%miniserv); if (!defined($miniserv{'cipher_list_def'})) { # No mode set, so guess based on ciphers my $clist = $miniserv{'ssl_cipher_list'}; my $cmode = !$clist ? 1 : $clist eq $strong_ssl_ciphers ? 2 : $clist eq $pfs_ssl_ciphers ? 3 : 0; $miniserv{'cipher_list_def'} = $cmode; } elsif ($miniserv{'cipher_list_def'} == 2 || $miniserv{'cipher_list_def'} == 3) { # Sync ciphers with Webmin's preferred list $miniserv{'ssl_cipher_list'} = $miniserv{'cipher_list_def'} == 2 ? $strong_ssl_ciphers : $pfs_ssl_ciphers; } # If this is the first install, enable recording of logins by default if (!-r $first_install_file || $miniserv{'login_script'} eq $record_login_cmd) { &foreign_require("cron"); &cron::create_wrapper($record_login_cmd, "", "record-login.pl"); &cron::create_wrapper($record_logout_cmd, "", "record-logout.pl"); &cron::create_wrapper($record_failed_cmd, "", "record-failed.pl"); $miniserv{'login_script'} = $record_login_cmd; $miniserv{'logout_script'} = $record_logout_cmd; $miniserv{'failed_script'} = $record_failed_cmd; } &put_miniserv_config(\%miniserv); &unlock_file("$config_directory/miniserv.conf"); # Record the version of Webmin at first install if (!-r $first_install_file) { my %first; $first{'version'} = &get_webmin_version(); &write_file($first_install_file, \%first); } }