]> code.delx.au - gnu-emacs/blobdiff - lisp/epg.el
Move window resize code from window.c to window.el.
[gnu-emacs] / lisp / epg.el
index fae896c4ae0ddea22fd5d9877c57a635edd68da3..348ad970b14fed404d5212d38a9207d36e9f4de6 100644 (file)
@@ -1,6 +1,5 @@
-;;; epg.el --- the EasyPG Library
-;; Copyright (C) 1999, 2000, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+;;; epg.el --- the EasyPG Library -*- lexical-binding: t -*-
+;; Copyright (C) 1999-2000, 2002-2011 Free Software Foundation, Inc.
 
 ;; Author: Daiki Ueno <ueno@unixuser.org>
 ;; Keywords: PGP, GnuPG
@@ -67,7 +66,7 @@
 (defconst epg-digest-algorithm-alist
   '((1 . "MD5")
     (2 . "SHA1")
-    (3 . "RMD160")
+    (3 . "RIPEMD160")
     (8 . "SHA256")
     (9 . "SHA384")
     (10 . "SHA512")
@@ -337,7 +336,13 @@ PASSPHRASE-CALLBACK is either a function, or a cons-cell whose
 car is a function and cdr is a callback data.
 
 The function gets three arguments: the context, the key-id in
-question, and the callback data (if any)."
+question, and the callback data (if any).
+
+The callback may not be called if you use GnuPG 2.x, which relies
+on the external program called `gpg-agent' for passphrase query.
+If you really want to intercept passphrase query, consider
+installing GnuPG 1.x _along with_ GnuPG 2.x, which does passphrase
+query by itself and Emacs can intercept them."
   (unless (eq (car-safe context) 'epg-context)
     (signal 'wrong-type-argument (list 'epg-context-p context)))
   (aset (cdr context) 7 (if (consp passphrase-callback)
@@ -1218,7 +1223,7 @@ This function is for internal use only."
       (defalias 'epg--decode-coding-string 'decode-coding-string)
     (defalias 'epg--decode-coding-string 'identity)))
 
-(defun epg--status-USERID_HINT (context string)
+(defun epg--status-USERID_HINT (_context string)
   (if (string-match "\\`\\([^ ]+\\) \\(.*\\)" string)
       (let* ((key-id (match-string 1 string))
             (user-id (match-string 2 string))
@@ -1233,14 +1238,14 @@ This function is for internal use only."
          (setq epg-user-id-alist (cons (cons key-id user-id)
                                        epg-user-id-alist))))))
 
