Blame SOURCES/gnupg-2.1.19-exponential.patch

0c33c1
diff -up gnupg-2.1.19/common/asshelp.c.exponential gnupg-2.1.19/common/asshelp.c
0c33c1
--- gnupg-2.1.19/common/asshelp.c.exponential	2017-03-01 14:04:33.000000000 +0100
0c33c1
+++ gnupg-2.1.19/common/asshelp.c	2017-03-15 17:18:14.279792654 +0100
0c33c1
@@ -434,12 +434,12 @@ start_new_gpg_agent (assuan_context_t *r
0c33c1
                        agent_program, gpg_strerror (err));
0c33c1
           else
0c33c1
             {
0c33c1
-              for (i=0; i < SECS_TO_WAIT_FOR_AGENT; i++)
0c33c1
+              for (i=2; i < SECS_TO_WAIT_FOR_AGENT*1000; i<<=1) /* start with 2 ms */
0c33c1
                 {
0c33c1
-                  if (verbose)
0c33c1
+                  if (verbose && i > 500)
0c33c1
                     log_info (_("waiting for the agent to come up ... (%ds)\n"),
0c33c1
-                              SECS_TO_WAIT_FOR_AGENT - i);
0c33c1
-                  gnupg_sleep (1);
0c33c1
+                              SECS_TO_WAIT_FOR_AGENT - i/1000);
0c33c1
+                  gnupg_usleep (i*1000);
0c33c1
                   err = assuan_socket_connect (ctx, sockname, 0, 0);
0c33c1
                   if (!err)
0c33c1
                     {
0c33c1
@@ -587,13 +587,13 @@ start_new_dirmngr (assuan_context_t *r_c
0c33c1
             {
0c33c1
               int i;
0c33c1
 
0c33c1
-              for (i=0; i < SECS_TO_WAIT_FOR_DIRMNGR; i++)
0c33c1
+              for (i=2; i < SECS_TO_WAIT_FOR_DIRMNGR*1000; i<<=1) /* start with 2 ms */
0c33c1
                 {
0c33c1
-                  if (verbose)
0c33c1
+                  if (verbose && i > 500)
0c33c1
                     log_info (_("waiting for the dirmngr "
0c33c1
                                 "to come up ... (%ds)\n"),
0c33c1
-                              SECS_TO_WAIT_FOR_DIRMNGR - i);
0c33c1
-                  gnupg_sleep (1);
0c33c1
+                              SECS_TO_WAIT_FOR_DIRMNGR - i/1000);
0c33c1
+                  gnupg_usleep (i*1000);
0c33c1
                   err = assuan_socket_connect (ctx, sockname, 0, 0);
0c33c1
                   if (!err)
0c33c1
                     {