Release Notes: This release removes the dependency on Plibc for W32 and makes various other improvements to the W32 build process. IPv4/IPv6 dual stack should now also work on W32. On Linux, support for TCP FASTOPEN was added. Keep-Alive with HTTP 1.0 is now supported if explicitly requested by the client. The release also adds explicit annotations to hide non-exported symbols and provides various other minor code cleanups.
Release Notes: This release adds support for SNI (multiple domain names on one IP with TLS). A few minor bugs were fixed, including a build issue (if SSL was disabled), a bogus offset calculation (when used with sendfile), a descriptor leak on shutdown (in conjunction with the resume/suspend feature), and a missing argument in an example.
Release Notes: This release includes a few minor security fixes. A MHD_suspend_connection API was added for suspending connections so that they can be resumed later when the server has more data. This was previously not possible when using a thread pool or internal select. A race on the shutdown signal in the thread pool mode and an issue with the post processor incorrectly handling a partial boundary at the beginning were also fixed. Processing of upload data in multipart encoding should now be significantly faster.
Release Notes: The connection handle is now passed as an additional argument to the URI log callback. Connection termination will now be signalled as successful if applications terminate a response stream early. MHD now releases an internal mutex before calling the termination callback, allowing clients to destroy the response object during the termination callback. This release fixes the implementation of the dual stack option. Dependency checks for OpenSSL and libcurl were improved. Build issues with OS X not supporting CLOCK_MONOTONIC were also fixed. The code is now compatible with libgcrypt 1.6.0.
Release Notes: This release implements the "SHOULD" clause of RFC 2616 section 8.1.4, which may reduce bandwidth consumption when clients cancel requests. This release fixes build errors with various combinations of operating systems, libc versions, and configure flags. It also fixes a use-after-free crash when using epoll() in combination with read errors.
Release Notes: epoll can now also be used with SSL connections. Following recent HTTP/1.1 clarfications, MHD no longer send a "Content-length" header in CONNECT responses. The "MHD_add_connection" call now consistently sets an "errno" value to indicate the cause of errors. Connections added this way are now always processed immediately. The release also fixes a recently-introduced bug which prevented HTTP pipelining from working properly in some cases and a build error in conjunction with the "--disable-messages" configure option. This release works around issues with the shutdown system call on W32.
Release Notes: This release adds support for epoll-based event loops (Linux-only), adds various new options (MHD_USE_DUAL_STACK for binding to IPv4 and IPv6 at the same time, MHD_USE_PIPE_FOR_SHUTDOWN to cleanly support MHD_quiesce_daemon on non-Linux systems, MHD_CONNECTION_INFO_CONNECTION_FD to allow COMET applications to disable TCP Nagle, MHD_OPTION_CONNECTION_MEMORY_INCREMENT for better control over buffer size allocations), and fixes various minor bugs.
Release Notes: This release offers performance improvements for POST processing, a new API call to reduce the number of select calls (if in "external" select mode), a new function to allow applications to stop MHD from processing new incoming connections while finishing ongoing requests, and various improvments to the documentation, including a larger demonstration server.
Release Notes: This is a bugfix release. It fixes an initialization problem on some platforms and a bug in the postprocessor's URL parser. SSL connections are no longer dropped if the system uptime is less than the connection timeout.
Release Notes: This release allows creating responses with zero bytes using MHD_create_response_from_callback. A few "const" statements have been added to allow keeping more static strings in ROM. The code has been modified to work with PlibC 0.1.7 on Windows. The post processor now tolerates uploads which don't contain "\r\n" and also returns keys which don't have a matching value.