Blame lenses/tests/test_dns_zone.aug

Packit Service a2ae7a
module Test_Dns_Zone =
Packit Service a2ae7a
Packit Service a2ae7a
let lns = Dns_Zone.lns
Packit Service a2ae7a
Packit Service a2ae7a
(* RFC 1034 ยง6 *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
EDU.  IN SOA SRI-NIC.ARPA. HOSTMASTER.SRI-NIC.ARPA. (
Packit Service a2ae7a
                        870729 ;serial
Packit Service a2ae7a
                        1800 ;refresh every 30 minutes
Packit Service a2ae7a
                        300 ;retry every 5 minutes
Packit Service a2ae7a
                        604800 ;expire after a week
Packit Service a2ae7a
                        86400 ;minimum of a day
Packit Service a2ae7a
                        )
Packit Service a2ae7a
                NS SRI-NIC.ARPA.
Packit Service a2ae7a
                NS C.ISI.EDU.
Packit Service a2ae7a
Packit Service a2ae7a
UCI 172800 NS ICS.UCI
Packit Service a2ae7a
                172800 NS ROME.UCI
Packit Service a2ae7a
ICS.UCI 172800 A 192.5.19.1
Packit Service a2ae7a
ROME.UCI 172800 A 192.5.19.31
Packit Service a2ae7a
Packit Service a2ae7a
ISI 172800 NS VAXA.ISI
Packit Service a2ae7a
                172800 NS A.ISI
Packit Service a2ae7a
                172800 NS VENERA.ISI.EDU.
Packit Service a2ae7a
VAXA.ISI 172800 A 10.2.0.27
Packit Service a2ae7a
                172800 A 128.9.0.33
Packit Service a2ae7a
VENERA.ISI.EDU. 172800 A 10.1.0.52
Packit Service a2ae7a
                172800 A 128.9.0.32
Packit Service a2ae7a
A.ISI 172800 A 26.3.0.103
Packit Service a2ae7a
Packit Service a2ae7a
UDEL.EDU.  172800 NS LOUIE.UDEL.EDU.
Packit Service a2ae7a
                172800 NS UMN-REI-UC.ARPA.
Packit Service a2ae7a
LOUIE.UDEL.EDU. 172800 A 10.0.0.96
Packit Service a2ae7a
                172800 A 192.5.39.3
Packit Service a2ae7a
Packit Service a2ae7a
YALE.EDU.  172800 NS YALE.ARPA.
Packit Service a2ae7a
YALE.EDU.  172800 NS YALE-BULLDOG.ARPA.
Packit Service a2ae7a
Packit Service a2ae7a
MIT.EDU.  43200 NS XX.LCS.MIT.EDU.
Packit Service a2ae7a
                  43200 NS ACHILLES.MIT.EDU.
Packit Service a2ae7a
XX.LCS.MIT.EDU.  43200 A 10.0.0.44
Packit Service a2ae7a
ACHILLES.MIT.EDU. 43200 A 18.72.0.8
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "EDU."
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "SOA" }
Packit Service a2ae7a
      { "mname" = "SRI-NIC.ARPA." }
Packit Service a2ae7a
      { "rname" = "HOSTMASTER.SRI-NIC.ARPA." }
Packit Service a2ae7a
      { "serial" = "870729" }
Packit Service a2ae7a
      { "refresh" = "1800" }
Packit Service a2ae7a
      { "retry" = "300" }
Packit Service a2ae7a
      { "expiry" = "604800" }
