+2001-03-18 23:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
+       
+       * gnus-sum.el (gnus-summary-show-all-headers):
+       gnus-article-show-all-headers is broken. Use
+       gnus-summary-toggle-header instead.
+       
+       * mml2015.el (mml2015-gpg-extract-from): No error.
+
+2001-03-18 23:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
+       From Bj\e,Ax\e(Brn Mork <bmork@dod.no>.
+
+       * mml2015.el (mml2015-gpg-extract-from): New function.
+       (mml2015-gpg-verify): Use it.
+       (mml2015-gpg-clear-verify): Use it.
+
 2001-03-17 10:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
 
        * message.el (message-setup-fill-variables): Use
 
 (defun gnus-summary-show-all-headers ()
   "Make all header lines visible."
   (interactive)
-  (gnus-article-show-all-headers))
+  (gnus-summary-toggle-header 1))
 
 (defun gnus-summary-toggle-mime (&optional arg)
   "Toggle MIME processing.
 
       (mm-set-handle-multipart-parameter
        mm-security-handle 'gnus-info "Failed"))))
 
+(defun mml2015-gpg-extract-from ()
+  (goto-char (point-min))
+  (if (re-search-forward "^gpg: Good signature from \"\\(.*\\)\"$" nil t)
+      (match-string 1)
+    "From unknown user"))
+
 (defun mml2015-gpg-verify (handle ctl)
   (catch 'error
     (let (part message signature)
             mm-security-handle 'gnus-info "Failed")
            (throw 'error handle)))
        (mm-set-handle-multipart-parameter
-        mm-security-handle 'gnus-info "OK"))
+        mm-security-handle 'gnus-info 
+        (with-current-buffer mml2015-result-buffer 
+          (mml2015-gpg-extract-from))))
       handle)))
 
 (defun mml2015-gpg-clear-verify ()
          mm-security-handle 'gnus-details "Quit.")
         nil))
       (mm-set-handle-multipart-parameter
-       mm-security-handle 'gnus-info "OK")
+       mm-security-handle 'gnus-info 
+       (with-current-buffer mml2015-result-buffer 
+        (mml2015-gpg-extract-from)))
     (mm-set-handle-multipart-parameter
      mm-security-handle 'gnus-info "Failed")))