[Pkg-gnupg-commit] [libassuan] 04/08: Make socks5 test case a bit more robust.

Eric Dorland eric at moszumanska.debian.org
Wed Dec 2 06:17:57 UTC 2015


This is an automated email from the git hooks/post-receive script.

eric pushed a commit to branch master
in repository libassuan.

commit 429ff31fe72db8afedaad3f2d089c9c3b5dae41e
Author: Werner Koch <wk at gnupg.org>
Date:   Mon Nov 23 15:04:11 2015 +0100

    Make socks5 test case a bit more robust.
    
    * tests/socks5.c (main): Call gpgrt_init.  Check for write and read
    errors.  Allow building of some parts even w/o getaddrinfo.
---
 tests/socks5.c | 30 ++++++++++++++++++------------
 1 file changed, 18 insertions(+), 12 deletions(-)

diff --git a/tests/socks5.c b/tests/socks5.c
index 68659fc..7ab0438 100644
--- a/tests/socks5.c
+++ b/tests/socks5.c
@@ -39,16 +39,7 @@
 #include "../src/assuan.h"
 #include "common.h"
 
-#ifndef HAVE_GETADDRINFO
-int
-main (void)
-{
-  fputs ("socks5: getaddrinfo not supported\n", stderr);
-  return 77; /* Skip test.  */
-}
-#else /* HAVE_GETADDRINFO */
 
-

 /*
 
      M A I N
@@ -71,6 +62,7 @@ main (int argc, char **argv)
   int c;
   int lf_seen;
 
+  gpgrt_init ();
   if (argc)
     {
       log_set_prefix (*argv);
@@ -210,6 +202,7 @@ main (int argc, char **argv)
     }
   else
     {
+#ifdef HAVE_GETADDRINFO
       struct addrinfo hints, *res, *ai;
       int ret;
       int anyok = 0;
@@ -262,6 +255,12 @@ main (int argc, char **argv)
       freeaddrinfo (res);
       if (!anyok)
         exit (1);
+#else /*!HAVE_GETADDRINFO*/
+      (void)only_v4;
+      (void)only_v6;
+      fputs ("socks5: getaddrinfo not supported\n", stderr);
+      exit (77); /* Skip test.  */
+#endif /*!HAVE_GETADDRINFO*/
     }
 
   infp = es_fdopen_nc (sock, "rb");
@@ -279,9 +278,12 @@ main (int argc, char **argv)
       assuan_sock_close (sock);
       log_fatal ("opening outbound stream failed: %s\n", gpg_strerror (err));
     }
-
   es_fputs ("GET / HTTP/1.0\r\n\r\n", outfp);
-  es_fflush (outfp);
+  if (es_fflush (outfp))
+    {
+      err = gpg_error_from_syserror ();
+      log_error ("es_fflush failed: %s\n", gpg_strerror (err));
+    }
   lf_seen = 0;
   while ((c = es_fgetc (infp)) != EOF)
     {
@@ -297,9 +299,13 @@ main (int argc, char **argv)
       else
         lf_seen = 0;
     }
+  if (es_ferror (infp))
+    {
+      err = gpg_error_from_syserror ();
+      log_error ("es_fgetc failed: %s\n", gpg_strerror (err));
+    }
   es_fclose (infp);
   es_fclose (outfp);
 
   return errorcount ? 1 : 0;
 }
-#endif /*HAVE_GETADDRINFO*/

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/libassuan.git



More information about the Pkg-gnupg-commit mailing list