chiark
/
gitweb
/
~mdw
/
zone
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
62e6acc
)
zone.lisp: Include configurable search path for TLSA association data.
author
Mark Wooding
<mdw@distorted.org.uk>
Mon, 22 Dec 2014 20:32:58 +0000
(20:32 +0000)
committer
Mark Wooding
<mdw@distorted.org.uk>
Tue, 23 Dec 2014 11:57:35 +0000
(11:57 +0000)
zone.lisp
patch
|
blob
|
blame
|
history
diff --git
a/zone.lisp
b/zone.lisp
index 841d62ad7d764467d6dfa9d5955658631b52c0a0..726791fd6dd04dca12bdffce259a9c2daf973eea 100644
(file)
--- a/
zone.lisp
+++ b/
zone.lisp
@@
-1077,6
+1077,13
@@
(defun identify-tlsa-selector-file (file)
(return value)))
'tlsa-selector))))))
(return value)))
'tlsa-selector))))))
+(export '*tlsa-pathname-defaults*)
+(defvar *tlsa-pathname-defaults*
+ (list (make-pathname :directory '(:relative "certs") :type "cert")
+ (make-pathname :directory '(:relative "keys") :type "pub"))
+ "Default pathname components for TLSA records.")
+(pushnew '*tlsa-pathname-defaults* *zone-config*)
+
(defun convert-tlsa-selector-data (data selector match)
"Convert certificate association DATA as required by SELECTOR and MATCH.
(defun convert-tlsa-selector-data (data selector match)
"Convert certificate association DATA as required by SELECTOR and MATCH.
@@
-1098,8
+1105,13
@@
(defun convert-tlsa-selector-data (data selector match)
bin))
(pathname
(with-temporary-files (context :base "tmpfile.tmp")
bin))
(pathname
(with-temporary-files (context :base "tmpfile.tmp")
- (let* ((kind (identify-tlsa-selector-file data))
- (raw (raw-tlsa-assoc-data kind selector data context)))
+ (let* ((file (or (find-if #'probe-file
+ (mapcar (lambda (template)
+ (merge-pathnames data template))
+ *tlsa-pathname-defaults*))
+ (error "Couldn't find TLSA file `~A'" data)))
+ (kind (identify-tlsa-selector-file file))
+ (raw (raw-tlsa-assoc-data kind selector file context)))
(read-tlsa-match-data match raw context))))))
(defzoneparse :tlsa (name data rec)
(read-tlsa-match-data match raw context))))))
(defzoneparse :tlsa (name data rec)