MinGW+Wine and "DBG: rndw32: get performance data problem: ec=2"

Simon Josefsson simon at josefsson.org
Wed Jan 16 21:26:16 CET 2008


Werner Koch <wk at gnupg.org> writes:

> On Wed, 16 Jan 2008 15:25, simon at josefsson.org said:
>
>> Libgcrypt can't know that the syscall will fail, but is there any reason
>> to believe that if the first of the 10 calls returns FILE_NOT_FOUND,
>> that another call to the same function with the same parameters will
>> succeed?  Possibly the code should just abort the loop in this
>> situation.
>
> Frankly, I don't know.  The code is by Peter Gutmann and I would need to
> do some research why it fails.

I suspect Wine doesn't emulate this part of Windows.

>> In any case, other calls to log_debug in that file are protected behind
>> a 'if (debug_me)' so I would suggest the patch below as a first step.
>
> Well, the reason for always printing it is so that you could send this
> complaint ;-).
>
> What about printing the warning only once per process?

Works for me.  How about this patch?

/Simon

Index: rndw32.c
===================================================================
--- rndw32.c	(revision 1280)
+++ rndw32.c	(working copy)
@@ -1,5 +1,5 @@
 /* rndw32.c  -  W32 entropy gatherer
- * Copyright (C) 1999, 2000, 2002, 2003, 2007 Free Software Foundation, Inc.
+ * Copyright (C) 1999, 2000, 2002, 2003, 2007, 2008 Free Software Foundation, Inc.
  * Copyright Peter Gutmann, Matt Thomlinson and Blake Coverett 1996-2006
  *
  * This file is part of Libgcrypt.
@@ -440,8 +440,11 @@
         }
       else
         {
-          log_debug ("rndw32: get performance data problem: ec=%ld\n",
-                     status);
+	  static int been_here = 1;
+	  if (been_here)
+	    log_debug ("rndw32: get performance data problem: ec=%ld\n",
+		       status);
+	  been_here = 0;
           break;
         }
     }



More information about the Gcrypt-devel mailing list