Skip to content

Commit a5c5805

Browse files
committed
Allow CAA records to be created and edited https://forum.virtualmin.com/t/caa-support-dns-records/129902
1 parent 8e9a78d commit a5c5805

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed

Diff for: edit_record.cgi

+5
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,11 @@ else {
127127
$field = &ui_textbox("value_$i", $r->{'values'}->[$i],
128128
$vals[$i]->{'size'});
129129
}
130+
elsif ($vals[$i]->{'opts'}) {
131+
$field = &ui_select("value_$i", $r->{'values'}->[$i],
132+
$vals[$i]->{'opts'}, 1, 0,
133+
$in{'type'} ? 0 : 1);
134+
}
130135
else {
131136
$field = &ui_textarea("value_$i", $r->{'values'}->[$i],
132137
$vals[$i]->{'height'},

Diff for: feature-dns.pl

+23-1
Original file line numberDiff line numberDiff line change
@@ -4457,6 +4457,28 @@ sub list_dns_record_types
44574457
},
44584458
],
44594459
},
4460+
{ 'type' => 'CAA',
4461+
'desc' => $text{'records_typecaa'},
4462+
'domain' => 1,
4463+
'create' => 1,
4464+
'values' => [ { 'desc' => $text{'records_valuecaa0'},
4465+
'opts' => [ [ 0, $text{'records_caanon'} ],
4466+
[ 1, $text{'records_caacrit'} ] ],
4467+
'dot' => 0,
4468+
},
4469+
{ 'desc' => $text{'records_valuecaa1'},
4470+
'opts' => [ [ 'issue', $text{'records_caaissue'} ],
4471+
[ 'issuewild', $text{'records_caaissuewild'} ],
4472+
[ 'iodef', $text{'records_caaiodef'} ] ],
4473+
'dot' => 0,
4474+
},
4475+
{ 'desc' => $text{'records_valuecaa2'},
4476+
'size' => 60,
4477+
'regexp' => '^\S+$',
4478+
'dot' => 0,
4479+
},
4480+
],
4481+
},
44604482
{ 'type' => 'PTR',
44614483
'desc' => $text{'records_typeptr'},
44624484
'domain' => 0,
@@ -5077,7 +5099,7 @@ sub filter_generated_dns_records
50775099
my ($d, $recs) = @_;
50785100
my @rv;
50795101
foreach my $r (@$recs) {
5080-
next if ($r->{'type'} =~ /^(CAA|TLSA|SSHFP)$/);
5102+
next if ($r->{'type'} =~ /^(TLSA|SSHFP)$/);
50815103
push(@rv, $r);
50825104
}
50835105
return \@rv;

Diff for: lang/en

+9
Original file line numberDiff line numberDiff line change
@@ -7442,6 +7442,15 @@ records_valuetxt=Text record
74427442
records_valuespf=Sender permitted from specification
74437443
records_typesoa=Start Of Domain
74447444
records_typespf=Sender Permitted From
7445+
records_typecaa=Certificate Authority
7446+
records_valuecaa0=Flag
7447+
records_valuecaa1=Tag
7448+
records_valuecaa2=CA domain
7449+
records_caanon=Non-critical
7450+
records_caacrit=Critical
7451+
records_caaissue=Allow certs for domain
7452+
records_caaissuewild=Allow wildcard certs for domain
7453+
records_caaiodef=URL for reporting issues
74457454
records_typedefttl=Default Cache Time
74467455
records_typegenerate=Record Generator
74477456
records_typeptr=Reverse Address

0 commit comments

Comments
 (0)