A new beta for GnuPG 2.1 has been released[0] and it may be production
ready soon. As part of the upcoming changes, the GPG_AGENT_INFO
environment variable will not be set anymore. The current gpg4me code
checks for this variable and gives a warning if it doesn't find it.
Given that it's not needed currently for 2.0 support if you use a fixed
socket, and the newest version will never set it, that check should
probably be changed.

I have included a small patch that changes the environment variable
check to use gpgme_engine_check_version to see if there is a PGP or CMS
engine available for use instead. 

CustaiCo

[0] http://lists.gnupg.org/pipermail/gnupg-announce/2014q4/000357.html
--- a/crypt-gpgme.c	2014-10-13 16:17:42.962449382 +0000
+++ b/crypt-gpgme.c	2014-10-13 16:34:00.862442303 +0000
@@ -4409,12 +4409,13 @@
 /* Initialization.  */
 static void init_gpgme (void)
 {
-  /* Make sure that gpg-agent is running.  */
-  if (! getenv ("GPG_AGENT_INFO"))
+  /* Make sure that gpgme is working.  */
+  if (gpgme_engine_check_version (GPGME_PROTOCOL_OpenPGP) != GPG_ERR_NO_ERROR &&
+      gpgme_engine_check_version (GPGME_PROTOCOL_CMS) != GPG_ERR_NO_ERROR)
     {
-      mutt_error (_("\nUsing GPGME backend, although no gpg-agent is running"));
+      mutt_error (_("\nGPGME backend reports no engines available"));
       if (mutt_any_key_to_continue (NULL) == -1)
-	mutt_exit(1);
+        mutt_exit(1);
     }
 }
 

Attachment: pgpy2k4gUFYwm.pgp
Description: PGP signature

Reply via email to