Sync with semi-1_14.
[elisp/semi.git] / pgg-def.el
1 ;;; pgg-def.el --- functions/macros for defining PGG functions
2
3 ;; Copyright (C) 1999 Free Software Foundation, Inc.
4
5 ;; Author: Daiki Ueno <ueno@unixuser.org>
6 ;; Created: 1999/11/02
7 ;; Keywords: PGP, OpenPGP, GnuPG
8
9 ;; This file is part of SEMI (Secure Emacs MIME Interface).
10
11 ;; This program is free software; you can redistribute it and/or
12 ;; modify it under the terms of the GNU General Public License as
13 ;; published by the Free Software Foundation; either version 2, or (at
14 ;; your option) any later version.
15
16 ;; This program is distributed in the hope that it will be useful, but
17 ;; WITHOUT ANY WARRANTY; without even the implied warranty of
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19 ;; General Public License for more details.
20
21 ;; You should have received a copy of the GNU General Public License
22 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
23 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
24 ;; Boston, MA 02110-1301, USA.
25
26 ;;; Code:
27
28 (require 'custom)
29
30 (defgroup pgg ()
31   "Glue for the various PGP implementations."
32   :group 'mime)
33
34 (defcustom pgg-default-scheme 'gpg
35   "Default PGP scheme."
36   :group 'pgg
37   :type '(choice (const :tag "GnuPG" gpg)
38                  (const :tag "PGP 5" pgp5)
39                  (const :tag "PGP" pgp)))
40
41 (defcustom pgg-default-user-id (user-login-name)
42   "User ID of your default identity."
43   :group 'pgg
44   :type 'string)
45
46 (defvar pgg-overriding-user-id nil
47   "User ID temporally bound during the command consequent upon
48 `pgg-universal-user-id-argument'.")
49
50 (defcustom pgg-default-keyserver-address "wwwkeys.pgp.net"
51   "Host name of keyserver."
52   :group 'pgg
53   :type 'string)
54
55 (defcustom pgg-encrypt-for-me nil
56   "If t, encrypt all outgoing messages with user's public key."
57   :group 'pgg
58   :type 'boolean)
59
60 (defcustom pgg-cache-passphrase t
61   "If t, cache passphrase."
62   :group 'pgg
63   :type 'boolean)
64
65 (defvar pgg-messages-coding-system nil
66   "Coding system used when reading from a PGP external process.")
67
68 (defvar pgg-messages-locale nil
69   "Locale set before running a PGP external process.")
70
71 (defvar pgg-status-buffer " *PGG status*")
72 (defvar pgg-errors-buffer " *PGG errors*")
73 (defvar pgg-output-buffer " *PGG output*")
74
75 (defvar pgg-echo-buffer "*PGG-echo*")
76
77 (defvar pgg-scheme nil
78   "Current scheme of PGP implementation.")
79
80 (defmacro pgg-truncate-key-identifier (key)
81   `(if (> (length ,key) 8) (substring ,key 8) ,key))
82
83 (provide 'pgg-def)
84
85 ;;; pgg-def.el ends here