| Server IP : 39.108.156.168 / Your IP : 216.73.216.104 Web Server : nginx/1.24.0 System : Linux e2.ksyuki.com 6.11.0-25-generic #25~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 17:20:50 UTC 2 x86_64 User : root ( 0) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/sendmail/ |
Upload File : |
#!/usr/bin/perl
# save_masq.cgi
# Save domain masquerading
require './sendmail-lib.pl';
&ReadParseMime();
$access{'masq'} || &error($text{'masq_ecannot'});
&error_setup($text{'masq_err'});
&lock_file($config{'sendmail_cf'});
$conf = &get_sendmailcf();
$in{'masq'} =~ /^[A-z0-9\-\.]*$/ ||
&error(&text('masq_edomain', $in{'masq'}));
@mlist = split(/\s+/, $in{'mlist'});
foreach $m (@mlist) {
$m =~ /^[A-z0-9\-\.]+$/ ||
&error(&text('masq_ehost', $m));
&check_ipaddress($m) &&
&error(&text('masq_eip', $m));
}
@mlist = &unique(@mlist);
@nlist = split(/\s+/, $in{'nlist'});
foreach $n (@nlist) {
$n =~ /^[A-z0-9\-\.]+$/ ||
&error(&text('masq_ehost', $n));
&check_ipaddress($n) &&
&error(&text('masq_eip', $n));
}
@nlist = &unique(@nlist);
# Update the DM directive (if there is one)
foreach $d (&find_type("D", $conf)) {
if ($d->{'value'} =~ /^M/) { push(@dmconf, $d); }
}
&save_directives($conf, \@dmconf,
[ { 'type' => 'D', 'values' => [ "M$in{'masq'}" ] } ]);
# Update domains to masquerade, and not to
&save_file_or_config($conf, "M", \@mlist);
&save_file_or_config($conf, "N", \@nlist);
&flush_file_lines();
&unlock_file($config{'sendmail_cf'});
&restart_sendmail();
&webmin_log("masq");
&redirect("");