;ELC
;;; Compiled by LTX@Xue-LingTaos-MacBook-Pro.local on Wed Mar 16 23:14:55 2011
;;; from file /Users/LTX/Projects/Emacs/emacs/lisp/gnus/mml-sec.el
;;; in Emacs version 24.0.50.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301\302\"\210\300\303\302\"\210\300\304\305\"\210\300\306\305\"\210\300\307\310\"\210\300\311\312\"\210\300\313\314\"\210\300\315\314\"\210\300\316\314\"\210\300\317\314\"\210\300\320\314\"\210\300\321\314\"\207" [autoload mml2015-sign "mml2015" mml2015-encrypt mml1991-sign "mml1991" mml1991-encrypt message-goto-body "message" mml-insert-tag "mml" mml-smime-sign "mml-smime" mml-smime-encrypt mml-smime-sign-query mml-smime-encrypt-query mml-smime-verify mml-smime-verify-test] 3)
#@33 Alist of MIME signer functions.
(defvar mml-sign-alist '(("smime" mml-smime-sign-buffer mml-smime-sign-query) ("pgp" mml-pgp-sign-buffer list) ("pgpauto" mml-pgpauto-sign-buffer list) ("pgpmime" mml-pgpmime-sign-buffer list)) (#$ . 1046))
#@73 Default sign method.
The string must have an entry in `mml-sign-alist'.
(custom-declare-variable 'mml-default-sign-method '"pgpmime" '(#$ . 1291) :version "22.1" :type '(choice (const "smime") (const "pgp") (const "pgpauto") (const "pgpmime") string) :group 'message)
#@37 Alist of MIME encryption functions.
(defvar mml-encrypt-alist '(("smime" mml-smime-encrypt-buffer mml-smime-encrypt-query) ("pgp" mml-pgp-encrypt-buffer list) ("pgpauto" mml-pgpauto-sign-buffer list) ("pgpmime" mml-pgpmime-encrypt-buffer list)) (#$ . 1565))
#@82 Default encryption method.
The string must have an entry in `mml-encrypt-alist'.
(custom-declare-variable 'mml-default-encrypt-method '"pgpmime" '(#$ . 1829) :version "22.1" :type '(choice (const "smime") (const "pgp") (const "pgpauto") (const "pgpmime") string) :group 'message)
#@604 Alist specifying if `signencrypt' results in two separate operations or not.
The first entry indicates the MML security type, valid entries include
the strings "smime", "pgp", and "pgpmime".  The second entry is
a symbol `separate' or `combined' where `separate' means that MML signs
and encrypt messages in a two step process, and `combined' means that MML
signs and encrypt the message in one step.

Note that the output generated by using a `combined' mode is NOT
understood by all PGP implementations, in particular PGP version
2 does not support it!  See Info node `(message)Security' for
details.
(custom-declare-variable 'mml-signencrypt-style-alist ''(("smime" separate) ("pgp" combined) ("pgpauto" combined) ("pgpmime" combined)) '(#$ . 2116) :version "22.1" :group 'message :type '(repeat (list (choice (const :tag "S/MIME" "smime") (const :tag "PGP" "pgp") (const :tag "PGP/MIME" "pgpmime") (string :tag "User defined")) (choice (const :tag "Separate" separate) (const :tag "Combined" combined)))))
#@70 If non-nil, ask the user about the current operation more verbosely.
(custom-declare-variable 'mml-secure-verbose 'nil '(#$ . 3132) :group 'message :type 'boolean)
#@25 If t, cache passphrase.
(custom-declare-variable 'mml-secure-cache-passphrase '(if (boundp 'password-cache) password-cache t) '(#$ . 3302) :group 'message :type 'boolean)
#@132 How many seconds the passphrase is cached.
Whether the passphrase is cached at all is controlled by
`mml-secure-cache-passphrase'.
(custom-declare-variable 'mml-secure-passphrase-cache-expiry '(if (boundp 'password-cache-expiry) password-cache-expiry 16) '(#$ . 3480) :group 'message :type 'integer)
#@463 Function for setting/getting the signencrypt-style used.  Takes two
arguments, the method (e.g. "pgp") and optionally the mode
(e.g. combined).  If the mode is omitted, the current value is returned.

For example, if you prefer to use combined sign & encrypt with
smime, putting the following in your Gnus startup file will
enable that behavior:

(mml-set-signencrypt-style "smime" combined)

You can also customize or set `mml-signencrypt-style-alist' instead.
(defalias 'mml-signencrypt-style #[(method &optional style) "\305	\"\211\203%\306=\204\307=\203\nA\240\202(\n\211A@)\202(\310\311!)\207" [method mml-signencrypt-style-alist style-item style x assoc separate combined message "Warning, attempt to set invalid signencrypt style"] 4 (#$ . 3787)])
(defalias 'mml-smime-sign-buffer #[(cont) "\301!\206	\302\303!\207" [cont mml-smime-sign error "Signing failed... inspect message logs for errors"] 2])
(defalias 'mml-smime-encrypt-buffer #[(cont &optional sign) "\203\f\302\303!\210\304\305!\210\306	!\206\307\310!\207" [sign cont message "Combined sign and encrypt S/MIME not support yet" sit-for 1 mml-smime-encrypt error "Encryption failed... inspect message logs for errors"] 2])
(defalias 'mml-pgp-sign-buffer #[(cont) "\301!\206	\302\303!\207" [cont mml1991-sign error "Signing failed... inspect message logs for errors"] 2])
(defalias 'mml-pgp-encrypt-buffer #[(cont &optional sign) "\302	\"\206\n\303\304!\207" [cont sign mml1991-encrypt error "Encryption failed... inspect message logs for errors"] 3])
(defalias 'mml-pgpmime-sign-buffer #[(cont) "\301!\206	\302\303!\207" [cont mml2015-sign error "Signing failed... inspect message logs for errors"] 2])
(defalias 'mml-pgpmime-encrypt-buffer #[(cont &optional sign) "\302	\"\206\n\303\304!\207" [cont sign mml2015-encrypt error "Encryption failed... inspect message logs for errors"] 3])
(defalias 'mml-pgpauto-sign-buffer #[(cont) "\301 \210\302\303\304\305#\203\306!\202\307!\206\310\311!\207" [cont message-goto-body re-search-backward "Content-Type: *multipart/.*" nil t mml2015-sign mml1991-sign error "Encryption failed... inspect message logs for errors"] 4])
(defalias 'mml-pgpauto-encrypt-buffer #[(cont &optional sign) "\302 \210\303\304\305\306#\203\307	\"\202\310	\"\206\311\312!\207" [cont sign message-goto-body re-search-backward "Content-Type: *multipart/.*" nil t mml2015-encrypt mml1991-encrypt error "Encryption failed... inspect message logs for errors"] 4])
(defalias 'mml-secure-part #[(method &optional sign) "\212\306\307	\203\f\n\202
\"8 \310\311\312\313#\203V\314\225b\210	\203%\315\202&\316\261\210\f\205\215\f\211A@\f\211A@
\203R\317\320
\"\203J\321
!\322\323
#c\210*\202*\310\324\325!\326Q\312\313#\204r\327\324\325!\326Q\312\313#\203\212\314\225b\210\330\331\332	\203\201\301\202\202\333\fBB#\202\215\334\335!*\207" [method sign mml-sign-alist mml-encrypt-alist tags value 2 assoc re-search-backward "<#\\(multipart\\|part\\|external\\|mml\\)" nil t 0 " sign=" " encrypt=" string-match "[\"'\\~/*;() 	\n]" prin1-to-string format " %s=%s" "^" regexp-quote "\n" re-search-forward apply mml-insert-tag part encrypt error "The message is corrupted. No mail header separator" key mail-header-separator] 6])
#@46 Current security method.  Internal variable.
(defvar mml-secure-method (byte-code "	\232\203	\207\302\207" [mml-default-encrypt-method mml-default-sign-method "pgpmime"] 2) (#$ . 7065))
#@118 Add MML tags to sign this MML part.
Use METHOD if given.  Else use `mml-secure-method' or
`mml-default-sign-method'.
(defalias 'mml-secure-sign #[(&optional method) "\303\206\n	\206\n\n\304\"\207" [method mml-secure-method mml-default-sign-method mml-secure-part sign] 3 (#$ . 7261) nil])
#@121 Add MML tags to encrypt this MML part.
Use METHOD if given.  Else use `mml-secure-method' or
`mml-default-sign-method'.
(defalias 'mml-secure-encrypt #[(&optional method) "\303\206\n	\206\n\n!\207" [method mml-secure-method mml-default-sign-method mml-secure-part] 2 (#$ . 7560) nil])
#@41 Add MML tags to PGP sign this MML part.
(defalias 'mml-secure-sign-pgp #[nil "\300\301\302\"\207" [mml-secure-part "pgp" sign] 3 (#$ . 7854) nil])
#@46 Add MML tags to PGP-auto sign this MML part.
(defalias 'mml-secure-sign-pgpauto #[nil "\300\301\302\"\207" [mml-secure-part "pgpauto" sign] 3 (#$ . 8007) nil])
#@46 Add MML tags to PGP/MIME sign this MML part.
(defalias 'mml-secure-sign-pgpmime #[nil "\300\301\302\"\207" [mml-secure-part "pgpmime" sign] 3 (#$ . 8173) nil])
#@44 Add MML tags to S/MIME sign this MML part.
(defalias 'mml-secure-sign-smime #[nil "\300\301\302\"\207" [mml-secure-part "smime" sign] 3 (#$ . 8339) nil])
#@44 Add MML tags to PGP encrypt this MML part.
(defalias 'mml-secure-encrypt-pgp #[nil "\300\301!\207" [mml-secure-part "pgp"] 2 (#$ . 8499) nil])
#@49 Add MML tags to PGP/MIME encrypt this MML part.
(defalias 'mml-secure-encrypt-pgpmime #[nil "\300\301!\207" [mml-secure-part "pgpmime"] 2 (#$ . 8648) nil])
#@47 Add MML tags to S/MIME encrypt this MML part.
(defalias 'mml-secure-encrypt-smime #[nil "\300\301!\207" [mml-secure-part "smime"] 2 (#$ . 8810) nil])
(defalias 'mml-secure-message #[(method &optional modesym) "\306!\307\310=\204\311=\205\312\313	\n\"8 \314=\204#\311=\205*\312\313	\"8 \"\315\316 \210\212eb\210\317\320\321!\322Q\315\323#\203`\324\225\211b\210\325\326!\204d\327\330\331\301	\332
&\210\202d\333\334!\210)\f\247\203p\f`\232\202s\f`=\205x\335y+\207" [modesym method mml-sign-alist mml-encrypt-alist insert-loc tags prin1-to-string append sign signencrypt 2 assoc encrypt nil mml-unsecure-message re-search-forward "^" regexp-quote "\n" t 0 looking-at "<#secure" apply mml-insert-tag secure mode error "The message is corrupted. No mail header separator" 1 mail-header-separator] 8])
#@48 Remove security related MML tags from message.
(defalias 'mml-unsecure-message #[nil "\212db\210\300\301\302\303#\205\304\224\304\225|)\207" [re-search-backward "^<#secure.*>\n" nil t 0] 4 (#$ . 9640) nil])
#@122 Add MML tags to sign the entire message.
Use METHOD if given. Else use `mml-secure-method' or
`mml-default-sign-method'.
(defalias 'mml-secure-message-sign #[(&optional method) "\303\206\n	\206\n\n\304\"\207" [method mml-secure-method mml-default-sign-method mml-secure-message sign] 3 (#$ . 9856) nil])
#@133 Add MML tag to sign and encrypt the entire message.
Use METHOD if given. Else use `mml-secure-method' or
`mml-default-sign-method'.
(defalias 'mml-secure-message-sign-encrypt #[(&optional method) "\303\206\n	\206\n\n\304\"\207" [method mml-secure-method mml-default-sign-method mml-secure-message signencrypt] 3 (#$ . 10170) nil])
#@124 Add MML tag to encrypt the entire message.
Use METHOD if given. Else use `mml-secure-method' or
`mml-default-sign-method'.
(defalias 'mml-secure-message-encrypt #[(&optional method) "\303\206\n	\206\n\n\304\"\207" [method mml-secure-method mml-default-sign-method mml-secure-message encrypt] 3 (#$ . 10511) nil])
#@49 Add MML tag to encrypt/sign the entire message.
(defalias 'mml-secure-message-sign-smime #[nil "\300\301\302\"\207" [mml-secure-message "smime" sign] 3 (#$ . 10833) nil])
#@49 Add MML tag to encrypt/sign the entire message.
(defalias 'mml-secure-message-sign-pgp #[nil "\300\301\302\"\207" [mml-secure-message "pgp" sign] 3 (#$ . 11010) nil])
#@49 Add MML tag to encrypt/sign the entire message.
(defalias 'mml-secure-message-sign-pgpmime #[nil "\300\301\302\"\207" [mml-secure-message "pgpmime" sign] 3 (#$ . 11183) nil])
#@49 Add MML tag to encrypt/sign the entire message.
(defalias 'mml-secure-message-sign-pgpauto #[nil "\300\301\302\"\207" [mml-secure-message "pgpauto" sign] 3 (#$ . 11364) nil])
#@115 Add MML tag to encrypt and sign the entire message.
If called with a prefix argument, only encrypt (do NOT sign).
(defalias 'mml-secure-message-encrypt-smime #[(&optional dontsign) "\301\302\203\n\303\202\304\"\207" [dontsign mml-secure-message "smime" encrypt signencrypt] 3 (#$ . 11546) "P"])
#@115 Add MML tag to encrypt and sign the entire message.
If called with a prefix argument, only encrypt (do NOT sign).
(defalias 'mml-secure-message-encrypt-pgp #[(&optional dontsign) "\301\302\203\n\303\202\304\"\207" [dontsign mml-secure-message "pgp" encrypt signencrypt] 3 (#$ . 11852) "P"])
#@115 Add MML tag to encrypt and sign the entire message.
If called with a prefix argument, only encrypt (do NOT sign).
(defalias 'mml-secure-message-encrypt-pgpmime #[(&optional dontsign) "\301\302\203\n\303\202\304\"\207" [dontsign mml-secure-message "pgpmime" encrypt signencrypt] 3 (#$ . 12154) "P"])
#@115 Add MML tag to encrypt and sign the entire message.
If called with a prefix argument, only encrypt (do NOT sign).
(defalias 'mml-secure-message-encrypt-pgpauto #[(&optional dontsign) "\301\302\203\n\303\202\304\"\207" [dontsign mml-secure-message "pgpauto" encrypt signencrypt] 3 (#$ . 12464) "P"])
(provide 'mml-sec)
