net.lisp, zone.lisp: Support for IPv6 addresses.
[zone] / zone.lisp
index 735e87f..d25986a 100644 (file)
--- a/zone.lisp
+++ b/zone.lisp
   ":a IPADDR"
   (zone-set-address #'rec data :make-ptr-p t :family :ipv4))
 
+(defzoneparse :aaaa (name data rec)
+  ":aaaa IPADDR"
+  (zone-set-address #'rec data :make-ptr-p t :family :ipv6))
+
 (defzoneparse :addr (name data rec)
   ":addr IPADDR"
   (zone-set-address #'rec data :make-ptr-p t))
@@ -983,6 +987,7 @@ $TTL ~2@*~D~2%"
 (export 'bind-record-format-args)
 (defgeneric bind-record-format-args (type data)
   (:method ((type (eql :a)) data) (list "~A" (ipaddr-string data)))
+  (:method ((type (eql :aaaa)) data) (list "~A" (ipaddr-string data)))
   (:method ((type (eql :ptr)) data) (list "~A" (bind-hostname data)))
   (:method ((type (eql :cname)) data) (list "~A" (bind-hostname data)))
   (:method ((type (eql :ns)) data) (list "~A" (bind-hostname data)))