| Server IP : 172.67.134.114 / Your IP : 162.159.115.42 Web Server : Apache/2.4.37 System : Linux almalinux.duckdns.org 4.18.0-553.111.1.el8_10.x86_64 #1 SMP Sun Mar 8 20:06:07 EDT 2026 x86_64 User : ricodeal ( 1046) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/libexec/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("");