-(defun epg--status-NEED_PASSPHRASE (context string)
+(defun epg--status-NEED_PASSPHRASE (_context string)
   (if (string-match "\\`\\([^ ]+\\)" string)
       (setq epg-key-id (match-string 1 string))))
 
-(defun epg--status-NEED_PASSPHRASE_SYM (context string)
+(defun epg--status-NEED_PASSPHRASE_SYM (_context _string)
   (setq epg-key-id 'SYM))
 
-(defun epg--status-NEED_PASSPHRASE_PIN (context string)
+(defun epg--status-NEED_PASSPHRASE_PIN (_context _string)
   (setq epg-key-id 'PIN))
 
 (eval-and-compile
@@ -1303,11 +1308,11 @@ This function is for internal use only."
        (if encoded-passphrase-with-new-line
            (epg--clear-string encoded-passphrase-with-new-line))))))
 
-(defun epg--prompt-GET_BOOL (context string)
+(defun epg--prompt-GET_BOOL (_context string)
   (let ((entry (assoc string epg-prompt-alist)))
     (y-or-n-p (if entry (cdr entry) (concat string "? ")))))
 
-(defun epg--prompt-GET_BOOL-untrusted_key.override (context string)
+(defun epg--prompt-GET_BOOL-untrusted_key.override (_context _string)
   (y-or-n-p (if (and (equal (car epg-last-status) "USERID_HINT")
                     (string-match "\\`\\([^ ]+\\) \\(.*\\)"
                                   (cdr epg-last-status)))
@@ -1462,31 +1467,31 @@ This function is for internal use only."
        signature
        (string-to-number (match-string 7 string) 16)))))
 
-(defun epg--status-TRUST_UNDEFINED (context string)
+(defun epg--status-TRUST_UNDEFINED (context _string)
   (let ((signature (car (epg-context-result-for context 'verify))))
     (if (and signature
             (eq (epg-signature-status signature) 'good))
        (epg-signature-set-validity signature 'undefined))))
 
-(defun epg--status-TRUST_NEVER (context string)
+(defun epg--status-TRUST_NEVER (context _string)
   (let ((signature (car (epg-context-result-for context 'verify))))
     (if (and signature
             (eq (epg-signature-status signature) 'good))
        (epg-signature-set-validity signature 'never))))
 
-(defun epg--status-TRUST_MARGINAL (context string)
+(defun epg--status-TRUST_MARGINAL (context _string)
   (let ((signature (car (epg-context-result-for context 'verify))))
     (if (and signature
             (eq (epg-signature-status signature) 'marginal))
        (epg-signature-set-validity signature 'marginal))))
 
-(defun epg--status-TRUST_FULLY (context string)
+(defun epg--status-TRUST_FULLY (context _string)
   (let ((signature (car (epg-context-result-for context 'verify))))
     (if (and signature
             (eq (epg-signature-status signature) 'good))
        (epg-signature-set-validity signature 'full))))
 
-(defun epg--status-TRUST_ULTIMATE (context string)
+(defun epg--status-TRUST_ULTIMATE (context _string)
   (let ((signature (car (epg-context-result-for context 'verify))))
     (if (and signature
             (eq (epg-signature-status signature) 'good))
@@ -1536,10 +1541,10 @@ This function is for internal use only."
                   (string-to-number (match-string 3 string)))
             (epg-context-result-for context 'encrypted-to)))))
 
-(defun epg--status-DECRYPTION_FAILED (context string)
+(defun epg--status-DECRYPTION_FAILED (context _string)
   (epg-context-set-result-for context 'decryption-failed t))
 
-(defun epg--status-DECRYPTION_OKAY (context string)
+(defun epg--status-DECRYPTION_OKAY (context _string)
   (epg-context-set-result-for context 'decryption-okay t))
 
 (defun epg--status-NODATA (context string)
@@ -1556,18 +1561,18 @@ This function is for internal use only."
 
 (defun epg--status-KEYEXPIRED (context string)
   (epg-context-set-result-for
-   context 'error
+   context 'key
    (cons (list 'key-expired (cons 'expiration-time
                                  (epg--time-from-seconds string)))
         (epg-context-result-for context 'error))))
 
-(defun epg--status-KEYREVOKED (context string)
+(defun epg--status-KEYREVOKED (context _string)
   (epg-context-set-result-for
-   context 'error
+   context 'key
    (cons '(key-revoked)
         (epg-context-result-for context 'error))))
 
-(defun epg--status-BADARMOR (context string)
+(defun epg--status-BADARMOR (context _string)
   (epg-context-set-result-for
    context 'error
    (cons '(bad-armor)
@@ -1584,7 +1589,7 @@ This function is for internal use only."
                         (match-string 2 string)))
             (epg-context-result-for context 'error)))))
 
-(defun epg--status-NO_RECP (context string)
+(defun epg--status-NO_RECP (context _string)
   (epg-context-set-result-for
    context 'error
    (cons '(no-recipients)
@@ -1621,13 +1626,13 @@ This function is for internal use only."
                   (cons 'fingerprint (match-string 2 string)))
             (epg-context-result-for context 'generate-key)))))
 
-(defun epg--status-KEY_NOT_CREATED (context string)
+(defun epg--status-KEY_NOT_CREATED (context _string)
   (epg-context-set-result-for
    context 'error
    (cons '(key-not-created)
         (epg-context-result-for context 'error))))
 
-(defun epg--status-IMPORTED (context string)
+(defun epg--status-IMPORTED (_context string)
   (if (string-match "\\`\\([^ ]+\\) \\(.*\\)" string)
       (let* ((key-id (match-string 1 string))
             (user-id (match-string 2 string))
@@ -1689,7 +1694,7 @@ This function is for internal use only."
                             (epg-context-result-for context 'import-status)))
     (epg-context-set-result-for context 'import-status nil)))
 
-(defun epg-passphrase-callback-function (context key-id handback)
+(defun epg-passphrase-callback-function (context key-id _handback)
   (if (eq key-id 'SYM)
       (read-passwd "Passphrase for symmetric encryption: "
                   (eq (epg-context-operation context) 'encrypt))
@@ -2644,5 +2649,4 @@ Type names are resolved using `epg-dn-type-alist'."
 
 (provide 'epg)
 
-;; arch-tag: de8f0acc-1bcf-4c14-a09e-bfffe1b579b7
 ;;; epg.el ends here