| Server IP : 127.0.0.1 / Your IP : 216.73.216.109 Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10 System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64 User : SERVERWEB ( 0) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/cygwin64/home/SERVERWEB/webmin-2.105/sendmail/ |
Upload File : |
#!/usr/bin/perl
# save_domain.cgi
# Save, create or delete an address mapping
require './sendmail-lib.pl';
require './domain-lib.pl';
&ReadParse();
$access{'domains'} || &error($text{'dsave_ecannot'});
$conf = &get_sendmailcf();
$dfile = &domains_file($conf);
&lock_file($dfile);
($ddbm, $ddbmtype) = &domains_dbm($conf);
@doms = &list_domains($dfile);
if (!$in{'new'}) { $d = $doms[$in{'num'}]; }
foreach $du (@doms) { $already{$du->{'from'}}++; }
if ($in{'delete'}) {
# delete some mapping
$logd = $d;
&delete_domain($d, $dfile, $ddbm, $ddbmtype);
}
else {
# Saving or creating.. check inputs
&error_setup($text{'dsave_err'});
$in{'from'} =~ /^[A-z0-9\.\-]+$/ ||
&error(&text('dsave_edomain', $in{'from'}));
$in{'to'} =~ /^[A-z0-9\.\-]+$/ ||
&error(&text('dsave_edomain', $in{'to'}));
if ($in{'new'} || lc($in{'from'}) ne lc($d->{'from'})) {
($same) = grep { lc($_->{'from'}) eq lc($in{'from'}) }
@doms;
$same && &error(&text('dsave_ealready', $in{'from'}));
}
$newd{'from'} = $in{'from'};
$newd{'to'} = $in{'to'};
$newd{'cmt'} = $in{'cmt'};
if ($in{'new'}) { &create_domain(\%newd, $dfile, $ddbm, $ddbmtype); }
else { &modify_domain($d, \%newd, $dfile, $ddbm, $ddbmtype); }
$logd = \%newd;
}
&unlock_file($dfile);
&webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify',
"domain", $logd->{'from'}, $logd);
&redirect("list_domains.cgi");