| Server IP : 104.21.25.180 / Your IP : 104.23.197.123 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/virtual-server/ |
Upload File : |
#!/usr/bin/perl
# Set the TTL on all records in a domain
require './virtual-server-lib.pl';
&error_setup($text{'transfer_err2'});
&ReadParse();
my $d = &get_domain($in{'dom'});
$d || &error($text{'edit_egone'});
&can_edit_domain($d) || &error($text{'edit_ecannot'});
&can_edit_records($d) || &error($text{'records_ecannot'});
$in{'newttl'} =~ /^\d+$/ || &error($text{'transfer_enewttl'});
# Update default TTL
&obtain_lock_dns($d);
&pre_records_change($d);
my ($recs, $file) = &get_domain_dns_records_and_file($d);
my ($oldttl) = grep { $_->{'defttl'} } @$recs;
if ($oldttl) {
$oldttl->{'defttl'} = $in{'newttl'};
&modify_dns_record($recs, $file, $oldttl);
}
else {
my $newttl = { 'defttl' => $in{'newttl'} };
&create_dns_record($recs, $file, $newttl);
}
# Update records
foreach my $r (@$recs) {
if ($r->{'ttl'} && $r->{'type'} ne 'SOA' && !&is_dnssec_record($r)) {
$r->{'ttl'} = $in{'newttl'};
&modify_dns_record($recs, $file, $r);
}
}
&post_records_change($d, $recs, $file);
&reload_bind_records($d);
$d->{'ttl_change_time'} = time();
$d->{'ttl_change_from'} = $in{'oldttl'};
&save_domain($d);
&release_lock_dns($d);
&webmin_log("fixttl", "domain", $d->{'dom'});
&redirect("transfer_form.cgi?dom=$in{'dom'}");