libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit 8eb8e558f09b0457562e3db14ca494d73ea5998e
parent 9733f301ca5a33958affc0ba3dd3e31967c2733a
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Wed, 14 Jun 2017 21:41:49 +0300

Dropped non-functional Symbian support.

Diffstat:
MChangeLog | 5+++++
MREADME | 8++++----
Mdoc/libmicrohttpd.texi | 3+--
Msrc/microhttpd/daemon.c | 10----------
Dsymbian/MHD_config.h | 261-------------------------------------------------------------------------------
Dsymbian/README.txt | 13-------------
Dsymbian/SConstruct | 39---------------------------------------
7 files changed, 10 insertions(+), 329 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,8 @@ +Wed Jun 14 21:42:00 MSK 2017 + Added support for debug assert() and new configure parameter + --enable-asserts for debug builds. + Removed non-functional Symbian support. -EG + Mon Jun 05 23:34:00 MSK 2017 More internal refactoring: merged MHD_tls_connection_handle_read/write() with non-TLS version, diff --git a/README b/README @@ -48,10 +48,10 @@ main application should install a signal handler to handle SIGPIPE. libmicrohttpd should work well on GNU/Linux, BSD, OS X, W32 and z/OS. Note that HTTPS is not supported on z/OS (yet). We also have reports -of users using it on vxWorks and Symbian. Note that on platforms -where the compiler does not support the "constructor" attribute, you -must call "MHD_init" before using any MHD functions and "MHD_fini" -after you are done using MHD. +of users using it on vxWorks. Note that on platforms where the +compiler does not support the "constructor" attribute, you must call +"MHD_init" before using any MHD functions and "MHD_fini" after you +are done using MHD. Development Status diff --git a/doc/libmicrohttpd.texi b/doc/libmicrohttpd.texi @@ -448,8 +448,7 @@ have MHD processed network connections and data. Starting the daemon may also fail if a particular option is not implemented or not supported on the target platform (i.e. no support for @acronym{TLS}, threads or IPv6). TLS support generally depends on -options given during MHD compilation. Threaded operations (including -@code{MHD_USE_INTERNAL_POLLING_THREAD}) are not supported on Symbian. +options given during MHD compilation. @table @code @item MHD_NO_FLAG diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c @@ -5381,16 +5381,6 @@ MHD_start_daemon_va (unsigned int flags, goto free_and_fail; } -#ifdef __SYMBIAN32__ - if (0 != (*pflags & (MHD_USE_INTERNAL_POLLING_THREAD | MHD_USE_THREAD_PER_CONNECTION))) - { -#ifdef HAVE_MESSAGES - MHD_DLOG (daemon, - _("Threaded operations are not supported on Symbian.\n")); -#endif - goto free_and_fail; - } -#endif if ( (MHD_INVALID_SOCKET == daemon->listen_fd) && (0 == (*pflags & MHD_USE_NO_LISTEN_SOCKET)) ) { diff --git a/symbian/MHD_config.h b/symbian/MHD_config.h @@ -1,261 +0,0 @@ -/* MHD_config.h. Generated from MHD_config.h.in by configure. */ -/* MHD_config.h.in. Generated from configure.ac by autoheader. */ - -#define _GNU_SOURCE 1 - -/* This is a Cygwin system */ -#define CYGWIN 1 - -/* This is a FreeBSD system */ -/* #undef FREEBSD */ - -/* GNULIB_GC_RANDOM */ -#define GNULIB_GC_RANDOM 1 - -/* Define to 1 if you have the <arpa/inet.h> header file. */ -#define HAVE_ARPA_INET_H 1 - -/* Define to 1 if you have the declaration of `TCP_CORK', and to 0 if you - don't. */ -#define HAVE_DECL_TCP_CORK 0 - -/* Define to 1 if you have the <dlfcn.h> header file. */ -#define HAVE_DLFCN_H 1 - -/* Define to 1 if you have the <errno.h> header file. */ -#define HAVE_ERRNO_H 1 - -/* Define to 1 if you have the <fcntl.h> header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ -#define HAVE_FSEEKO 1 - -/* Provides IPv6 headers */ -#undef HAVE_INET6 - -/* Define to 1 if you have the <inttypes.h> header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have a functional curl library. */ -#define HAVE_LIBCURL 1 - -/* Define to 1 if you have the <limits.h> header file. */ -#define HAVE_LIMITS_H 1 - -/* Define to 1 if you have the <locale.h> header file. */ -#define HAVE_LOCALE_H 1 - -/* Define to 1 if you have the <math.h> header file. */ -#define HAVE_MATH_H 1 - -/* Define to 1 if you have the `memmem' function. */ -#define HAVE_MEMMEM 1 - -/* Define to 1 if you have the <memory.h> header file. */ -#define HAVE_MEMORY_H 1 - -/* Include error messages */ -#define HAVE_MESSAGES 1 - -/* Define to 1 if you have the <netdb.h> header file. */ -#define HAVE_NETDB_H 1 - -/* Define to 1 if you have the <netinet/in.h> header file. */ -#define HAVE_NETINET_IN_H 1 - -/* Define to 1 if you have the <netinet/tcp.h> header file. */ -#define HAVE_NETINET_TCP_H 1 - -/* Define to 1 if you have the <pthread.h> header file. */ -#define HAVE_PTHREAD_H 1 - -/* Define to 1 if you have the <stdint.h> header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the <stdio.h> header file. */ -#define HAVE_STDIO_H 1 - -/* Define to 1 if you have the <stdlib.h> header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the <strings.h> header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the <string.h> header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the <sys/mman.h> header file. */ -#define HAVE_SYS_MMAN_H 1 - -/* Define to 1 if you have the <sys/msg.h> header file. */ -#define HAVE_SYS_MSG_H 1 - -/* Define to 1 if you have the <sys/select.h> header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define to 1 if you have the <sys/socket.h> header file. */ -#define HAVE_SYS_SOCKET_H 1 - -/* Define to 1 if you have the <sys/stat.h> header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the <sys/time.h> header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the <sys/types.h> header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the <time.h> header file. */ -#define HAVE_TIME_H 1 - -/* Define to 1 if you have the <unistd.h> header file. */ -#define HAVE_UNISTD_H 1 - -/* disable HTTPS support */ -#define HTTPS_SUPPORT 0 - -/* Defined if libcurl supports AsynchDNS */ -/* #undef LIBCURL_FEATURE_ASYNCHDNS */ - -/* Defined if libcurl supports IDN */ -/* #undef LIBCURL_FEATURE_IDN */ - -/* Defined if libcurl supports IPv6 */ -/* #undef LIBCURL_FEATURE_IPV6 */ - -/* Defined if libcurl supports KRB4 */ -/* #undef LIBCURL_FEATURE_KRB4 */ - -/* Defined if libcurl supports libz */ -#define LIBCURL_FEATURE_LIBZ 1 - -/* Defined if libcurl supports NTLM */ -#define LIBCURL_FEATURE_NTLM 1 - -/* Defined if libcurl supports SSL */ -#define LIBCURL_FEATURE_SSL 1 - -/* Defined if libcurl supports SSPI */ -/* #undef LIBCURL_FEATURE_SSPI */ - -/* Defined if libcurl supports DICT */ -#define LIBCURL_PROTOCOL_DICT 1 - -/* Defined if libcurl supports FILE */ -#define LIBCURL_PROTOCOL_FILE 1 - -/* Defined if libcurl supports FTP */ -#define LIBCURL_PROTOCOL_FTP 1 - -/* Defined if libcurl supports FTPS */ -#define LIBCURL_PROTOCOL_FTPS 1 - -/* Defined if libcurl supports HTTP */ -#define LIBCURL_PROTOCOL_HTTP 1 - -/* Defined if libcurl supports HTTPS */ -#define LIBCURL_PROTOCOL_HTTPS 1 - -/* Defined if libcurl supports LDAP */ -#define LIBCURL_PROTOCOL_LDAP 1 - -/* Defined if libcurl supports TELNET */ -#define LIBCURL_PROTOCOL_TELNET 1 - -/* Defined if libcurl supports TFTP */ -#define LIBCURL_PROTOCOL_TFTP 1 - -/* This is a Linux system */ -/* #undef LINUX */ - -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ -#define LT_OBJDIR ".libs/" - -/* Compile client side code. This will enable running some test cases. */ -#define MHD_DEBUG_TLS 0 - -/* gcrypt lib version */ -#define MHD_GCRYPT_VERSION "1:1.2.4" - -/* gnuTLS lib version - used in conjunction with cURL */ -#define MHD_REQ_CURL_GNUTLS_VERSION "2.2.3" - -/* required cURL SSL version to run tests */ -#define MHD_REQ_CURL_OPENSSL_VERSION "0.9.8" - -/* required cURL version to run tests */ -#define MHD_REQ_CURL_VERSION "7.16.4" - -/* This is a MinGW system */ -/* #undef MINGW */ - -/* This is a NetBSD system */ -/* #undef NETBSD */ - -/* Define to 1 if your C compiler doesn't accept -c and -o together. */ -/* #undef NO_MINUS_C_MINUS_O */ - -/* This is an OpenBSD system */ -/* #undef OPENBSD */ - -/* This is a OS/390 system */ -/* #undef OS390 */ - -/* This is an OS X system */ -/* #undef OSX */ - -/* Some strange OS */ -/* #undef OTHEROS */ - -/* Name of package */ -#define PACKAGE "libmicrohttpd" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "libmicrohttpd@gnu.org" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "libmicrohttpd" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "libmicrohttpd 0.4.2" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "libmicrohttpd" - -/* Define to the home page for this package. */ -#define PACKAGE_URL "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "0.4.2" - -/* This is a Solaris system */ -/* #undef SOLARIS */ - -/* This is a BSD system */ -/* #undef SOMEBSD */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Version number of package */ -#define VERSION "0.9.0" - -/* This is a Windows system */ -/* #undef WINDOWS */ - -/* Number of bits in a file offset, on hosts where this is settable. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ -/* #undef _LARGEFILE_SOURCE */ - -/* Define for large files, on AIX-style hosts. */ -/* #undef _LARGE_FILES */ - -/* Need with solaris or errno doesnt work */ -/* #undef _REENTRANT */ - -/* Define curl_free() as free() if our version of curl lacks curl_free. */ -/* #undef curl_free */ diff --git a/symbian/README.txt b/symbian/README.txt @@ -1,13 +0,0 @@ -Note: plibc was removed from MHD after this was written, so most likely -the following won't work anymore right now. As usual, patches are welcome... - - -This directory contains a MHD_config.h that allows compilation on Symbian OS 9 -with OpenC 1.6 (possibly earlier and later versions too) and plibc. It also -contains a Scons-for-Symbian (http://code.google.com/p/scons-for-symbian/) -SConstruct file that compiler the code into a static library, as an example -of how to use this. It assumes that plibc is checked out into <libmicrohttpd -directory>/../plibc. - -Since Symbian lacks POSIX signals you need to run this in 'external select -loop' mode. diff --git a/symbian/SConstruct b/symbian/SConstruct @@ -1,39 +0,0 @@ -from scons_symbian import * - -def MicroHttpd(): - target = "microhttpd" - targettype = "lib" - libraries = [ "euser", "libc", "libstdcpp" ] - - uid3 = 0 - - sources = Glob("../src/daemon/*c", strings = True) - sources += Glob("../../plibc/src/*search.c", strings = True) - sources = [ s for s in sources if s.find("test") < 0 ] - sources = [ s for s in sources if s.find("https") < 0 ] - - includes = ['.', - '../src/include', - '../../libc/src/include', - ] - sysincludes = [ EPOC32_INCLUDE, - join(EPOC32_INCLUDE, 'stdapis'), - join(EPOC32_INCLUDE, 'stdapis', 'stlport'), - join(EPOC32_INCLUDE, 'libc'), - ] - defines = [ - "_STLP_NO_WCHAR_T", - ] - - return SymbianProgram( target, targettype, - sources = sources, - includes = includes, - sysincludes = sysincludes, - libraries = libraries, - defines = defines, - epocstacksize = 8192, - epocheapsize = (0x1000,0x100000), - uid3 = uid3, - ) - -microhttpd = MicroHttpd()