[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r7728 - in libmicrohttpd: . src/daemon
From: |
gnunet |
Subject: |
[GNUnet-SVN] r7728 - in libmicrohttpd: . src/daemon |
Date: |
Tue, 30 Sep 2008 16:49:09 -0600 (MDT) |
Author: grothoff
Date: 2008-09-30 16:49:09 -0600 (Tue, 30 Sep 2008)
New Revision: 7728
Modified:
libmicrohttpd/AUTHORS
libmicrohttpd/ChangeLog
libmicrohttpd/configure.ac
libmicrohttpd/src/daemon/daemon.c
Log:
cygwin
Modified: libmicrohttpd/AUTHORS
===================================================================
--- libmicrohttpd/AUTHORS 2008-09-29 03:23:07 UTC (rev 7727)
+++ libmicrohttpd/AUTHORS 2008-09-30 22:49:09 UTC (rev 7728)
@@ -12,6 +12,7 @@
Alex Sadovsky <address@hidden>
Greg Schohn <address@hidden>
Thomas Martin <address@hidden>
+Peter Ross <address@hidden>
RuXu W <address@hidden>
Documentation contributions also came from:
Modified: libmicrohttpd/ChangeLog
===================================================================
--- libmicrohttpd/ChangeLog 2008-09-29 03:23:07 UTC (rev 7727)
+++ libmicrohttpd/ChangeLog 2008-09-30 22:49:09 UTC (rev 7728)
@@ -1,3 +1,7 @@
+Tue Sep 30 16:48:08 MDT 2008
+ Make MHD useful to Cygwin users; detect IPv6 headers
+ in configure.
+
Sun Sep 28 14:57:46 MDT 2008
Unescape URIs (convert "%ef%e4%45" to "中国").
Modified: libmicrohttpd/configure.ac
===================================================================
--- libmicrohttpd/configure.ac 2008-09-29 03:23:07 UTC (rev 7727)
+++ libmicrohttpd/configure.ac 2008-09-30 22:49:09 UTC (rev 7728)
@@ -104,7 +104,6 @@
;;
*cygwin*)
AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a Cygwin system])
- AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
AM_CONDITIONAL(HAVE_GNU_LD, false)
LDFLAGS="$LDFLAGS -no-undefined"
;;
@@ -140,6 +139,27 @@
# Check for optional headers
AC_CHECK_HEADERS([sys/select.h sys/types.h sys/time.h sys/msg.h netdb.h
netinet/in.h time.h sys/socket.h sys/mman.h arpa/inet.h])
+# IPv6
+AC_MSG_CHECKING(for IPv6)
+AC_TRY_COMPILE([
+#if HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#if HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+],[
+int af=AF_INET6;
+int pf=PF_INET6;
+struct sockaddr_in6 sa;
+],[
+have_inet6=yes;
+AC_DEFINE([HAVE_INET6], [1], [Provides IPv6 headers])
+],
+have_inet6=no
+)
+AC_MSG_RESULT($have_inet6)
+
# libcurl (required for testing)
SAVE_LIBS=$LIBS
LIBCURL_CHECK_CONFIG(,,curl=1,curl=0)
Modified: libmicrohttpd/src/daemon/daemon.c
===================================================================
--- libmicrohttpd/src/daemon/daemon.c 2008-09-29 03:23:07 UTC (rev 7727)
+++ libmicrohttpd/src/daemon/daemon.c 2008-09-30 22:49:09 UTC (rev 7728)
@@ -341,8 +341,12 @@
{
struct MHD_Connection *pos;
struct MHD_Connection *connection;
- struct sockaddr_in6 addr6;
- struct sockaddr *addr = (struct sockaddr *) &addr6;
+#if HAVE_INET6
+ struct sockaddr_in6 addrstorage;
+#else
+ struct sockaddr_in addrstorage;
+#endif
+ struct sockaddr *addr = (struct sockaddr *) &addrstorage;
socklen_t addrlen;
unsigned int have;
int s, res_thread_create;
@@ -350,10 +354,12 @@
static int on = 1;
#endif
+#if HAVE_INET6
if (sizeof (struct sockaddr) > sizeof (struct sockaddr_in6))
abort (); /* fatal, serious error */
- addrlen = sizeof (struct sockaddr_in6);
- memset (addr, 0, sizeof (struct sockaddr_in6));
+#endif
+ addrlen = sizeof (addrstorage);
+ memset (addr, 0, sizeof (addrstorage));
s = ACCEPT (daemon->socket_fd, addr, &addrlen);
@@ -393,6 +399,7 @@
sizeof (struct in_addr)))
have++;
}
+#if HAVE_INET6
if (addrlen == sizeof (struct sockaddr_in6))
{
const struct sockaddr_in6 *a1 =
@@ -403,6 +410,7 @@
sizeof (struct in6_addr)))
have++;
}
+#endif
}
pos = pos->next;
}
@@ -826,7 +834,9 @@
struct MHD_Daemon *retVal;
int socket_fd;
struct sockaddr_in servaddr4;
+#if HAVE_INET6
struct sockaddr_in6 servaddr6;
+#endif
const struct sockaddr *servaddr = NULL;
socklen_t addrlen;
enum MHD_OPTION opt;
@@ -931,7 +941,16 @@
}
if ((options & MHD_USE_IPv6) != 0)
+#if HAVE_INET6
socket_fd = SOCKET (PF_INET6, SOCK_STREAM, 0);
+#else
+ {
+#if HAVE_MESSAGES
+ FPRINTF (stderr, "AF_INET6 not supported\n");
+#endif
+ return NULL;
+ }
+#endif
else
socket_fd = SOCKET (PF_INET, SOCK_STREAM, 0);
if (socket_fd < 0)
@@ -954,12 +973,15 @@
}
/* check for user supplied sockaddr */
+#if HAVE_INET6
if ((options & MHD_USE_IPv6) != 0)
addrlen = sizeof (struct sockaddr_in6);
else
+#endif
addrlen = sizeof (struct sockaddr_in);
if (NULL == servaddr)
{
+#if HAVE_INET6
if ((options & MHD_USE_IPv6) != 0)
{
memset (&servaddr6, 0, sizeof (struct sockaddr_in6));
@@ -968,6 +990,7 @@
servaddr = (struct sockaddr *) &servaddr6;
}
else
+#endif
{
memset (&servaddr4, 0, sizeof (struct sockaddr_in));
servaddr4.sin_family = AF_INET;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r7728 - in libmicrohttpd: . src/daemon,
gnunet <=