X7ROOT File Manager
Current Path:
/usr/libexec/usermin/fetchmail
usr
/
libexec
/
usermin
/
fetchmail
/
📁
..
📄
CHANGELOG
(298 B)
📄
check.cgi
(1.54 KB)
📄
check.pl
(2.47 KB)
📄
config
(49 B)
📄
config.info
(218 B)
📄
config.info.ca
(249 B)
📄
config.info.cs
(103 B)
📄
config.info.de
(119 B)
📄
config.info.nl
(238 B)
📄
config.info.no
(231 B)
📄
defaultacl
(7 B)
📄
edit_cron.cgi
(1.95 KB)
📄
edit_global.cgi
(2.72 KB)
📄
edit_poll.cgi
(7.16 KB)
📄
fetchmail-lib.pl
(8.02 KB)
📁
images
📄
index.cgi
(1.57 KB)
📁
lang
📄
module.info
(198 B)
📄
module.info.af
(0 B)
📄
module.info.af.auto
(165 B)
📄
module.info.ar
(0 B)
📄
module.info.ar.auto
(212 B)
📄
module.info.be
(0 B)
📄
module.info.be.auto
(255 B)
📄
module.info.bg
(0 B)
📄
module.info.bg.auto
(242 B)
📄
module.info.ca
(39 B)
📄
module.info.ca.auto
(147 B)
📄
module.info.cs
(39 B)
📄
module.info.cs.auto
(147 B)
📄
module.info.da
(0 B)
📄
module.info.da.auto
(166 B)
📄
module.info.de
(152 B)
📄
module.info.el
(0 B)
📄
module.info.el.auto
(357 B)
📄
module.info.es
(0 B)
📄
module.info.es.auto
(194 B)
📄
module.info.eu
(0 B)
📄
module.info.eu.auto
(188 B)
📄
module.info.fa
(0 B)
📄
module.info.fa.auto
(230 B)
📄
module.info.fi
(0 B)
📄
module.info.fi.auto
(165 B)
📄
module.info.fr
(0 B)
📄
module.info.fr.auto
(187 B)
📄
module.info.he
(0 B)
📄
module.info.he.auto
(193 B)
📄
module.info.hr
(0 B)
📄
module.info.hr.auto
(183 B)
📄
module.info.hu
(42 B)
📄
module.info.hu.auto
(150 B)
📄
module.info.it
(0 B)
📄
module.info.it.auto
(173 B)
📄
module.info.ja
(30 B)
📄
module.info.ja.auto
(186 B)
📄
module.info.ko
(0 B)
📄
module.info.ko.auto
(192 B)
📄
module.info.lt
(0 B)
📄
module.info.lt.auto
(200 B)
📄
module.info.lv
(0 B)
📄
module.info.lv.auto
(168 B)
📄
module.info.ms
(0 B)
📄
module.info.ms.auto
(166 B)
📄
module.info.mt
(0 B)
📄
module.info.mt.auto
(165 B)
📄
module.info.nl
(34 B)
📄
module.info.no
(30 B)
📄
module.info.no.auto
(136 B)
📄
module.info.pl
(38 B)
📄
module.info.pl.auto
(138 B)
📄
module.info.pt
(0 B)
📄
module.info.pt.auto
(176 B)
📄
module.info.pt_BR
(0 B)
📄
module.info.pt_BR.auto
(185 B)
📄
module.info.ro
(0 B)
📄
module.info.ro.auto
(170 B)
📄
module.info.ru
(0 B)
📄
module.info.ru.auto
(242 B)
📄
module.info.sk
(0 B)
📄
module.info.sk.auto
(184 B)
📄
module.info.sl
(0 B)
📄
module.info.sl.auto
(170 B)
📄
module.info.sv
(0 B)
📄
module.info.sv.auto
(179 B)
📄
module.info.th
(0 B)
📄
module.info.th.auto
(306 B)
📄
module.info.tr
(0 B)
📄
module.info.tr.auto
(172 B)
📄
module.info.uk
(0 B)
📄
module.info.uk.auto
(282 B)
📄
module.info.ur
(0 B)
📄
module.info.ur.auto
(264 B)
📄
module.info.vi
(0 B)
📄
module.info.vi.auto
(196 B)
📄
module.info.zh
(0 B)
📄
module.info.zh.auto
(150 B)
📄
module.info.zh_TW
(0 B)
📄
module.info.zh_TW.auto
(159 B)
📄
save_cron.cgi
(1.73 KB)
📄
save_global.cgi
(1.53 KB)
📄
save_poll.cgi
(3.33 KB)
📄
start.cgi
(1015 B)
📄
stop.cgi
(730 B)
📁
ulang
Editing: save_poll.cgi
#!/usr/bin/perl # save_poll.cgi # Update, create or delete a server to poll require './fetchmail-lib.pl'; &ReadParse(); &error_setup($text{'poll_err'}); 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"; } @conf = &parse_config_file($file); if (!$in{'new'}) { $poll = $conf[$in{'idx'}]; } &lock_file($file); if ($in{'adduser'}) { # Go back to the edit form &redirect("edit_poll.cgi?file=$file&idx=$in{'idx'}&adduser=1&user=$in{'user'}"); exit; } elsif ($in{'check'}) { # Go to the mail checking CGI &redirect("check.cgi?file=$file&idx=$in{'idx'}&adduser=1&user=$in{'user'}"); exit; } elsif ($in{'delete'}) { # Just delete the poll &delete_poll($poll, $file); } else { # Validate poll inputs $in{'poll'} =~ /^\S+$/ || &error($text{'poll_epoll'}); $in{'via_def'} || &check_host($in{'via'}) || &error($text{'poll_evia'}); !$in{'via_def'} || &check_host($in{'poll'}) || &error($text{'poll_epoll'}); $in{'port_def'} || $in{'port'} =~ /^\d+$/ || &error($text{'poll_eport'}); if (!$in{'interface_def'}) { $in{'interface'} =~ /^\S+$/ || &error($text{'poll_einterface'}); &check_ipaddress($in{'interface_net'}) || &error($text{'poll_enet'}); &check_ipaddress($in{'interface_mask'}) || !$in{'interface_mask'} || &error($text{'poll_emask'}); } # Create the poll structure $poll->{'poll'} = $in{'poll'}; $poll->{'skip'} = $in{'skip'}; $poll->{'via'} = $in{'via_def'} ? undef : $in{'via'}; $poll->{'proto'} = $in{'proto'}; $poll->{'auth'} = $in{'auth'}; $poll->{'port'} = $in{'port_def'} ? undef : $in{'port'}; if ($in{'interface_def'}) { delete($poll->{'interface'}); } else { local @interface = ( $in{'interface'}, $in{'interface_net'} ); push(@interface, $in{'interface_mask'}) if ($in{'interface_mask'}); $poll->{'interface'} = join("/", @interface); } # Validate user inputs for($i=0; defined($in{"user_$i"}); $i++) { $user = $poll->{'users'}->[$i]; next if (!$in{"user_$i"}); $in{"user_$i"} =~ /^\S*$/ || &error($text{'poll_euser'}); $user->{'user'} = $in{"user_$i"}; $user->{'pass'} = $in{"pass_$i"}; local @is = split(/\s+/, $in{"is_$i"}); $user->{'is'} = \@is; $user->{'keep'} = $in{"keep_$i"}; $user->{'fetchall'} = $in{"fetchall_$i"}; if ($in{"keep_$i"} == 1 && $in{"fetchall_$i"} == 1) { &error($text{'poll_eboth'}); } $user->{'ssl'} = $in{"ssl_$i"}; $user->{'preconnect'} = $in{"preconnect_$i"}; $user->{'postconnect'} = $in{"postconnect_$i"}; push(@users, $user); } $poll->{'users'} = \@users; if ($in{'new'}) { &create_poll($poll, $file); if ($in{'user'} && $< == 0) { local @uinfo = getpwnam($in{'user'}); &system_logged("chown $uinfo[2]:$uinfo[3] $file"); } &system_logged("chmod 700 $file"); } else { &modify_poll($poll, $file); } } &unlock_file($file); &webmin_log($in{'new'} ? 'create' : $in{'delete'} ? 'delete' : 'modify', 'poll', $poll->{'poll'}, $config{'config_file'} ? { 'file' => $file } : { 'user' => $in{'user'} } ); &redirect(!$fetchmail_config && $config{'view_mode'} ? "edit_user.cgi?user=$in{'user'}" : ""); sub check_host { return 1 if (&to_ipaddress($_[0]) || &to_ip6address($_[0])); return 0 if (&to_ipaddress("www.webmin.com")); # only fail if we are online return 1; }
Upload File
Create Folder