mirror of
https://github.com/webmin/webmin.git
synced 2025-07-20 16:48:46 +00:00
60 lines
1.8 KiB
Perl
Executable File
60 lines
1.8 KiB
Perl
Executable File
#!/usr/local/bin/perl
|
|
# Show password quality and change restrictions
|
|
|
|
use strict;
|
|
use warnings;
|
|
no warnings 'redefine';
|
|
no warnings 'uninitialized';
|
|
require './acl-lib.pl';
|
|
our (%in, %text, %config, %access);
|
|
$access{'pass'} || &error($text{'pass_ecannot'});
|
|
&ui_print_header(undef, $text{'pass_title'}, "");
|
|
|
|
my %miniserv;
|
|
&get_miniserv_config(\%miniserv);
|
|
|
|
print &ui_form_start("save_pass.cgi");
|
|
print &ui_table_start($text{'pass_header'}, undef, 2);
|
|
|
|
# Minimum password size
|
|
print &ui_table_row($text{'pass_minsize'},
|
|
&ui_opt_textbox("minsize", $miniserv{'pass_minsize'}, 5,
|
|
$text{'pass_nominsize'})." ".$text{'edit_chars'});
|
|
|
|
# Regexps password must match
|
|
print &ui_table_row($text{'pass_regexps'},
|
|
&ui_textarea("regexps",
|
|
join("\n", split(/\t+/, $miniserv{'pass_regexps'})), 5, 60));
|
|
|
|
# Human-readable description of regexp
|
|
print &ui_table_row($text{'pass_regdesc'},
|
|
&ui_textbox("regdesc", $miniserv{'pass_regdesc'}, 60));
|
|
|
|
# Days before forced change
|
|
print &ui_table_row($text{'pass_maxdays'},
|
|
&ui_opt_textbox("maxdays", $miniserv{'pass_maxdays'}, 5,
|
|
$text{'pass_nomaxdays'})." ".$text{'pass_days'});
|
|
|
|
# Days before lockout
|
|
print &ui_table_row($text{'pass_lockdays'},
|
|
&ui_opt_textbox("lockdays", $miniserv{'pass_lockdays'}, 5,
|
|
$text{'pass_nolockdays'})." ".$text{'pass_days'});
|
|
|
|
# Disallow use of username
|
|
print &ui_table_row($text{'pass_nouser'},
|
|
&ui_yesno_radio("nouser", $miniserv{'pass_nouser'}));
|
|
|
|
# Disallow dictionary words
|
|
print &ui_table_row($text{'pass_nodict'},
|
|
&ui_yesno_radio("nodict", $miniserv{'pass_nodict'}));
|
|
|
|
# Number of old passwords to reject
|
|
print &ui_table_row($text{'pass_oldblock'},
|
|
&ui_opt_textbox("oldblock", $miniserv{'pass_oldblock'}, 5,
|
|
$text{'pass_nooldblock'})." ".$text{'pass_pass'});
|
|
|
|
print &ui_table_end();
|
|
print &ui_form_end([ [ undef, $text{'save'} ] ]);
|
|
|
|
&ui_print_footer("", $text{'index_return'});
|