Hi, I am not sure if this of interest for anybody here on this list nor if it was already discussed before. But as I did not find any information via a google search I post this here anyway. First I wanted gnus to automatically sign all sent messages. This was rather easy as a simple (add-hook gnus-message-setup-hook 'mml-secure-message-sign-pgpmime) did the job. But then I wanted to go one step further and not only sign but also encrypt all messages, at least if this is possible (i.e. if the recipient also uses PGP). The first attempt was the following: (add-hook gnus-message-setup-hook 'mml-secure-message-encrypt-pgpmime) But this _always_ tries to encrypt the message, even if the recipient has no PGP key. So I wrote the following hook: (add-hook 'message-send-hook (lambda () (let ((recipient (message-fetch-field "To"))) (cond ((and (not (null recipient)) (or (pgg-lookup-key recipient) (pgg-fetch-key pgg-default-keyserver-address recipient))) (mml-secure-message-encrypt-pgpmime)) (t (mml-secure-message-sign-pgpmime)))))) This works perfectly for me. Gnus encrypts the message if gpg already has the recipient's key in its keyring or if it can get the key from a keyserver. Otherwise the message is only signed. Maybe this helps someone. -- God is real ... \|/ ____ \|/ ... unless declared integer. "@'/ ,. \`@" \_| \__/ |_/ Mail me : news@u-h-l.de \__U_/ WWW : www.u-h-l.de PGP : 0x128F9DEC