emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] nsm 01/01: NSM certificate display fix


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] nsm 01/01: NSM certificate display fix
Date: Wed, 19 Nov 2014 16:41:57 +0000

branch: nsm
commit 76ac3dcf397405014b4daa0a9f3f6b3ccdc6d8a3
Author: Lars Magne Ingebrigtsen <address@hidden>
Date:   Wed Nov 19 17:41:48 2014 +0100

    NSM certificate display fix
    
    * net/nsm.el (nsm-format-certificate): Protect against not all
    identifiers having all parts.
---
 lisp/ChangeLog  |    5 +++++
 lisp/net/nsm.el |   19 +++++++++++++------
 2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 2cefc6f..fc44d1e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2014-11-19  Lars Magne Ingebrigtsen  <address@hidden>
+
+       * net/nsm.el (nsm-format-certificate): Protect against not all
+       identifiers having all parts.
+
 2014-11-19  Teodor Zlatanov  <address@hidden>
 
        * net/nsm.el (nsm-security-level): Fix defcustom.
diff --git a/lisp/net/nsm.el b/lisp/net/nsm.el
index a6c6df5..04c2ac7 100644
--- a/lisp/net/nsm.el
+++ b/lisp/net/nsm.el
@@ -344,11 +344,14 @@ unencrypted."
       (with-temp-buffer
        (insert
         "Certificate information\n"
-        "Issued by:" (nsm-certificate-part (plist-get cert :issuer) "CN") "\n"
-        "Issued to:" (or (nsm-certificate-part (plist-get cert :subject) "O")
-                         (nsm-certificate-part (plist-get cert :subject) "OU"))
+        "Issued by:"
+        (nsm-certificate-part (plist-get cert :issuer) "CN" t) "\n"
+        "Issued to:"
+        (or (nsm-certificate-part (plist-get cert :subject) "O")
+            (nsm-certificate-part (plist-get cert :subject) "OU") t)
         "\n"
-        "Hostname:" (nsm-certificate-part (plist-get cert :subject) "CN") "\n"
+        "Hostname:"
+        (nsm-certificate-part (plist-get cert :subject) "CN" t) "\n"
         "Public key:" (plist-get cert :public-key-algorithm)
         ", signature: " (plist-get cert :signature-algorithm) "\n"
         "Security level:"
@@ -362,8 +365,12 @@ unencrypted."
          (insert (make-string (- 20 (current-column)) ? )))
        (buffer-string)))))
 
-(defun nsm-certificate-part (string part)
-  (cadr (assoc part (nsm-parse-subject string))))
+(defun nsm-certificate-part (string part &optional full)
+  (let ((part (cadr (assoc part (nsm-parse-subject string)))))
+    (cond
+     (part part)
+     (full string)
+     (t nil))))
 
 (defun nsm-parse-subject (string)
   (with-temp-buffer



reply via email to

[Prev in Thread] Current Thread [Next in Thread]