Function: network-stream-certificate

network-stream-certificate is a byte-compiled function defined in network-stream.el.gz.

Signature

(network-stream-certificate HOST SERVICE PARAMETERS)

Source Code

;; Defined in /usr/src/emacs/lisp/net/network-stream.el.gz
(defun network-stream-certificate (host service parameters)
  (let ((spec (plist-get parameters :client-certificate)))
    (cond
     ((listp spec)
      ;; Either nil or a list with a key/certificate pair.
      spec)
     ((eq spec t)
      (let* ((epa-suppress-error-buffer t)
             (auth-info
              (ignore-errors
                (car (auth-source-search :max 1
                                         :host host
                                         :port (format "%s" service)
                                         :require '(:key :cert)))))
	     (key (plist-get auth-info :key))
	     (cert (plist-get auth-info :cert)))
	(and key cert (file-readable-p key) (file-readable-p cert)
	     (list key cert)))))))