Status with gpgme_op_verify in GPGME

Marcus Brinkmann Marcus.Brinkmann@ruhr-uni-bochum.de
Tue Feb 26 23:41:02 2002


On Tue, Feb 26, 2002 at 05:06:24PM +0100, Laurent Cheylus wrote:
> Marcus Brinkmann wrote :
> 
> > Yes, that was a small thing missing in the implementation.  Could you please try
> > the following patch if that works for you?
> 
> Bad news, it does not work for me.

Yes, I made a stupid mistake (I didn't skip the whitespace after looking for
it).  I am sorry about that.  If you add the below diff on top of the
previous diff, it should work.  I did some testing now, so I am quite confident.
If it doesn't work, I will need more info from you (in particular the output of
gpg --status-fd 2 --verify .... and which version you are using).

Thanks,
Marcus

Index: verify.c
===================================================================
RCS file: /cvs/gnupg/gpgme/gpgme/verify.c,v
retrieving revision 1.22
diff -u -r1.22 verify.c
--- verify.c	2002/02/25 19:08:51	1.22
+++ verify.c	2002/02/26 22:39:05
@@ -193,9 +193,14 @@
     case STATUS_ERRSIG:
       /* The return code is the 6th argument, if it is 9, the problem
 	 is a missing key.  */
-      for (p = args, i = 0; p && i < 5; i++)
-	p = strchr (p, ' ');
-      if (p && *(++p) == '9' && *(++p) == '\0')
+      for (p = args, i = 0; p && *p && i < 5; i++)
+        {
+          p = strchr (p, ' ');
+          if (p)
+            while (*p == ' ')
+              p++;
+        }
+      if (p && *(p++) == '9' && (*p == '\0' || *p == ' '))
 	ctx->result.verify->status = GPGME_SIG_STAT_NOKEY;
       else
 	ctx->result.verify->status = GPGME_SIG_STAT_ERROR;

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org brinkmd@debian.org
Marcus Brinkmann              GNU    http://www.gnu.org    marcus@gnu.org
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de