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/fetchmail/ |
files >> //usr/libexec/webmin/fetchmail/check.cgi |
#!/usr/bin/perl # check.cgi # Run a fetchmail config file require './fetchmail-lib.pl'; &ReadParse(); if ($config{'config_file'}) { $file = $config{'config_file'}; } else { &can_edit_user($in{'user'}) || &error($text{'poll_ecannot'}); @uinfo = getpwnam($in{'user'}); $file = "$uinfo[7]/.fetchmailrc"; $uheader = &text('poll_foruser', "<tt>$in{'user'}</tt>"); } &ui_print_unbuffered_header($uheader, $text{'check_title'}, ""); $cmd = "$config{'fetchmail_path'} -v -f '$file'"; if ($config{'mda_command'}) { $cmd .= " -m '$config{'mda_command'}'"; } if (defined($in{'idx'})) { @conf = &parse_config_file($file); $poll = $conf[$in{'idx'}]; $cmd .= " $poll->{'poll'}"; } print &text('check_exec', "<tt>$cmd</tt>"),"<p>\n"; print "<pre>"; if ($< == 0) { # For webmin, switch to the user if ($in{'user'} ne 'root') { $cmd = &command_as_user($in{'user'}, 0, $cmd) } open(CMD, "$cmd 2>&1 |"); &additional_log("exec", undef, "su '$in{'user'}' -c '$cmd'"); } else { # For usermin, which has already switched open(CMD, "$cmd 2>&1 |"); } while(<CMD>) { print &html_escape($_); } close(CMD); print "</pre>\n"; if ($? > 256) { print "<b>$text{'check_failed'}</b> <p>\n"; } else { print "$text{'check_ok'} <p>\n"; } &webmin_log("check", defined($in{'idx'}) ? "server" : "file", $config{'config_file'} ? $file : $in{'user'}, $poll); if (!$fetchmail_config && $config{'view_mode'}) { &ui_print_footer("edit_user.cgi?user=$in{'user'}", $text{'user_return'}, "", $text{'index_return'}); } else { &ui_print_footer("", $text{'index_return'}); }y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`