gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [libmicrohttpd] branch master updated: Proper detection of


From: gnunet
Subject: [GNUnet-SVN] [libmicrohttpd] branch master updated: Proper detection of .sin?_len members, fixed build on *BSD
Date: Sat, 25 May 2019 10:39:02 +0200

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

karlson2k pushed a commit to branch master
in repository libmicrohttpd.

The following commit(s) were added to refs/heads/master by this push:
     new 2eb0a5f9 Proper detection of .sin?_len members, fixed build on *BSD
2eb0a5f9 is described below

commit 2eb0a5f92d7496e36bbdcb7c1c8ba1d3a829ced0
Author: Evgeny Grin (Karlson2k) <address@hidden>
AuthorDate: Sat May 25 11:06:05 2019 +0300

    Proper detection of .sin?_len members, fixed build on *BSD
---
 configure.ac                          | 9 ++++-----
 src/lib/daemon_start.c                | 4 ++--
 src/microhttpd/daemon.c               | 8 ++++----
 src/microhttpd/test_shutdown_select.c | 2 +-
 4 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/configure.ac b/configure.ac
index 53d37ca4..42a1f361 100644
--- a/configure.ac
+++ b/configure.ac
@@ -774,10 +774,9 @@ AM_CONDITIONAL([HAVE_ZLIB], [[test "x$have_zlib" = xyes]])
 # Check for generic functions
 AC_CHECK_FUNCS([rand random])
 
-AC_CHECK_MEMBER([struct sockaddr_in.sin_len],
-   [ AC_DEFINE(HAVE_SOCKADDR_IN_SIN_LEN, 1, [Do we have sockaddr_in.sin_len?])
-   ],
-   [],
+AC_CHECK_MEMBERS([struct sockaddr_in.sin_len, struct sockaddr_in6.sin6_len, 
+                  struct sockaddr_storage.ss_len],
+   [], [],
    [
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -849,7 +848,7 @@ int main(void)
   {
     zr_mem(&sa, c_addr_size);
     sa.sin_family = AF_INET;
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
     sa.sin_len = c_addr_size;
 #endif
     if (0 == bind (sckt, (struct sockaddr *)&sa, c_addr_size))
diff --git a/src/lib/daemon_start.c b/src/lib/daemon_start.c
index 8e2c9fb5..52124c77 100644
--- a/src/lib/daemon_start.c
+++ b/src/lib/daemon_start.c
@@ -310,7 +310,7 @@ open_listen_socket (struct MHD_Daemon *daemon)
 #ifdef IN6ADDR_ANY_INIT
          sin6->sin6_addr = static_in6any;
 #endif
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#if HAVE_STRUCT_SOCKADDR_IN6_SIN6_LEN
          sin6->sin6_len = sizeof (struct sockaddr_in6);
 #endif
        }
@@ -327,7 +327,7 @@ open_listen_socket (struct MHD_Daemon *daemon)
          sin4->sin_port = htons (daemon->listen_port);
          if (0 != INADDR_ANY)
            sin4->sin_addr.s_addr = htonl (INADDR_ANY);
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#if HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
          sin4->sin_len = sizeof (struct sockaddr_in);
 #endif
        }
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c
index b2185b4c..2ee367c4 100644
--- a/src/microhttpd/daemon.c
+++ b/src/microhttpd/daemon.c
@@ -5981,7 +5981,7 @@ MHD_start_daemon_va (unsigned int flags,
 #ifdef IN6ADDR_ANY_INIT
              servaddr6.sin6_addr = static_in6any;
 #endif
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#if HAVE_STRUCT_SOCKADDR_IN6_SIN6_LEN
              servaddr6.sin6_len = sizeof (struct sockaddr_in6);
 #endif
              servaddr = (struct sockaddr *) &servaddr6;
@@ -5996,7 +5996,7 @@ MHD_start_daemon_va (unsigned int flags,
              servaddr4.sin_port = htons (port);
              if (0 != INADDR_ANY)
                servaddr4.sin_addr.s_addr = htonl (INADDR_ANY);
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#if HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
              servaddr4.sin_len = sizeof (struct sockaddr_in);
 #endif
              servaddr = (struct sockaddr *) &servaddr4;
@@ -6084,8 +6084,8 @@ MHD_start_daemon_va (unsigned int flags,
               0,
               sizeof (struct sockaddr_storage));
       addrlen = sizeof (struct sockaddr_storage);
-#ifdef HAVE_SOCKADDR_IN_SIN_LEN
-      bindaddr.sin_len = addrlen;
+#ifdef HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN
+      bindaddr.ss_len = addrlen;
 #endif
       if (0 != getsockname (listen_fd,
                             (struct sockaddr *) &bindaddr,
diff --git a/src/microhttpd/test_shutdown_select.c 
b/src/microhttpd/test_shutdown_select.c
index 934cde79..a334f63f 100644
--- a/src/microhttpd/test_shutdown_select.c
+++ b/src/microhttpd/test_shutdown_select.c
@@ -173,7 +173,7 @@ start_socket_listen(int domain)
   memset (&sock_addr, 0, sizeof (struct sockaddr_in));
   sock_addr.sin_family = AF_INET;
   sock_addr.sin_port = htons (0);
-#if HAVE_SOCKADDR_IN_SIN_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
   sock_addr.sin_len = sizeof (struct sockaddr_in);
 #endif
   addrlen = sizeof (struct sockaddr_in);

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]