php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /usr/libexec/webmin/spam/ |
files >> //usr/libexec/webmin/spam/save_db.cgi |
#!/usr/bin/perl # Save LDAP and SQL database options require './spam-lib.pl'; &error_setup($text{'db_err'}); &ReadParse(); &set_config_file_in(\%in); &can_use_check("db"); &execute_before("db"); &lock_spam_files(); $conf = &get_config(); # Parse backend DSN if ($in{'mode'} == 0) { # Files only $dsn = undef; } elsif ($in{'mode'} == 1) { # Database of some type &to_ipaddress($in{'dbhost'}) || &error($text{'db_edbhost'}); $in{'dbdb'} =~ /^[a-z0-9\.\-\_]+$/ || &error($text{'db_edbdb'}); $in{'dbport_def'} || $in{'dbport'} =~ /^\d+$/ || &error($text{'db_edbport'}); $dsn = join(":", "DBI", $in{'dbdriver'}, $in{'dbdb'}, $in{'dbhost'}); $dsn .= ":".$in{'dbport'} if (!$in{'dbport_def'}); } elsif ($in{'mode'} == 3) { # LDAP &to_ipaddress($in{'ldaphost'}) || &to_ip6address($in{'ldaphost'}) || &error($text{'db_eldaphost'}); $in{'ldapport_def'} || $in{'ldapport'} =~ /^\d+$/ || &error($text{'db_eldapport'}); $in{'ldapdn'} =~ /^\S+$/ || &error($text{'db_eldapdn'}); $in{'ldapattr'} =~ /^\S+$/ || &error($text{'db_eldapattr'}); $in{'ldapuid'} =~ /^\S+$/ || &error($text{'db_eldapuid'}); $dsn = "ldap://".$in{'ldaphost'}. ($in{'ldapport_def'} ? "" : ":".$in{'ldapport'})."/". $in{'ldapdn'}."?".$in{'ldapattr'}."?".$in{'ldapscope'}."?". $in{'ldapuid'}."=__USERNAME__"; } else { # Other DSN $in{'dsn'} =~ /\S/ || &error($text{'db_edsn'}); $dsn = $in{'dsn'}; } &save_directives($conf, "user_scores_dsn", [ $dsn ], 1); # Parse username and password &parse_opt($conf, "user_scores_sql_username", \&username_check); &parse_opt($conf, "user_scores_sql_password"); &parse_opt($conf, "user_scores_ldap_username", \&username_check); &parse_opt($conf, "user_scores_ldap_password"); &flush_file_lines(); &unlock_spam_files(); &execute_after("db"); &webmin_log("db"); &redirect($redirect_url); sub username_check { return $_[0] =~ /^\S+$/ ? undef : $text{'db_eusername'}; }y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`