Viewing file: save_user.cgi (1.64 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl # save_user.cgi # Save other user options
require './spam-lib.pl'; &error_setup($text{'user_err'}); &ReadParse(); &set_config_file_in(\%in); &can_use_check("user"); &execute_before("user"); &lock_spam_files(); $conf = &get_config();
if ($in{'dns'} == 1) { &save_directives($conf, 'dns_available', [ 'yes' ], 1); } elsif ($in{'dns'} == 0) { &save_directives($conf, 'dns_available', [ 'no' ], 1); } elsif ($in{'dns'} == -1) { &save_directives($conf, 'dns_available', [ ], 1); } else { local $test = "test"; if ($in{'dnslist'}) { $test .= ": $in{'dnslist'}"; } if ($config{'defaults'} && !$in{'dnslist'}) { &save_directives($conf, 'dns_available', [ ]); } else { &save_directives($conf, 'dns_available', [ $test ], 1); } }
&parse_opt($conf, "razor_timeout", \&check_timeout);
&parse_opt($conf, "dcc_path", \&check_path); &parse_opt($conf, "dcc_body_max", \&check_max); &parse_opt($conf, "dcc_timeout", \&check_timeout); &parse_opt($conf, "dcc_fuz1_max", \&check_max); &parse_opt($conf, "dcc_fuz2_max", \&check_max); if (!&version_atleast(3)) { &parse_yes_no($conf, "dcc_add_header"); }
&parse_opt($conf, "pyzor_path", \&check_path); &parse_opt($conf, "pyzor_body_max", \&check_max); &parse_opt($conf, "pyzor_timeout", \&check_timeout); &parse_yes_no($conf, "pyzor_add_header");
&flush_file_lines(); &unlock_spam_files(); &execute_after("user"); &webmin_log("user"); &redirect($redirect_url);
sub check_timeout { $_[0] =~ /^\d+$/ || &error(&text('user_etimeout', $_[0])); }
sub check_path { $_[0] =~ /^\// && -r $_[0] || &error(&text('user_epath', $_[0])); }
sub check_max { $_[0] =~ /^\d+$/ || &error(&text('user_emax', $_[0])); }
|