(require 'riece-message)
(require 'riece-identity)
+(autoload 'widget-convert-button "wid-edit")
(autoload 'epg-make-context "epg")
(autoload 'epg-decrypt-string "epg")
(autoload 'epg-encrypt-string "epg")
(autoload 'epg-passphrase-callback-function "epg")
(autoload 'epg-context-set-passphrase-callback "epg")
+(autoload 'epg-cancel "epg")
(eval-when-compile
(autoload 'riece-command-send-message "riece-commands"))
(defun riece-epg-passphrase-callback-function-for-decrypt (context key-id
identity)
(if (eq key-id 'SYM)
- (let ((entry (riece-identity-assoc identity riece-epg-passphrase-alist))
- passphrase)
+ (let ((entry (riece-identity-assoc identity riece-epg-passphrase-alist)))
(if (cdr entry)
(copy-sequence (cdr entry))
(epg-cancel context)))
(interactive)
(let ((context (epg-make-context))
(string (buffer-substring (riece-line-beginning-position)
- (riece-line-end-position)))
- entry)
+ (riece-line-end-position))))
(epg-context-set-passphrase-callback
context
(cons #'riece-epg-passphrase-callback-function
t)))
(riece-display-message
(riece-make-message (riece-current-nickname) riece-current-channel
- (concat "[decrypted:" string "]") nil t))
+ (concat "[encrypted:" string "]") nil t))
(let ((next-line-add-newlines t))
(next-line 1))))
(when (string-match "\\`\\[encrypted:\\(.*\\)]"
(riece-message-text message))
(let ((context (epg-make-context))
- (string (match-string 1 (riece-message-text message)))
- entry)
+ (string (match-string 1 (riece-message-text message))))
(epg-context-set-passphrase-callback
context
(cons #'riece-epg-passphrase-callback-function-for-decrypt
(progn
(riece-message-set-text
message
- (format "[decrypted:%s]"
+ (format "[encrypted:%s]"
(riece-epg-decrypt-string-for-identity
context string (riece-message-target message)))))
(error
'riece-epg-encryption-target (riece-message-target message)
(riece-message-text message))
(if riece-debug
- (message "Couldn't decrypt: %s" (cdr error))))))))
+ (message "Couldn't decrypt: %s" (cdr error))
+ (message "Couldn't decrypt")))))))
message)
(defun riece-epg-add-encrypted-button (start end)
(delete-region from to)
(save-excursion
(goto-char from)
- (insert "[decrypted:" plain "]")))))
+ (insert "[encrypted:" plain "]")))))
(defun riece-epg-requires ()
(if (memq 'riece-button riece-addons)