summaryrefslogtreecommitdiff
path: root/bits/bbdb-pgp.el
diff options
context:
space:
mode:
authorDavid Bremner <bremner@debian.org>2019-09-07 15:44:20 -0300
committerDavid Bremner <bremner@debian.org>2019-09-07 15:44:20 -0300
commit4427996318fc27eb6fd03e85d122a4a0d3180ef6 (patch)
tree2d32e0c5167d0918330b13e84e6f48c2bb2bce8f /bits/bbdb-pgp.el
parentb60e27b811df094eea9bb9063c9952547e8fba7a (diff)
remove source files
Diffstat (limited to 'bits/bbdb-pgp.el')
-rw-r--r--bits/bbdb-pgp.el211
1 files changed, 0 insertions, 211 deletions
diff --git a/bits/bbdb-pgp.el b/bits/bbdb-pgp.el
deleted file mode 100644
index 3599138..0000000
--- a/bits/bbdb-pgp.el
+++ /dev/null
@@ -1,211 +0,0 @@
-;;; bbdb-pgp.el --- use BBDB to store PGP preferences
-
-;; Copyright (C) 1997,1999 Kevin Davidson
-
-;; Author: Kevin Davidson tkld@quadstone.com
-;; Maintainer: Kevin Davidson tkld@quadstone.com
-;; Created: 10 Nov 1997
-;; Keywords: PGP BBDB message mailcrypt
-
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; A copy of the GNU General Public License can be obtained from this
-;; program's author (send electronic mail to tkld@quadstone.com) or
-;; from the Free Software Foundation, Inc.,59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;; LCD Archive Entry:
-;; bbdb-pgp|Kevin Davidson|tkld@quadstone.com
-;; |Use BBDB to store PGP preferences
-;; |Date|Revision|~/packages/bbdb-pgp.el
-
-;;; Commentary:
-;;
-;; It is believed that encrypted mail works best if all mail between
-;; individuals is encrypted - even concerning matters that are not
-;; confidential. The reasoning is that confidential messages cannot
-;; then be easily spotted and decryption efforts concentrated on them.
-;; Some people therefore prefer to have all their email encrypted.
-;; This package allows you to mark the BBDB entries for those
-;; individuals so that messages will be encrypted when they are sent.
-;;
-;; These packages are required: BBDB, mailcrypt, message
-;;
-;; message.el is included with recent versions of Emacs.
-;; You can use mail-mode as well as message-mode to send mail.
-
-;;; Usage:
-;; (require 'bbdb-pgp)
-;;
-;; Then for all users who you want to send encrypted mail to, add the field
-;; pgp-mail with the value `encrypt'. Alternatively you can add the value
-;; `sign' if you just want to send signed messages.
-;;
-;; and possibly (if you do not want the PGP field printed out)
-;; (add-hook 'bbdb-print-elide bbdb-pgp-field)
-;;
-;; The variable bbdb/pgp-default-action defines what to do if the recipient
-;; is not in the BBDB.
-
-;;; TODO
-;; Spot incoming PGP mail by hooking into mc-verify/decrypt and adding pgp-mail
-;; field to BBDB entry (creating one if necessary); like bbdb-sc.el maintains
-;; attribution prefs.
-
-;;; PGP Public Key
-;; The author's public key is available from any public PGP keyserver
-;; eg http://www.pgp.net/pgpnet/
-;; Fingerprint: 1F A9 3F 3E 90 F7 85 64 55 35 32 C8 75 91 3A E3
-
-
-;;; Code:
-
-(require 'message)
-(require 'bbdb)
-(condition-case nil (require 'mailcrypt) (error nil))
-
-;;;###autoload
-(defgroup bbdb-utilities-pgp nil
- "Automatically sign and/or encrypt outgoing messages."
- :link '(emacs-library-link :tag "Lisp Source File" "bbdb-pgp.el")
- :group 'bbdb-utilities)
-
-
-(defcustom bbdb/pgp-field 'pgp-mail
- "*Field to use in BBDB to store PGP preferences.
-
-If this field's value in a record is \"encrypt\" then messages are
-encrypted. If it is \"sign\" then messages are signed."
- :type 'symbol
- :tag "BBDB Field"
- :require 'bbdb
- :group 'bbdb-utilities-pgp)
-
-(defcustom bbdb/pgp-method 'mailcrypt
- "*How to sign or encrypt messages.
-
-'mailcrypt means use Mailcrypt.
-'mml-pgp means add MML tags for Message to use old PGP format
-'mml-pgpmime means add MML tags for Message to use PGP/MIME
-'mml-smime means add MML tags for Message to use S/MIME"
- :type '(choice
- (const :tag "Mailcrypt" mailcrypt :require 'mailcrypt)
- (const :tag "MML PGP" mml-pgp :require 'mml)
- (const :tag "MML PGP/MIME" mml-pgpmime :require 'mml)
- (const :tag "MML S/MIME" mml-smime :require 'mml))
- :tag "Signing/Encryption Method"
- :group 'bbdb-utilities-pgp)
-
-(defcustom bbdb/pgp-default-action nil
- "*Default action when sending a message and the recipient is not in BBDB.
-
-nil means do nothing.
-'encrypt means encrypt message.
-'sign means sign message."
- :type '(choice
- (const :tag "Do Nothing")
- (const :tag "Encrypt" encrypt)
- (const :tag "Sign" sign))
- :tag "Default Action"
- :group 'bbdb-utilities-pgp)
-
-(defcustom bbdb/pgp-quiet nil
- "*Do not ask for confirmation on pgp-action.
-
-nil means normal messages/questions.
-'t means to be quiet."
- :type '(choice
- (const :tag "normal")
- (const :tag "quiet" t))
- :tag "Quietness"
- :group 'bbdb-utilities-pgp)
-
-(defun bbdb/pgp-get-pgp (name address)
- "Look up user NAME and ADDRESS in BBDB and return the PGP preference."
- (let* ((record (bbdb-search-simple name address))
- (pgp (and record
- (bbdb-record-getprop record bbdb/pgp-field))))
- pgp))
-
-(defun bbdb/pgp-sign ()
- "Sign a message.
-bbdb/pgp-method controls the method used."
- (cond
- ((eq bbdb/pgp-method 'mailcrypt)
- (mc-sign 0))
- ((eq bbdb/pgp-method 'mml-pgp)
- (mml-secure-message-sign-pgp))
- ((eq bbdb/pgp-method 'mml-pgpmime)
- (mml-secure-message-sign-pgpmime))
- ((eq bbdb/pgp-method 'mml-smime)
- (mml-secure-message-sign-smime))
- (t
- (error 'invalid-state "bbdb/pgp-method"))))
-
-(defun bbdb/pgp-encrypt ()
- "Encrypt and sign a message.
-bbdb/pgp-method controls the method used."
- (cond
- ((eq bbdb/pgp-method 'mailcrypt)
- (mc-encrypt 0))
- ((eq bbdb/pgp-method 'mml-pgp)
- (mml-secure-message-encrypt-pgp))
- ((eq bbdb/pgp-method 'mml-pgpmime)
- (mml-secure-message-encrypt-pgpmime))
- ((eq bbdb/pgp-method 'mml-smime)
- (mml-secure-message-encrypt-smime))
- (t
- (error 'invalid-state "bbdb/pgp-method"))))
-
-(defun bbdb/pgp-hook-fun ()
- "Function to be added to message-send-hook
-Uses PGP to encrypt messages to users marked in the BBDB with the
-field `bbdb/pgp-field'.
-The user is prompted before encryption or signing."
- (save-restriction
- (save-excursion
- (message-narrow-to-headers)
- (and (featurep 'mailalias)
- (not (featurep 'mailabbrev))
- mail-aliases
- (expand-mail-aliases (point-min) (point-max)))
- (let* ((to-field (mail-fetch-field "To" nil t))
- (address (mail-extract-address-components (or to-field ""))))
- (widen)
- (if (not (equal address '(nil nil)))
- (let ((pgp-p (bbdb/pgp-get-pgp (car address) (car (cdr address)))))
- (cond
- ((string= "encrypt" pgp-p)
- (and (or bbdb/pgp-quiet
- (y-or-n-p "Encrypt message? "))
- (bbdb/pgp-encrypt)))
- ((string= "sign" pgp-p)
- (and (or bbdb/pgp-quiet
- (y-or-n-p "Sign message? "))
- (bbdb/pgp-sign)))
- (t
- (cond
- ((eq bbdb/pgp-default-action 'encrypt)
- (and (y-or-n-p "Encrypt message? ")
- (bbdb/pgp-encrypt)))
- ((eq bbdb/pgp-default-action 'sign)
- (and (y-or-n-p "Sign message? ")
- (bbdb/pgp-sign)))
- (t
- nil))))))))))
-
-(add-hook 'message-send-hook 'bbdb/pgp-hook-fun)
-(add-hook 'mail-send-hook 'bbdb/pgp-hook-fun)
-
-(provide 'bbdb-pgp)
-
-;;; bbdb-pgp.el ends here