From 0516211301c96f9394b73f36575b72ad21f51e4c Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Mon, 22 Dec 2014 20:37:40 +0000 Subject: [PATCH] zone.lisp: Have `bind-format-record''s caller provide the newline. This allows callers to append their own stuff if they want to. --- zone.lisp | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/zone.lisp b/zone.lisp index 9ce8a34..e819cd1 100644 --- a/zone.lisp +++ b/zone.lisp @@ -1245,7 +1245,7 @@ $TTL ~2@*~D~2%" (export 'bind-format-record) (defun bind-format-record (zr format &rest args) (format *zone-output-stream* - "~A~20T~@[~8D~]~30TIN ~A~40T~?~%" + "~A~20T~@[~8D~]~30TIN ~A~40T~?" (bind-output-hostname (zr-name zr)) (let ((ttl (zr-ttl zr))) (and (/= ttl (zone-default-ttl *writing-zone*)) @@ -1279,35 +1279,36 @@ $TTL ~2@*~D~2%" (format *zone-output-stream* " )~%"))))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :a)) zr) - (bind-format-record zr "~A" (ipaddr-string (zr-data zr)))) + (bind-format-record zr "~A~%" (ipaddr-string (zr-data zr)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :aaaa)) zr) - (bind-format-record zr "~A" (ipaddr-string (zr-data zr)))) + (bind-format-record zr "~A~%" (ipaddr-string (zr-data zr)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :ptr)) zr) - (bind-format-record zr "~A" (bind-hostname (zr-data zr)))) + (bind-format-record zr "~A~%" (bind-hostname (zr-data zr)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :cname)) zr) - (bind-format-record zr "~A" (bind-hostname (zr-data zr)))) + (bind-format-record zr "~A~%" (bind-hostname (zr-data zr)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :ns)) zr) - (bind-format-record zr "~A" (bind-hostname (zr-data zr)))) + (bind-format-record zr "~A~%" (bind-hostname (zr-data zr)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :mx)) zr) - (bind-format-record zr "~2D ~A" + (bind-format-record zr "~2D ~A~%" (cdr (zr-data zr)) (bind-hostname (car (zr-data zr))))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :srv)) zr) (destructuring-bind (prio weight port host) (zr-data zr) - (bind-format-record zr "~2D ~5D ~5D ~A" + (bind-format-record zr "~2D ~5D ~5D ~A~%" prio weight port (bind-hostname host)))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :sshfp)) zr) - (bind-format-record zr "~{~2D ~2D ~A~}" (zr-data zr))) + (bind-format-record zr "~{~2D ~2D ~A~}~%" (zr-data zr))) (defmethod zone-write-record ((format (eql :bind)) (type (eql :txt)) zr) - (bind-format-record zr "~{~#[\"\"~;~S~:;(~@{~%~8T~S~} )~]~}" (zr-data zr))) + (bind-format-record zr "~{~#[\"\"~;~S~:;(~@{~%~8T~S~} )~]~}~%" + (zr-data zr))) ;;;-------------------------------------------------------------------------- ;;; tinydns-data output format. -- 2.11.0