Render empty forwarders for forward zones
A forward zone with no forwarders now renders "forwarders { };", which
BIND accepts and treats as disabling forwarding for the zone.
This commit is contained in:
@@ -63,3 +63,23 @@ func TestBuildZoneConfigPrimaryNoNotifyTargets(t *testing.T) {
|
||||
t.Errorf("did not expect notify clauses with no targets: %q", cfg)
|
||||
}
|
||||
}
|
||||
|
||||
func TestBuildZoneConfigForwardForwarders(t *testing.T) {
|
||||
r := &BindZoneReconciler{}
|
||||
for _, tc := range []struct {
|
||||
fwd []string
|
||||
want string
|
||||
}{
|
||||
{nil, "{ type forward; forward only; forwarders { }; };"},
|
||||
{[]string{"198.18.19.15"}, "{ type forward; forward only; forwarders { 198.18.19.15; }; };"},
|
||||
} {
|
||||
zone := &bindv1alpha1.BindZone{Spec: bindv1alpha1.BindZoneSpec{ZoneName: "spamhaus.org", Type: bindv1alpha1.ZoneForward, Forwarders: tc.fwd}}
|
||||
cfg, err := r.buildZoneConfig(context.Background(), zone, "", nil, "")
|
||||
if err != nil {
|
||||
t.Fatalf("buildZoneConfig: %v", err)
|
||||
}
|
||||
if cfg != tc.want {
|
||||
t.Errorf("forwarders %v:\ngot %q\nwant %q", tc.fwd, cfg, tc.want)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user