aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cuirass/base.scm12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/cuirass/base.scm b/src/cuirass/base.scm
index d1c8282..960a5e7 100644
--- a/src/cuirass/base.scm
+++ b/src/cuirass/base.scm
@@ -255,10 +255,14 @@ directory and the sha1 of the top level commit in this directory."
(let ((stamp (db-get-stamp db spec)))
;; Catch and report git errors.
(with-git-error-handling
- (let ((certs (or (getenv "GIT_SSL_CAINFO")
- (getenv "SSL_CERT_DIR"))))
- (when certs
- (set-tls-certificate-locations! certs)))
+ ;; Try the 'GIT_SSL_CAINFO' or 'SSL_CERT_FILE' file first, then
+ ;; search the 'SSL_CERT_DIR' directory.
+ (let ((directory (getenv "SSL_CERT_DIR"))
+ (file (or (getenv "GIT_SSL_CAINFO")
+ (getenv "SSL_CERT_FILE"))))
+ (when (or directory file)
+ (set-tls-certificate-locations! directory file)))
+
(receive (checkout commit)
(fetch-repository store spec)
(when commit