Packit Service a2ae7a
      { "minimum" = "86400" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2" { "type" = "NS" } { "rdata" = "SRI-NIC.ARPA." } }
Packit Service a2ae7a
    { "3" { "type" = "NS" } { "rdata" = "C.ISI.EDU." } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "UCI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "ICS.UCI" } }
Packit Service a2ae7a
    { "2" { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "ROME.UCI" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "ICS.UCI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "192.5.19.1" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "ROME.UCI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "192.5.19.31" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "ISI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "VAXA.ISI" } }
Packit Service a2ae7a
    { "2" { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "A.ISI" } }
Packit Service a2ae7a
    { "3"
Packit Service a2ae7a
      { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "VENERA.ISI.EDU." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "VAXA.ISI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "10.2.0.27" } }
Packit Service a2ae7a
    { "2" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "128.9.0.33" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "VENERA.ISI.EDU."
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "10.1.0.52" } }
Packit Service a2ae7a
    { "2" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "128.9.0.32" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "A.ISI"
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "26.3.0.103" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "UDEL.EDU."
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "LOUIE.UDEL.EDU." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2"
Packit Service a2ae7a
      { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "UMN-REI-UC.ARPA." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "LOUIE.UDEL.EDU."
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "10.0.0.96" } }
Packit Service a2ae7a
    { "2" { "ttl" = "172800" } { "type" = "A" } { "rdata" = "192.5.39.3" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "YALE.EDU."
Packit Service a2ae7a
    { "1" { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "YALE.ARPA." } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "YALE.EDU."
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "ttl" = "172800" } { "type" = "NS" } { "rdata" = "YALE-BULLDOG.ARPA." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "MIT.EDU."
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "ttl" = "43200" } { "type" = "NS" } { "rdata" = "XX.LCS.MIT.EDU." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2"
Packit Service a2ae7a
      { "ttl" = "43200" } { "type" = "NS" } { "rdata" = "ACHILLES.MIT.EDU." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "XX.LCS.MIT.EDU."
Packit Service a2ae7a
    { "1" { "ttl" = "43200" } { "type" = "A" } { "rdata" = "10.0.0.44" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "ACHILLES.MIT.EDU."
Packit Service a2ae7a
    { "1" { "ttl" = "43200" } { "type" = "A" } { "rdata" = "18.72.0.8" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* RFC 1035 ยง5.3 *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
@   IN  SOA     VENERA      Action\.domains (
Packit Service a2ae7a
                                 20     ; SERIAL
Packit Service a2ae7a
                                 7200   ; REFRESH
Packit Service a2ae7a
                                 600    ; RETRY
Packit Service a2ae7a
                                 3600000; EXPIRE
Packit Service a2ae7a
                                 60)    ; MINIMUM
Packit Service a2ae7a
Packit Service a2ae7a
        NS      A.ISI.EDU.
Packit Service a2ae7a
        NS      VENERA
Packit Service a2ae7a
        NS      VAXA
Packit Service a2ae7a
        MX      10      VENERA
Packit Service a2ae7a
        MX      20      VAXA
Packit Service a2ae7a
Packit Service a2ae7a
A       A       26.3.0.103
Packit Service a2ae7a
Packit Service a2ae7a
VENERA  A       10.1.0.52
Packit Service a2ae7a
        A       128.9.0.32
Packit Service a2ae7a
Packit Service a2ae7a
VAXA    A       10.2.0.27
Packit Service a2ae7a
        A       128.9.0.33
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "@"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "SOA" }
Packit Service a2ae7a
      { "mname" = "VENERA" }
Packit Service a2ae7a
      { "rname" = "Action\\.domains" }
Packit Service a2ae7a
      { "serial" = "20" }
Packit Service a2ae7a
      { "refresh" = "7200" }
Packit Service a2ae7a
      { "retry" = "600" }
Packit Service a2ae7a
      { "expiry" = "3600000" }
Packit Service a2ae7a
      { "minimum" = "60" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2" { "type" = "NS" } { "rdata" = "A.ISI.EDU." } }
Packit Service a2ae7a
    { "3" { "type" = "NS" } { "rdata" = "VENERA" } }
Packit Service a2ae7a
    { "4" { "type" = "NS" } { "rdata" = "VAXA" } }
Packit Service a2ae7a
    { "5" { "type" = "MX" } { "priority" = "10" } { "exchange" = "VENERA" } }
Packit Service a2ae7a
    { "6" { "type" = "MX" } { "priority" = "20" } { "exchange" = "VAXA" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "A" { "1" { "type" = "A" } { "rdata" = "26.3.0.103" } } }
Packit Service a2ae7a
  { "VENERA"
Packit Service a2ae7a
    { "1" { "type" = "A" } { "rdata" = "10.1.0.52" } }
Packit Service a2ae7a
    { "2" { "type" = "A" } { "rdata" = "128.9.0.32" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "VAXA"
Packit Service a2ae7a
    { "1" { "type" = "A" } { "rdata" = "10.2.0.27" } }
Packit Service a2ae7a
    { "2" { "type" = "A" } { "rdata" = "128.9.0.33" } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* RFC 2782 *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN example.com.
Packit Service a2ae7a
@               SOA server.example.com. root.example.com. (
Packit Service a2ae7a
                    1995032001 3600 3600 604800 86400 )
Packit Service a2ae7a
                NS  server.example.com.
Packit Service a2ae7a
                NS  ns1.ip-provider.net.
Packit Service a2ae7a
                NS  ns2.ip-provider.net.
Packit Service a2ae7a
; foobar - use old-slow-box or new-fast-box if either is
Packit Service a2ae7a
; available, make three quarters of the logins go to
Packit Service a2ae7a
; new-fast-box.
Packit Service a2ae7a
_foobar._tcp    SRV 0 1 9 old-slow-box.example.com.
Packit Service a2ae7a
                 SRV 0 3 9 new-fast-box.example.com.
Packit Service a2ae7a
; if neither old-slow-box or new-fast-box is up, switch to
Packit Service a2ae7a
; using the sysdmin's box and the server
Packit Service a2ae7a
                 SRV 1 0 9 sysadmins-box.example.com.
Packit Service a2ae7a
                 SRV 1 0 9 server.example.com.
Packit Service a2ae7a
server           A   172.30.79.10
Packit Service a2ae7a
old-slow-box     A   172.30.79.11
Packit Service a2ae7a
sysadmins-box    A   172.30.79.12
Packit Service a2ae7a
new-fast-box     A   172.30.79.13
Packit Service a2ae7a
; NO other services are supported
Packit Service a2ae7a
*._tcp          SRV  0 0 0 .
Packit Service a2ae7a
*._udp          SRV  0 0 0 .
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "example.com." }
Packit Service a2ae7a
  { "@"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "type" = "SOA" }
Packit Service a2ae7a
      { "mname" = "server.example.com." }
Packit Service a2ae7a
      { "rname" = "root.example.com." }
Packit Service a2ae7a
      { "serial" = "1995032001" }
Packit Service a2ae7a
      { "refresh" = "3600" }
Packit Service a2ae7a
      { "retry" = "3600" }
Packit Service a2ae7a
      { "expiry" = "604800" }
Packit Service a2ae7a
      { "minimum" = "86400" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2" { "type" = "NS" } { "rdata" = "server.example.com." } }
Packit Service a2ae7a
    { "3" { "type" = "NS" } { "rdata" = "ns1.ip-provider.net." } }
Packit Service a2ae7a
    { "4" { "type" = "NS" } { "rdata" = "ns2.ip-provider.net." } }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "_foobar._tcp"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "0" }
Packit Service a2ae7a
      { "weight" = "1" }
Packit Service a2ae7a
      { "port" = "9" }
Packit Service a2ae7a
      { "target" = "old-slow-box.example.com." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "0" }
Packit Service a2ae7a
      { "weight" = "3" }
Packit Service a2ae7a
      { "port" = "9" }
Packit Service a2ae7a
      { "target" = "new-fast-box.example.com." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "3"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "1" }
Packit Service a2ae7a
      { "weight" = "0" }
Packit Service a2ae7a
      { "port" = "9" }
Packit Service a2ae7a
      { "target" = "sysadmins-box.example.com." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "4"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "1" }
Packit Service a2ae7a
      { "weight" = "0" }
Packit Service a2ae7a
      { "port" = "9" }
Packit Service a2ae7a
      { "target" = "server.example.com." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "server" { "1" { "type" = "A" } { "rdata" = "172.30.79.10" } } }
Packit Service a2ae7a
  { "old-slow-box" { "1" { "type" = "A" } { "rdata" = "172.30.79.11" } } }
Packit Service a2ae7a
  { "sysadmins-box" { "1" { "type" = "A" } { "rdata" = "172.30.79.12" } } }
Packit Service a2ae7a
  { "new-fast-box" { "1" { "type" = "A" } { "rdata" = "172.30.79.13" } } }
Packit Service a2ae7a
  { "*._tcp"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "0" }
Packit Service a2ae7a
      { "weight" = "0" }
Packit Service a2ae7a
      { "port" = "0" }
Packit Service a2ae7a
      { "target" = "." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "*._udp"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "type" = "SRV" }
Packit Service a2ae7a
      { "priority" = "0" }
Packit Service a2ae7a
      { "weight" = "0" }
Packit Service a2ae7a
      { "port" = "0" }
Packit Service a2ae7a
      { "target" = "." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* RFC 3403 ยง6.2 *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN 2.1.2.1.5.5.5.0.7.7.1.e164.arpa.
Packit Service a2ae7a
 IN NAPTR 100 10 \"u\" \"sip+E2U\"  \"!^.*$!sip:information@foo.se!i\"     .
Packit Service a2ae7a
 IN NAPTR 102 10 \"u\" \"smtp+E2U\" \"!^.*$!mailto:information@foo.se!i\"  .
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "2.1.2.1.5.5.5.0.7.7.1.e164.arpa." }
Packit Service a2ae7a
  { "@"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "NAPTR" }
Packit Service a2ae7a
      { "order" = "100" }
Packit Service a2ae7a
      { "preference" = "10" }
Packit Service a2ae7a
      { "flags" = "\"u\"" }
Packit Service a2ae7a
      { "service" = "\"sip+E2U\"" }
Packit Service a2ae7a
      { "regexp" = "\"!^.*$!sip:information@foo.se!i\"" }
Packit Service a2ae7a
      { "replacement" = "." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
    { "2"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "NAPTR" }
Packit Service a2ae7a
      { "order" = "102" }
Packit Service a2ae7a
      { "preference" = "10" }
Packit Service a2ae7a
      { "flags" = "\"u\"" }
Packit Service a2ae7a
      { "service" = "\"smtp+E2U\"" }
Packit Service a2ae7a
      { "regexp" = "\"!^.*$!mailto:information@foo.se!i\"" }
Packit Service a2ae7a
      { "replacement" = "." }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* SOA record on a single line *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN example.com.
Packit Service a2ae7a
@ IN SOA ns root.example.com. (1 2 3 4 5)
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "example.com." }
Packit Service a2ae7a
  { "@"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "SOA" }
Packit Service a2ae7a
      { "mname" = "ns" }
Packit Service a2ae7a
      { "rname" = "root.example.com." }
Packit Service a2ae7a
      { "serial" = "1" }
Packit Service a2ae7a
      { "refresh" = "2" }
Packit Service a2ae7a
      { "retry" = "3" }
Packit Service a2ae7a
      { "expiry" = "4" }
Packit Service a2ae7a
      { "minimum" = "5" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* Different ordering of TTL and class *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN example.com.
Packit Service a2ae7a
foo 1D IN A 10.1.2.3
Packit Service a2ae7a
bar IN 2W A 10.4.5.6
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "example.com." }
Packit Service a2ae7a
  { "foo"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "ttl" = "1D" }
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "A" }
Packit Service a2ae7a
      { "rdata" = "10.1.2.3" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "bar"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "ttl" = "2W" }
Packit Service a2ae7a
      { "type" = "A" }
Packit Service a2ae7a
      { "rdata" = "10.4.5.6" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* Escaping *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN example.com.
Packit Service a2ae7a
foo TXT abc\\\\def\\\"ghi
Packit Service a2ae7a
bar TXT \"ab cd\\\\ef\\\"gh\"
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "example.com." }
Packit Service a2ae7a
  { "foo" { "1" { "type" = "TXT" } { "rdata" = "abc\\\\def\\\"ghi" } } }
Packit Service a2ae7a
  { "bar" { "1" { "type" = "TXT" } { "rdata" = "\"ab cd\\\\ef\\\"gh\"" } } }
Packit Service a2ae7a
Packit Service a2ae7a
Packit Service a2ae7a
(* Whitespace at the end of the line *)
Packit Service a2ae7a
test lns get "
Packit Service a2ae7a
$ORIGIN example.com. \n@ IN SOA ns root.example.com. (1 2 3 4 5) \t
Packit Service a2ae7a
foo 1D IN A 10.1.2.3\t
Packit Service a2ae7a
" =
Packit Service a2ae7a
  { "$ORIGIN" = "example.com." }
Packit Service a2ae7a
  { "@"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "SOA" }
Packit Service a2ae7a
      { "mname" = "ns" }
Packit Service a2ae7a
      { "rname" = "root.example.com." }
Packit Service a2ae7a
      { "serial" = "1" }
Packit Service a2ae7a
      { "refresh" = "2" }
Packit Service a2ae7a
      { "retry" = "3" }
Packit Service a2ae7a
      { "expiry" = "4" }
Packit Service a2ae7a
      { "minimum" = "5" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }
Packit Service a2ae7a
  { "foo"
Packit Service a2ae7a
    { "1"
Packit Service a2ae7a
      { "ttl" = "1D" }
Packit Service a2ae7a
      { "class" = "IN" }
Packit Service a2ae7a
      { "type" = "A" }
Packit Service a2ae7a
      { "rdata" = "10.1.2.3" }
Packit Service a2ae7a
    }
Packit Service a2ae7a
  }