blob: 57dd440f12055bc0baf3d310baa2f51ddc47813d [file] [log] [blame]
Daniel Erat748945e2015-08-11 09:22:30 -06001Wed May 13 11:49:09 CEST 2015
2 Releasing libmicrohttpd 0.9.42. -CG
3
4Wed May 13 11:33:59 CEST 2015
5 Fix off-by-one in MHD_start_daemon_va() error handling logic
6 when initialization of threads for thread pool fails for some
7 reason. -CG/JC
8
9Thu May 7 17:05:46 CEST 2015
10 Add support for poll() in W32. -EG
11
12Wed May 6 18:07:38 CEST 2015
13 Fix #3784: actually implement MHD_CONNECTION_INFO_SOCKET_CONTEXT. -asherkin
14
15Thu Apr 30 00:03::49 CEST 2015
16 Releasing libmicrohttpd 0.9.41. -CG
17
18Thu Apr 30 00:02:33 CEST 2015
19 Fix issue where resumed connections would not continue
20 unless other requests are active in certain
21 event-loop modes. Thanks to Mike Castillo for reporting. -CG
22
23Wed Apr 15 03:16:18 CEST 2015
24 Fixing issue #3753 (testcase issue). -CG
25
26Wed Apr 15 00:30:34 CEST 2015
27 Fix looping issue when using MHD_USE_POLL_INTERNALLY
28 and a client times out. -LB
29
30Sun Apr 12 21:48:50 CEST 2015
31 Fix looping issue when combining MHD_USE_EPOLL_LINUX_ONLY
32 with HTTPS and slow clients. -CG
33
34Fri Apr 10 22:02:27 CEST 2015
35 Fix logic to add "Connection: Close" that was broken in 0.9.38
36 when adding MHD_RF_HTTP_VERSION_1_0_ONLY. -CG
37
38Fri Apr 10 00:38:40 CEST 2015
39 Ensure fast termination in MHD_USE_THREAD_PER_CONNECTION
40 mode on W32 by using signal pipe. -CG
41
42Thu Apr 9 09:01:15 CEST 2015
43 Fixing issue with undrained signal pipe when using
44 MHD_USE_SELECT_INTERNALLY and MHD_USE_POLL in combination
45 with MHD_resume_connection(), causing 100% CPU usage. -DD
46
47Tue Apr 7 00:12:36 CEST 2015
48 Releasing libmicrohttpd 0.9.40. -CG
49
50Sat Apr 4 18:28:24 CEST 2015
51 Fix potential deadlock issue in MHD_USE_THREAD_PER_CONNECTION
52 mode if shutdown is initiated while connections are active. -CG
53
54Sat Apr 4 17:48:13 CEST 2015
55 Fix issue in thread-pool mode where a MHD_stop_daemon()
56 might not reach threads that stopped listening because
57 we hit the maximum number of concurrent connections and
58 the option MHD_USE_PIPE_FOR_SHUTDOWN was also not used.
59 Testcase added as well. -CG
60
61Fri Apr 3 12:55:31 CEST 2015
62 Update HTTPS testcases to avoid SSLv3, as SSLv3 is dead.
63
64Fri Apr 3 12:25:28 CEST 2015
65 Do not enforce FD_SETSIZE-limit on worker control
66 pipe when using MHD_USE_EPOLL_LINUX_ONLY (#3751). -MH/CG
67
68Tue Mar 31 10:28:26 CEST 2015
69 Adding MHD_OPTION_NOTIFY_CONNECTION,
70 MHD_CONNECTION_NOTIFY_STARTED,
71 MHD_CONNECTION_NOTIFY_CLOSED and
72 MHD_CONNECTION_INFO_SOCKET_CONTEXT to allow
73 applications to trigger operations when TCP
74 connections start or end, instead of just
75 exposing HTTP requests starting and ending. -RG/CG
76
77Thu Feb 26 09:55:43 CET 2015
78 Fixing bug that prevented MHD_OPTION_HTTPS_MEM_DHPARAMS
79 from working within a MHD_OPTION_ARRAY. -DD
80
81Sun Feb 8 01:24:38 CET 2015
82 Adding MHD_OPTION_HTTPS_KEY_PASSWORD as proposed by
83 Andrew Basile. -CG/AB
84
85Wed Feb 4 20:34:22 CET 2015
86 Fix issue where for HTTP/1.0-clients that set
87 Connection: Keep-Alive header a response of
88 indefinite size was generated with chunked encoding. -CG
89
90Sun Jan 18 20:09:06 CET 2015
91 Fix potential infinite loop on shutdown in multi-threaded mode
92 under certain conditions. -CG
93
94Mon Dec 22 16:33:18 CET 2014
95 Releasing 0.9.39. -CG
96
97Mon Dec 22 13:02:36 CET 2014
98 Fix generated compiler flags for Solaris Studio linker (#3584). -CG
99
100Sat Dec 20 00:35:40 CET 2014
101 Adding MHD_http_unescape() to public API (#3585). -CG
102 Updating documentation to document
103 MHD_is_feature_supported(). -CG
104
105Thu Dec 4 00:43:10 CET 2014
106 If "Connection: upgrade" is requested, do not add
107 "Connection: Keep-Alive" in the response. -GJ
108
109Tue Nov 18 13:52:29 CET 2014
110 Call MHD_cleanup_connections() during MHD_DAEMON_INFO_CURRENT_CONNECTIONS
111 processing for more accurate results. -MS
112
113Wed Oct 29 20:45:21 CET 2014
114 Adding MHD_OPTION_LISTENING_ADDRESS_REUSE option allowing clients
115 to force allowing re-use of the address:port combination
116 (SO_REUSEPORT). -MS
117
118Wed Oct 29 16:27:05 CET 2014
119 Adding MHD_DAEMON_INFO_CURRENT_CONNECTIONS to allow clients
120 to query the number of active connections. -MS
121
122Fri Oct 3 14:28:58 CEST 2014
123 Releasing 0.9.38. -CG
124
125Mon Sep 29 22:25:34 CEST 2014
126 Properly decode '+' in URL-encoded POST data. -CG/KM
127
128Fri Sep 12 17:32:09 CEST 2014
129 Fix --disable-dauth configure option (#3543). -doostee
130
131Thu Jun 26 21:06:04 CEST 2014
132 Fix failure to terminate 'instantly' in thread-per-connection
133 mode if there is a client with open connections.
134 Thanks to Kenneth Mastro for reporting. -CG
135
136Sun Jun 22 12:22:08 CEST 2014
137 Actually, avoid locking on response as responses must
138 not be modified in a connection-specific way; instead
139 modify the connection's data buffer to add missing
140 responses headers. If we are forced to add
141 "Connection: close", suppress output of conflicting
142 application-provided "Connection: Keep-Alive" header. -CG
143
144Sun Jun 22 00:22:08 CEST 2014
145 Lock on response if adding headers, needed if response
146 object is shared across threads and connections. -CG
147
148Thu Jun 19 17:32:32 CEST 2014
149 Ensure that listen FD is bound to epoll FD even before
150 MHD_run() is called if running with MHD_USE_EPOLL_LINUX_ONLY
151 in combination with 'external select' mode. Thanks to
152 Marcos Pindado Sebastian for reporting. -CG
153
154Sun Jun 8 15:10:44 CEST 2014
155 Add 'MHD_set_response_options' as a way to set per-response
156 flags. Add flag to force HTTP 1.0-only conservative
157 behavior, in particular suppressing adding "Connection"
158 headers. -CG
159
160Mon Jun 2 00:03:28 CEST 2014
161 Added back unescaping for URI path (#3413) but without
162 unescaping '+' (#3371) to remain compatible with
163 MHD 0.9.34 and before. Note that applications providing
164 a custom MHD_OPTION_UNESCAPE_CALLBACK are no longer expected
165 to replace '+' with ' ', as that is now done separately for
166 the locations where this transformation is appropriate.
167 Releasing 0.9.37. -CG
168
169Wed May 28 15:30:56 CEST 2014
170 Properly applying patch that was supposed to be
171 committed on "May 2 20:22:45 CEST 2014" to address
172 infinite loop (DoS) when HTTP connection is reset (#3392). -GM
173
174Sun May 25 20:18:27 CEST 2014
175 Fixed W32 build issues. -EG
176 Releasing 0.9.36. -CG
177
178Sat May 17 06:47:00 CEST 2014
179 Fix notifying client about completed request twice
180 under certain circumstances. -CG
181
182Tue May 13 18:24:37 CEST 2014
183 Fix accidental transmission of footer termination '\r\n'
184 for responses with zero byte payload and non-chunked
185 encoding (#3397). Thanks to amatus for reporting. -CG
186
187Sun May 4 11:05:26 CEST 2014
188 Fix gnutls header check to make it cross-compile aware. -BK
189
190May 2 20:22:45 CEST 2014
191 Fix infinite loop (DoS) when HTTP connection is reset (#3392). -GM
192 Fix possible issue from combination of epoll and suspend/resume
193 logic if edge trigger event is lost; also simplify logic to
194 maintain simpler invariants on the epoll state. -CG
195 Use OpenSSL cipher list "HIGH" in libmicrospdy (#3391). -CG
196 Releasing 0.9.35. -CG
197
198Thu Apr 10 09:39:38 CEST 2014
199 Removed unescaping for URI path (#3371) as '+' should not
200 be converted to space in accordance with
201 http://www.w3.org/TR/html401/appendix/notes.html#ampersands-in-uris
202 and http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1
203 Note that we now also no longer convert '#38;' to '&'; if needed,
204 the application needs to apply unescaping to the path of the URI
205 itself (before, MHD unescaped '#38;' but not '&', so this
206 inconsistency was now resolved by simply not unescaping anything
207 before the first '&'). -CG
208
209Tue Apr 08 15:35:44 CET 2014
210 Added support for W32 native threads.
211 Added --with-threads=LIB configure parameter. -EG
212
213Mon Apr 7 13:25:30 CEST 2014
214 Add MHD_OPTION_HTTPS_MEM_DHPARAMS to allow applications
215 to enable PFS. -HB/CG
216
217Tue Apr 01 07:10:23 CET 2014
218 Added usage of native mutex on W32. -EG
219
220Sat Mar 29 16:12:03 CET 2014
221 Added MHD_is_feature_supported() function. -EG
222
223Thu Mar 27 14:47:54 CET 2014
224 Used larger FD_SETSIZE internally on W32.
225 Extended API to work with non-default FD_SETSIZE. -EG
226
227Tue Mar 25 12:53:55 CET 2014
228 Fix limiting by IPv6 address. -EG
229
230Tue Mar 25 09:06:13 CET 2014
231 Added more FD_SETSIZE checks.
232 Implemented FD_SETSIZE checks for W32. -EG
233
234Wed Mar 05 13:15:05 CET 2014
235 Cleanup and refactoring of configure.ac.
236 m4 macros updated.
237 Custom configure macros replaced with autoconf archive macros.
238 SPDY disabled by default on W32.
239 Changed configure flag from '--disable-pipe' to
240 '--enable-socketpair'.
241 Added configure flags '--disable-doc' and '--disable-examples'.
242 Narrowed down extrenal lib specific compiler and linker flags
243 usage. -EG
244
245Wed Feb 26 17:42:34 CET 2014
246 Refactoring of configure.ac: custom macros replaced with macros
247 from Autoconf Archive.
248 Minor corrections of configure.ac.
249 Excluded pthread flags from global flags, pthread now used only
250 where required.
251 W32: fixed .dll resource compilation with '-isystem' CPPFLAG.
252 W32: improved header compatibility with MSVC.
253 W32: now tested on Win64, compiled by MinGW-w64. -EG
254
255Mon Feb 24 23:13:53 CET 2014
256 Added support for TCP FASTOPEN. -SHT
257 Releasing 0.9.34. -CG
258
259Thu Feb 20 14:17:05 CET 2014
260 W32: Added creation of libmicrohttpd.lib, libmicrohttpd.def,
261 libmicrohttpd.exp and libmicrohttpd-static.lib for easy use
262 compiled MHD with MSVC.
263 W32: Use MS lib.exe tool if available for creating MSVC staff.
264 W32: Added .dll information resource. -EG
265
266Tue Feb 18 19:46:45 CET 2014
267 Removed dependency on plibc for simpler compilation for W32.
268 Added configure option "--disable-pipes" to use socketpairs
269 instead of pipes for signalling to child threads. Pipes are
270 always disabled on W32.
271 Some code refactoring. -EG
272
273Sat Feb 8 15:08:35 CET 2014
274 Corrected some uses of 'int' vs. 'size_t'. -EG/CG
275
276Wed Jan 22 09:44:33 CET 2014
277 MHD_USE_DUAL_STACK in libmicrohttpd currently just *inhibits
278 setting* the IPV6_V6ONLY socket option, but per Microsoft's
279 documentation the default on Windows is that this is enabled, thus
280 MHD_USE_DUAL_STACK will not work (since it leaves the
281 default). libmicrohttpd should probably just unconditionally set
282 IPV6_V6ONLY to the desired value when the option is available. -LJ
283
284Wed Jan 1 21:38:18 CET 2014
285 Allow Keep-Alive with HTTP 1.0 (if explicitly requested),
286 and automatically set "Connection: Keep-Alive" in response
287 in this case as well. -CG
288
289Tue Dec 24 12:27:39 CET 2013
290 Adding explicit annotations to hide symbols that are not for
291 export in the C code (gcc 4.0 or higher only). -CG
292
293Sun Dec 22 14:54:30 CET 2013
294 Adding a few lines to avoid warnings from picky compilers. -CG
295
296Sat Dec 21 17:26:08 CET 2013
297 Fixed an issue with a missing argument in the postexample.
298 Fixed issue with bogus offset increment involving sendfile
299 on GNU/Linux. Adding support for SNI.
300 Releasing 0.9.33. -CG
301
302Mon Dec 9 21:41:57 CET 2013
303 Fix for per-worker daemon pipes enabled with
304 MHD_USE_SUSPEND_RESUME that were not closed in
305 MHD_stop_daemon. -MH
306
307Sat Dec 7 00:44:49 CET 2013
308 Fixing warnings and build issue if --disable-https is given
309 to configure. -CG
310
311Tue Dec 3 21:25:56 CET 2013
312 Security fix: do not read past 0-terminator when unescaping
313 strings (thanks to Florian Weimer for reporting).
314 Releasing 0.9.32. -CG
315
316Tue Dec 3 21:05:38 CET 2013
317 Signaling n times for shutdown works, but for resume we need to
318 wake up the correct daemon. Even if we signal n times in that
319 case also, there's no guarantee that some daemon can't run
320 through its select loop more than once before the daemon we want
321 to wake up gets a chance to read. Thus we need a signal pipe
322 per thread in the thread pool IF MHD_suspend_connection is used.
323 This introduces a new flag MHD_USE_SUSPEND_RESUME to add those
324 additional pipes and only allow MHD_suspend_connection to be
325 used in conjunction with this flag.
326
327 Also, as MHD_resume_connection() will be called on a non-daemon
328 thread, but none of the queue insert/delete calls are thread safe,
329 we need to be concerned about (a) corrupting the queue, and (b)
330 having to add mutex protection around every access to the queues,
331 including loops through timer queues, etc. This wasn't a problem
332 before adding resume; even suspend should be safe since it happens
333 in a callback from the daemon.
334
335 I think it's easier to (a) have MHD_suspend_connection() move the
336 connection to a suspended queue, (b) have MHD_resume_connection()
337 mark the connection as resuming, and then (c) do all the actual
338 queue manipulations in MHD_select (poll, epoll, etc.) to move the
339 resumed connections back to their normal queues, in response to
340 the wake up. The changes are simpler & cleaner. There is a cost to
341 the basic select loop that is avoided by making suspend/resume a
342 startup option. The per-worker pipes can then also be enabled only
343 with that option set. -MH
344
345Fri Nov 29 20:17:03 CET 2013
346 Eliminating theoretical stack overflow by limiting length
347 of URIs in authentication headers to 32k (only applicable
348 if the application explicitly raised the memroy limits,
349 and only applies to MHD_digest_auth_check). Issue was
350 reported by Florian Weimer. -CG
351
352Tue Nov 26 01:26:15 CET 2013
353 Fix race on shutdown signal with thread pool on non-Linux
354 systems by signalling n times for n threads. -CG
355
356Sun Nov 24 13:41:15 CET 2013
357 Introduce state to mark connections in suspended state (with
358 epoll); add missing locking operations in MHD_suspend_connection.
359 Fix definition of MHD_TLS_CONNECTION_INIT. -MH/JC
360
361Wed Oct 30 09:34:20 CET 2013
362 Fixing issue in PostProcessor when getting partial boundary
363 at the beginning, expanding test suite. -CG
364
365Sun Oct 27 15:19:44 CET 2013
366 Implementing faster processing of upload data in multipart
367 encoding (thanks to performance analysis by Adam Homolya). -CG
368
369Thu Oct 24 10:40:03 CEST 2013
370 Adding support for connection flow control via
371 MHD_suspend_connection and MHD_resume_connection. -CG
372
373Sat Oct 19 16:40:32 CEST 2013
374 Releasing libmicrohttpd 0.9.31. -CG
375
376Mon Sep 23 20:24:48 CEST 2013
377 Fixing build issues on OS X with CLOCK_MONOTONIC not being
378 implemented on OS X. -CG
379
380Mon Sep 23 14:15:00 CEST 2013
381 Make libmicrohttpd play nicely with upcoming libgcrypt 1.6.0. -CG
382
383Fri Sep 20 17:01:37 CEST 2013
384 Improved configure checks for cURL. -CG
385
386Wed Sep 18 18:29:24 CEST 2013
387 Signal connection termination as OK (and not as ERROR) if the
388 stream was terminated by the callback returning
389 MHD_CONTENT_READER_END_OF_STREAM. Also, release response
390 mutex before calling the termination callback, to avoid
391 possible deadlock if the client destroys the response in
392 the termination callback (due to non-recursiveness of the
393 lock). -CG
394
395Wed Sep 18 14:31:35 CEST 2013
396 Adding #define MHD_HTTP_HEADER_ACCESS_CONTROL_ALLOW_ORIGIN. -CG
397
398Tue Sep 17 21:32:47 CEST 2013
399 Also pass MHD connection handle in URI log callback. -CG
400
401Fri Sep 6 10:00:44 CEST 2013
402 Improved check for proper OpenSSL version for
403 libmicrospdy. -CG
404
405Wed Sep 4 17:23:15 CEST 2013
406 Set IPV6_V6ONLY socket option correctly when IPv6 is
407 enabled (MHD_USE_IPv6) but not dual stack
408 (MHD_USE_DUAL_STACK) -MW
409
410Mon Sep 2 22:59:45 CEST 2013
411 Fix use-after-free in epoll()-mode on read error.
412 Releasing libmicrohttpd 0.9.30. -CG
413
414Sun Sep 1 21:55:53 CEST 2013
415 Fixing build issues on FreeBSD. -CG
416
417Fri Aug 30 13:53:04 CEST 2013
418 Started to implement #3008 (RFC 2616, section 8.1.4
419 says HTTP server SHOULD terminate connection if the
420 client closes it for writing via TCP FIN, so we should
421 continue to try to read and react differently
422 if recv() returns zero). -CG
423
424Wed Aug 28 18:40:47 CEST 2013
425 Fix #3007 (build issue if messages are disabled). -CG
426
427Tue Aug 27 18:39:08 CEST 2013
428 Fix build issue if SOCK_NONBLOCK/EPOLL_CLOEXEC are not
429 defined (as is the case on older glibc versions). -CG
430
431Fri Aug 23 14:28:02 CEST 2013
432 Releasing libmicrohttpd 0.9.29. -CG
433
434Mon Aug 12 23:51:18 CEST 2013
435 Updated manual, documenting W32 select/shutdown issue. -CG
436
437Sat Aug 10 21:01:18 CEST 2013
438 Fixed #2983. -CG
439
440Sat Aug 10 20:39:27 CEST 2013
441 Use 'errno' to indicate why 'MHD_add_connection' failed
442 (#2984). -CG
443
444Sat Aug 10 17:31:31 CEST 2013
445 Disable use of 'shutdown' on W32 always as winsock
446 doesn't properly behave with half-closed connections
447 (see http://www.chilkatsoft.com/p/p_299.asp). -CG/LRN
448
449Thu Aug 8 07:55:07 CEST 2013
450 Fixing issue with pipelining not working as desired. -CG
451
452Wed Aug 7 08:17:40 CEST 2013
453 Removing dependency on liberty (on W32). -MC
454
455Fri Aug 2 20:55:47 CEST 2013
456 Fix HTTP 1.1 compliance with respect to not returning
457 content-length headers for successful "CONNECT" requests.
458 Note that for unsuccessful "CONNECT" requests with an
459 empty response body, users must now explicitly set the
460 content-length header. -CG
461
462Sun Jul 28 16:35:17 CEST 2013
463 Fixing build issue (missing #ifdef) in conjunction with
464 --disable-messages. -blueness
465
466Sat Jul 20 12:35:40 CEST 2013
467 Fixing combination of MHD_USE_SSL and MHD_USE_EPOLL_LINUX_ONLY. -CG
468
469Fri Jul 19 09:57:27 CEST 2013
470 Fix issue where connections were not cleaned up when
471 'MHD_run_from_select' was used. Adding experimental
472 TURBO mode.
473 Releasing libmicrohttpd 0.9.28. -CG
474
475Sun Jul 14 19:57:56 CEST 2013
476 Removing 'shutdown' calls that happen just before close or
477 that are for read-only and for a client that has already
478 stopped sending anyway (thus reducing number of system calls
479 slightly). -CG
480
481Sun Jul 14 19:37:37 CEST 2013
482 Name MHD worker threads on glibc >= 2.12. -,L4X[o]
483
484Fri Jul 5 12:05:01 CEST 2013
485 Added MHD_OPTION_CONNECTION_MEMORY_INCREMENT to allow users
486 to specify a custom value for incrementing read buffer
487 sizes (#2899). -MH
488
489Fri Jun 28 14:05:15 CEST 2013
490 If we shutdown connection for reading on POST due to error,
491 really do not process further requests even if we already
492 read the next request from the connection. Furthermore, do
493 not shutdown connections for reading on GET/HEAD/etc. just
494 because the application queued a response immediately ---
495 reserve that behavior for PUT/POST. -CG
496
497Tue Jun 25 15:08:30 CEST 2013
498 Added option 'MHD_USE_DUAL_STACK' to support a single
499 daemon for IPv4 and IPv6 without the application having
500 to do the binding. -CG
501
502Mon Jun 24 22:33:34 CEST 2013
503 Finished integration with epoll, including benchmarking and
504 documentation. -CG
505
506Sun Jun 23 15:28:13 CEST 2013
507 Added option 'MHD_USE_PIPE_FOR_SHUTDOWN' to cleanly support
508 'MHD_quiesce_daemon' with thread pools and per-connection
509 threads (we then need a pipe for shutdown, but if
510 'MHD_quiesce_daemon' is not used, we do not want to
511 require the use of a pipe; introducing the pipe after
512 the threads have been started can also fail, so the
513 application needs to tell us early on). -CG
514
515Sat Jun 22 20:24:17 CEST 2013
516 Removed locking calls for thread modes that do not need them.
517 Reorganized way to obtain connection's event loop state.
518 Added sorted XDLL for connections with default timeout to
519 avoid having to loop over all connections to determine current
520 timeout (custom per-connection timeouts are in another list
521 which is iterated each time). -CG
522
523Fri Jun 21 20:55:48 CEST 2013
524 Preparing build system and tests for epoll support. -CG
525
526Tue May 21 14:34:36 CEST 2013
527 Improving configure tests for OpenSSL and spdylay to
528 avoid build errors in libmicrospdy code if those libraries
529 are not present. -CG
530
531Mon May 20 12:29:35 CEST 2013
532 Added MHD_CONNECTION_INFO_CONNECTION_FD to allow clients
533 direct access to connection socket; useful for COMET
534 applications that need to disable NAGLE (#2886). -CG
535
536Mon May 15 12:49:01 CEST 2013
537 Fixing #2859. -CG
538
539Sun May 5 21:44:08 CEST 2013
540 Merged libmicrospdy code with libmicrohttpd build system
541 (no major changes to libmicrospdy itself yet). -CG
542
543Sun May 5 20:13:59 CEST 2013
544 Improved documentation and code style a bit.
545 Releasing libmicrohttpd 0.9.27. -CG
546
547Thu Apr 25 13:08:10 CEST 2013
548 Added 'MHD_quiesce_daemon' to allow application to stop
549 processing new incoming connections while finishing
550 ongoing requests. -CG
551
552Sun Mar 31 23:17:13 CEST 2013
553 Added MHD demonstration code 'src/examples/demo.c'. -CG
554
555Sun Mar 31 20:27:48 CEST 2013
556 Adding new API call 'MHD_run_from_select' to allow programs
557 running in 'external select mode' to reduce the number of
558 'select' calls by a factor of two. -CG
559
560Sun Mar 31 20:03:48 CEST 2013
561 Performance improvements, updated documentation.
562 Make better use of available memory pool memory for
563 reading (especially important for large POST uploads);
564 improve post processor speed by internally adjusting the
565 buffer size by 4 bytes to ensure "round" IO sizes given
566 a "round" post processor buffer size argument. Note
567 that applications that previously added 4 bytes to the
568 post processor buffer size might now perform worse.
569 Using the new 'demo' example, POST upload speed
570 increased from ~90 MB/s to ~120 MB/s for a large file
571 (note that the improvement comes from better aligned
572 disk IO; without disk IO, the speed was (and remains)
573 at ~1500 MB/s on this system). -CG
574
575Fri Mar 29 16:44:29 CET 2013
576 Renaming testcases to consistenly begin with test_;
577 Changing build system to build examples in doc/.
578 Releasing libmicrohttpd 0.9.26. -CG
579
580Thu Mar 7 10:13:08 CET 2013
581 Fix bug in postprocessor URL parser (#2818). -jgresula
582
583Mon Mar 4 13:45:35 CET 2013
584 Fix dropping of SSL connections if uptime is less than
585 MHD_OPTION_CONNECTION_TIMEOUT due to integer underflow (#2802). -greed
586
587Fri Mar 1 01:11:57 CET 2013
588 Fully initialize cleanup mutex struct for each thread (#2803). -Ulion
589
590Wed Feb 6 01:51:52 CET 2013
591 Releasing libmicrohttpd 0.9.25. -CG
592
593Fri Feb 1 10:19:44 CET 2013
594 Handle case where POST data contains "key=" without value
595 at the end and is not new-line terminated by invoking the
596 callback with the "key" during MHD_destroy_post_processor (#2733). -CG
597
598Wed Jan 30 13:09:30 CET 2013
599 Adding more 'const' to allow keeping of reason phrases in ROM.
600 (see mailinglist). -CG/MV
601
602Tue Jan 29 21:27:56 CET 2013
603 Make code work with PlibC 0.1.7 (which removed plibc_init_utf8).
604 Only relevant for W32. Fixes #2734. -CG
605
606Sat Jan 26 21:26:48 CET 2013
607 Fixing regression introduced Jan 6 (test on data_size instead
608 of total_size. -CG
609
610Fri Jan 11 23:21:55 CET 2013
611 Also return MHD_YES from MHD_destroy_post_processor if
612 we did not get '\r\n' in the upload. -CG
613
614Sun Jan 6 21:10:13 CET 2013
615 Enable use of "MHD_create_response_from_callback" with
616 body size of zero. -CG
617
618Tue Dec 25 16:16:30 CET 2012
619 Releasing libmicrohttpd 0.9.24. -CG
620
621Tue Dec 18 21:18:11 CET 2012
622 Given both 'chunked' encoding and 'content-length',
623 ignore the 'content-length' header as per RFC. -ES
624
625Thu Dec 6 10:14:44 CET 2012
626 Force adding "Connection: close" header to response if
627 client asked for connection to be closed (so far, we
628 did close the connection, but did not send the
629 "Connection: close" header explicitly, which some clients
630 seem to dislike. (See discussion on mailinglist).
631 Also, if there is already a transfer-encoding other
632 than 'chunked' set by the application, we also now close
633 the connection if the response is of unknown size. -CG
634
635Wed Dec 5 19:22:26 CET 2012
636 Fixing parameter loss of POST parameters with IE8 and Chrome
637 in the PostProcessor as the code failed to properly handle
638 partial data. -MM
639
640Fri Nov 9 21:36:46 CET 2012
641 Releasing libmicrohttpd 0.9.23. -CG
642
643Thu Nov 8 22:32:59 CET 2012
644 Ship our own version of tsearch and friends if not provided by platform,
645 so that MHD works nicely on Android. -JJ
646
647Mon Oct 22 13:05:01 CEST 2012
648 Immediately do a second read if we get a full buffer from
649 TLS as there might be more data in the TLS buffers even if
650 there is no activity on the socket. -CG
651
652Tue Oct 16 01:33:55 CEST 2012
653 Consistently use "#ifdef" and "#ifndef" WINDOWS, and not
654 sometimes "#if". -CG
655
656Sat Sep 1 20:51:21 CEST 2012
657 Releasing libmicrohttpd 0.9.22. -CG
658
659Sat Sep 1 20:38:35 CEST 2012
660 Adding configure option to allow selecting support for basic
661 and digest authentication separately (#2525). -CG
662
663Thu Aug 30 21:12:56 CEST 2012
664 Fixing URI argument parsing when string contained keys without
665 equals sign (i.e. '&bar&') in the middle of the argument (#2531).
666 Also replacing 'strstr' with more efficient 'strchr' when
667 possible. -CG
668
669Tue Aug 21 14:36:17 CEST 2012
670 Use "int" instead of "enum X" in 'va_arg' calls to be nice to
671 compilers that use 'short' (i.e. 8 or 16 bit) enums but pass
672 enums still as "int" in varargs. (See discussion on mailinglist). -CG/MV
673
674Tue Aug 21 14:31:54 CEST 2012
675 Reduce default size in post processor buffer (for small systems;
676 performance impact on large systems should be minimal). -CG/MV
677
678Thu Jul 19 21:48:42 CEST 2012
679 Releasing libmicrohttpd 0.9.21. -CG
680
681Thu Jul 19 11:34:50 CEST 2012
682 Consistently use 'panic' function instead of ever directly
683 calling 'abort ()'. Eliminating unused mutex in SSL mode.
684 Removing check in testcases that fails depending on which
685 version of gnuTLS is involved. -CG
686
687Tue Jul 17 23:50:43 CEST 2012
688 Stylistic code clean up. Allowing lookup up of trailing values
689 without keys using "MHD_lookup_connection_value" with a key of NULL
690 (thus achieving consistency with the existing iterator API). -CG
691
692Tue Jul 17 22:37:05 CEST 2012
693 Adding experimental (!) code for MHD operation without listen socket. -CG
694
695Tue Jul 17 22:15:57 CEST 2012
696 Making sendfile test pass again on non-W32 systems. -CG
697
698Mon Jul 9 13:43:35 CEST 2012
699 Misc changes to allow testcases to pass on W32. -LRN
700
701Sun Jul 8 15:05:31 CEST 2012
702 Misc changes to fix build on W32. -LRN
703
704Fri Jun 22 11:31:25 CEST 2012
705 Make sure sockets opened by MHD are non-inheritable by default (#2414). -CG
706
707Tue Jun 19 19:44:53 CEST 2012
708 Change various uses of time(NULL) to new MHD_monotonic_time() function to
709 make timeouts immune to the system real time clock changing. -MC
710
711Tue Jun 12 21:35:00 CEST 2012
712 Adding 451 status code. -CG
713
714Thu May 31 13:33:45 CEST 2012
715 Releasing 0.9.20. -CG
716
717Tue May 29 13:55:03 CEST 2012
718 Fixed some testcase build issues with disabled post processor. -CG
719
720Tue May 29 13:45:15 CEST 2012
721 Fixing bug where MHD failed to call connection termination callback
722 if a connection either was closed due to read errors or if MHD
723 was terminated with certain threading models. Added new
724 termination code MHD_REQUEST_TERMINATED_READ_ERROR for the
725 read-termination cause. -CG
726
727Thu Mar 15 23:47:53 CET 2012
728 Eliminating code clone in tls connection read/write handlers. -CG
729
730Fri Mar 2 23:44:56 CET 2012
731 Making sure that MHD_get_connection_values iterates over the
732 headers in the order in which they were received. -CG
733
734Wed Feb 1 09:39:12 CET 2012
735 Fixed compilation problem on MinGW. -BS
736
737Tue Jan 31 17:50:24 CET 2012
738 Releasing 0.9.19. -CG
739
740Mon Jan 30 20:02:34 CET 2012
741 Fixed handling of garbage prior to first multipart boundary
742 (#2126). -woof
743
744Fri Jan 27 11:00:43 CET 2012
745 Fixed postprocessor failure for applications that enclosed boundary
746 in quotes (#2120). -woof
747
748Tue Jan 24 16:07:53 CET 2012
749 Added configure check for sin_len in 'struct sockaddr' and adding
750 code to initialize this field if it exists now. -CG
751
752Mon Jan 23 14:02:26 CET 2012
753 Fixed double-free if specified cipher was not valid (during
754 MHD_daemon_start). Releasing 0.9.18. -CG
755
756Thu Jan 19 22:11:12 CET 2012
757 Switch to non-blocking sockets for all systems but Cygwin
758 (we already used non-blocking sockets for GNU/Linux); also
759 use non-blocking sockets on Cygwin for HTTPS as this is
760 required to avoid DoS-by-partial-record via gnutls. On
761 Cygwin, #1824 implies that we need to use blocking sockets
762 for HTTP on Cygwin for now. -CG
763
764Thu Jan 19 17:46:05 CET 2012
765 Fixing use of uninitialized 'earliest_deadline' variable in
766 MHD_get_timeout which can lead to returning an incorrect
767 (too early) timeout (#2085). -tclaveirole
768
769Thu Jan 19 13:31:27 CET 2012
770 Fixing digest authentication for GET requests with URI arguments
771 (#2059). -CG
772
773Sat Jan 7 17:30:48 CET 2012
774 Digest authentication expects nonce count in base 16, not base 10
775 (#2061). -tclaveirole
776
777Thu Jan 5 22:01:37 CET 2012
778 Partial fix for #2059, digest authentication with GET arguments. -CG
779
780Thu Dec 1 15:22:57 CET 2011
781 Updated authorization_example.c to actually demonstrate the current
782 MHD API. -SG
783
784Mon Nov 21 18:51:30 CET 2011
785 Added option to suppress generation of the 'Date:' header to be
786 used on embedded systems without RTC. Documented the new option
787 and the configure options. -CG
788
789Sat Nov 19 20:08:40 CET 2011
790 Releasing 0.9.17. -CG
791
792Fri Nov 18 20:17:22 CET 2011
793 Fixing return value of MHD_get_timeout if timeouts are not in use.
794 (#1914). -rboulton
795
796Sun Nov 13 13:34:29 CET 2011
797 Trying to fix accidental addition of a "Connection: close" footer
798 under certain (rare) circumstances. -CG
799
800Fri Nov 4 10:03:00 CET 2011
801 Small updates to the tutorial.
802 Releasing 0.9.16. -CG
803
804Thu Nov 3 10:14:59 CET 2011
805 shutdown(RDWR) fails on OS X after shutdown(RD), so only use
806 shutdown(WR) if we already closed the socket for reading (otherwise
807 OS X might not do shutdown (WR) at all). -CG
808
809Tue Nov 1 18:51:50 CET 2011
810 Force adding of 'Connection: close' to the header if we (for whatever
811 reason) are shutting down the socket for reading (see also
812 #1760). -CG
813
814Thu Oct 27 14:16:34 CEST 2011
815 Treat EAGAIN the same way as EINTR (helps on W32). -LRN
816
817Wed Oct 12 10:40:12 CEST 2011
818 Made sockets blocking again for non-Linux platforms as non-blocking
819 sockets cause problems (#1824) on Cygwin but offer better performance
820 on Linux (see change on August 11 2011). -CG/pross
821
822Fri Oct 7 19:50:07 CEST 2011
823 Fixed problems with testcases on W32. -LRN
824
825Fri Sep 30 17:56:36 CEST 2011
826 Fixed MHD_CONNECTION_OPTION_TIMEOUT for HTTPS (#1811). -CG
827
828Wed Sep 28 08:37:55 CEST 2011
829 Releasing libmicrohttpd 0.9.15. -CG
830
831Tue Sep 27 13:07:36 CEST 2011
832 Added ability to access URL arguments of the form 'url?foo' (without
833 '='). Added testcase and updated documentation accordingly. -CG
834
835Mon Sep 26 21:24:00 CEST 2011
836 Only run response cleanup testcase if curl binary was found by
837 configure. -CG
838
839Wed Sep 21 09:53:18 CEST 2011
840 Reverting to using pipes for signalling select on non-Linux
841 platforms where shutdown-on-listen-sockets does not work. -WB/CG
842
843Mon Sep 19 14:06:30 CEST 2011
844 Fixing problem introduced with prompt response cleanup code. -CG
845
846Wed Sep 14 13:43:26 CEST 2011
847 Fixing minor memory leak if daemon with HTTPS support failed to
848 initialize (#1766). -CG
849
850Tue Sep 13 09:47:58 CEST 2011
851 Try to release responses more promptly upon connection termination. -CG
852
853Mon Sep 12 10:20:28 CEST 2011
854 Releasing libmicrohttpd 0.9.14. -CG
855
856Mon Sep 12 10:05:36 CEST 2011
857 Added new function to allow setting of a custom timeout value
858 for an individual connection (the MHD_set_connection_option is
859 more generic, but this is currently the only use). -CG
860
861Sat Sep 10 07:30:12 CEST 2011
862 Documenting that MHD_CONNECTION_INFO_GNUTLS_CLIENT_CERT is not
863 implemented and will not be implemented, and what to use instead. -CG
864
865Fri Sep 9 13:42:20 CEST 2011
866 Added testcase to demonstrate that response cleanup calling is
867 working. No bug was found. -CG
868
869Thu Aug 18 11:05:16 CEST 2011
870 Fixed bug with wrong state transition if callback returned
871 MHD_CONTENT_READER_END_OF_STREAM causing spurious extra callbacks
872 to the handler (thanks to Jan Seeger for pointing it out). -CG/JS
873
874Thu Aug 11 11:40:03 CEST 2011
875 Changing sockets to be non-blocking as suggested by Eivind Sarto
876 on the mailinglist. -CG
877
878Mon Jul 25 16:13:15 CEST 2011
879 Added a logo. -CG
880
881Sat Jul 16 22:42:10 CEST 2011
882 Change type of nonce to 'unsigned long int' to match return type
883 from 'strtoul'. Fixes ERANGE check which would have previously
884 failed. -CG
885
886Wed Jul 13 09:26:17 CEST 2011
887 Fixing HTTP error status strings for certain high-numbered status codes.
888 Added support for some more (non-standard) status codes.
889 Releasing libmicrohttpd 0.9.13. -CG
890
891Thu Jul 7 10:24:20 CEST 2011
892 Adding performance measurements. -CG
893
894Thu Jun 23 14:21:13 CEST 2011
895 Releasing libmicrohttpd 0.9.12. -CG
896
897Wed Jun 22 14:32:23 CEST 2011
898 Force closing connection if either the client asked it or
899 if the response contains 'Connection: close' (so far,
900 only the client's request was considered). -CG/RV
901
902Wed Jun 22 10:37:35 CEST 2011
903 Removing listen socket from poll/select sets in
904 MHD_USE_THREAD_PER_CONNECTION mode; using 'shutdown'
905 on connection sockets to signal termination instead. -CG
906
907Wed Jun 22 10:25:13 CEST 2011
908 Eliminate unnecessary (and badly synchronized) calls to
909 MHD_get_timeout in MHD_USE_THREAD_PER_CONNECTION mode.
910 Document that this is not acceptable. -CG
911
912Tue Jun 21 13:54:59 CEST 2011
913 Fixing tiny memory leak in SSL code from 'gnutls_priority_init'.
914 Fixing data race between code doing connection shutdown and
915 connection cleanup.
916 Changing code to reduce connection cleanup cost from O(n) to O(1).
917 Cleaning up logging code around 'connection_close_error'. -CG
918
919Sat Jun 11 13:05:12 CEST 2011
920 Replacing use of sscanf by strtoul (#1688). -CG/bplant
921
922Fri Jun 3 15:26:42 CEST 2011
923 Adding MHD_CONNECTION_INFO_DAEMON to obtain MHD_Daemon
924 responsible for a given connection. -CG
925
926Wed May 25 14:23:20 CEST 2011
927 Trying to fix stutter problem on timeout described by
928 David Myers on the mailinglist (5/10/2011). -CG
929
930Fri May 20 22:11:55 CEST 2011
931 Fixed bug in testcase setup code causing crashes in
932 tls_session_timeout_test on some systems.
933 Releasing libmicrohttpd 0.9.11. -CG
934
935Fri May 20 19:34:59 CEST 2011
936 Fixed bug in parsing multipart/form-data with post processor where
937 the code failed to add a 0-terminator in the correct position. -PP
938
939Thu May 12 14:40:46 CEST 2011
940 Fixed bug where if multiple HTTP request messages are piped in at once,
941 microhttpd would call the handler with the wrong upload_data_size. -HZM
942
943Thu May 12 14:40:08 CEST 2011
944 Documented possible issue with off_t being sometimes
945 32-bit and sometimes 64-bit depending on #includes. -CG
946
947Sun May 8 21:52:47 CEST 2011
948 Allow MHD_SIZE_UNKNOWN to be used in conjunction with
949 MHD_create_response_from_fd (fixing #1679). -TG
950
951Wed Apr 27 16:11:18 CEST 2011
952 Releasing libmicrohttpd 0.9.10. -CG
953
954Fri Apr 8 11:40:35 CEST 2011
955 Workaround for cygwin poll brokenness. -TS
956
957Sun Apr 3 13:56:52 CEST 2011
958 Fixing compile error on OS X. -CG
959
960Wed Mar 30 12:56:09 CEST 2011
961 Initialize tv_usec in MHD_USE_THREAD_PER_CONNECTION with select
962 and per-connection timeout. -CG
963
964Tue Mar 29 14:15:13 CEST 2011
965 Releasing libmicrohttpd 0.9.9. -CG
966
967Tue Mar 29 14:11:19 CEST 2011
968 Fixed call to mmap for memory pool, extended testcase to cover
969 POLL. -CG
970
971Wed Mar 23 23:24:25 CET 2011
972 Do not use POLLIN when we only care about POLLHUP (significantly
973 improves performance when using MHD_USE_THREAD_PER_CONNECTION
974 in combination with MHD_USE_POLL). -ES
975
976Sun Mar 20 09:16:53 CET 2011
977 Fixing race when using MHD_USE_THREAD_PER_CONNECTION in combination
978 with MHD_USE_POLL. -CG
979
980Fri Mar 18 13:23:47 CET 2011
981 Removing MSG_DONTWAIT which should not be needed and was presumably
982 causing problems with EAGAIN under certain circumstances. -ES
983
984Fri Mar 11 22:25:29 CET 2011
985 Fixing bug in MHD_create_response_from_fd_at_offset with non-zero offsets. -ES
986
987Sat Mar 5 22:00:36 CET 2011
988 Do not use POLLRDHUP, which causes build errors on OS X / OpenSolaris
989 (#1667). -CG
990
991Fri Mar 4 10:24:04 CET 2011
992 Added new API to allow MHD server to initiate connection to
993 client (special use-case for servers behind NAT), thereby
994 addressing #1661 (externally created connections).
995 Releasing libmicrohttpd 0.9.8. -CG
996
997Fri Mar 4 10:07:18 CET 2011
998 Avoid using a pipe for signalling as well, just use server
999 socket shutdown (also for thread-per-connection). -CG
1000
1001Thu Mar 3 21:42:47 CET 2011
1002 Fixing issue where Base64 decode fails when char is defined
1003 as unsigned char (Mantis 1666). -CG/tmayer
1004
1005Tue Mar 1 13:58:04 CET 2011
1006 Allow use of 'poll' in combination with the external select mode.
1007 Avoid using pthread signals (SIGALRM), use pipe instead.
1008 Corrected timeout calculation (s vs. ms). -CG
1009
1010Wed Feb 23 14:21:44 CET 2011
1011 Removing useless code pointed out by Eivind Sarto. -CG
1012
1013Fri Feb 18 11:03:59 CET 2011
1014 Handle large (>2 GB) file transfers with sendfile on 32-bit
1015 systems better; handle odd sendfile failures by libc/kernel
1016 by falling back to standard 'SEND'. -CG
1017
1018Sun Feb 13 10:52:29 CET 2011
1019 Handle gnutls receive error(s) for interrupted SSL
1020 connections better. -MS
1021 Releasing libmicrohttpd 0.9.7. -CG
1022
1023Fri Feb 11 10:15:38 CET 2011
1024 Fixing parameter ordering in documentation (#1659). -wellska
1025
1026Thu Jan 27 10:51:39 CET 2011
1027 Disable 'EXTRA_CHECKS's by default as suggested in #1652
1028 (I guess it is time). -CG/timn
1029
1030Thu Jan 27 10:48:55 CET 2011
1031 Removing bogus assertion in basic authentication code (#1651). -CG/timn
1032
1033Tue Jan 25 14:10:45 CET 2011
1034 Releasing libmicrohttpd 0.9.6. -CG
1035
1036Mon Jan 24 16:36:35 CET 2011
1037 Fixing compilation error if DAUTH_SUPPORT was 0 (#1646). -CG/bplant
1038
1039Tue Jan 18 23:58:09 CET 2011
1040 Fixing hash calculation in digest auth; old function had
1041 collisions causing the browser to challenge users for
1042 authentication too often. -CG/AW
1043
1044Fri Jan 14 19:19:45 CET 2011
1045 Removing dead code, adding missing new symbols to export list.
1046 Fixed two missing NULL checks after malloc operations. -CG
1047
1048Mon Jan 10 14:07:33 CET 2011
1049 Releasing libmicrohttpd 0.9.5. -CG
1050
1051Wed Jan 5 15:20:11 CET 2011
1052 Fixing double-locking on non-Linux platforms when using
1053 MHD_create_response_from_fd (#1639). -CG
1054 Avoid use of strndup for better portability (#1636). -CG
1055
1056Tue Jan 4 13:07:21 CET 2011
1057 Added MHD_create_response_from_buffer, deprecating
1058 MHD_create_response_from_data. Deprecating
1059 MHD_create_response_from_fd as well. -CG
1060
1061Sun Dec 26 00:02:15 CET 2010
1062 Releasing libmicrohttpd 0.9.4. -CG
1063
1064Sat Dec 25 21:57:14 CET 2010
1065 Adding support for basic authentication.
1066 Documented how to obtain client SSL certificates in tutorial. -MS
1067
1068Thu Dec 23 15:40:36 CET 2010
1069 Increasing nonce length to 128 to support digest authentication
1070 with Opera (see #1633).
1071
1072Mon Dec 20 21:22:57 CET 2010
1073 Added macro MHD_LONG_LONG to allow change of MHD's "long long" use
1074 to some other type on platforms that do not support "long long"
1075 (Mantis #1631). -CG/bplant
1076
1077Sun Dec 19 19:54:15 CET 2010
1078 Added 'MHD_create_response_from_fd_at_offset'. -CG
1079
1080Sun Dec 19 15:16:16 CET 2010
1081 Fixing --enable and --disable configure options to behave properly. -CG
1082
1083Sun Dec 19 13:46:52 CET 2010
1084 Added option to specify size of stacks for threads created by MHD. -CG
1085
1086Tue Nov 23 09:41:00 CET 2010
1087 Releasing libmicrohttpd 0.9.3. -CG
1088
1089Thu Nov 18 23:10:36 CET 2010
1090 Fixing #1619 (testcases not working with NSS on Fedora). -CG/timn
1091
1092Thu Nov 18 22:55:58 CET 2010
1093 Fixing #1621 (socket not closed under certain circumstances). -CG/jaredc
1094
1095Wed Nov 17 12:16:53 CET 2010
1096 Allowing signalling of errors in generating chunked responses to
1097 clients (by closing connectins) using the new
1098 MHD_CONTENT_READER_END_WITH_ERROR ((size_t)-2) return value. Also
1099 introducing MHD_CONTENT_READER_END_OF_STREAM constant instead
1100 of (size_t) -1 / SIZE_MAX.
1101
1102Sun Nov 14 20:45:45 CET 2010
1103 Adding API call to generate HTTP footers in response. -CG
1104
1105Sat Oct 16 12:38:43 CEST 2010
1106 Releasing libmicrohttpd 0.9.2. -CG
1107
1108Tue Oct 12 15:41:51 CEST 2010
1109 Fixed issue with data received via SSL being delayed in the
1110 GNUtls buffer if sender stopped transmitting (but did not close
1111 the connection) and MHD buffer size was smaller than last fragment,
1112 resulting in possibly significantly delayed processing of
1113 incoming data. -CG
1114
1115Wed Sep 22 09:48:59 CEST 2010
1116 Changed port argument from 'unsigned short' to 'uint16_t'.
1117 Removed dead code when compiling with messages enabled.
1118 Minimal unrelated code cleanup. -CG
1119
1120Tue Sep 21 15:12:41 CEST 2010
1121 Use "size_t" for buffer size instead of "int". -CG
1122
1123Sat Sep 18 07:16:30 CEST 2010
1124 Adding support for SHOUTcast. -CG
1125
1126Wed Sep 15 09:33:46 CEST 2010
1127 Fixed double-free. -CG/ES
1128
1129Fri Sep 10 14:47:11 CEST 2010
1130 Releasing libmicrohttpd 0.9.1. -CG
1131
1132Fri Sep 10 14:29:37 CEST 2010
1133 Adding proper nonce counter checking for digest authentication. -CG/AA
1134
1135Sat Sep 4 21:55:52 CEST 2010
1136 Digest authentication now seems to be working. -CG/AA
1137
1138Wed Sep 1 13:59:16 CEST 2010
1139 Added ability to specify external unescape function.
1140 "microhttpd.h" now includes the right headers for GNU/Linux
1141 systems unless MHD_PLATFORM_H is defined (in which case it
1142 is assumed that the right headers were already determined by
1143 some configure-like process). -CG
1144
1145Tue Aug 31 15:39:25 CEST 2010
1146 Fixed bug with missing call to response cleanup in case of
1147 connection handling error (for example, after getting a SIGPIPE). -CG
1148
1149Tue Aug 24 11:39:25 CEST 2010
1150 Fixed bug in handling EAGAIN from GnuTLS (caused
1151 needlessly dropped SSL connections). -CG
1152
1153Sun Aug 22 16:49:13 CEST 2010
1154 Initial draft for digest authentication. -AA
1155
1156Thu Aug 19 14:15:01 CEST 2010
1157 Changed code to enable error messages and HTTPS by default;
1158 added option to disable post processor API (use
1159 breaks binary compatibility, should only be done
1160 for embedded systems that require minimal footprint). -CG
1161
1162Thu Aug 19 13:26:00 CEST 2010
1163 Patches for Windows to ease compilation trouble. -GT/CG
1164
1165Sat Aug 14 15:43:30 CEST 2010
1166 Fixed small, largely hypothetical leaks.
1167 Reduced calls to strlen for header processing. -CG
1168
1169Fri Aug 6 12:51:59 CEST 2010
1170 Fixing (small) memory leak on daemon-shutdown with
1171 SSL enabled. -CG/PG
1172
1173Thu Aug 5 22:24:37 CEST 2010
1174 Fixing timeout bug on systems that think it's still
1175 1970 (can happen if system time not initialized). -CG
1176
1177Mon Jul 26 10:46:57 CEST 2010
1178 Releasing libmicrohttpd 0.9.0. -CG
1179
1180Sun Jul 25 14:57:47 CEST 2010
1181 Adding support for sendfile on Linux. Adding support
1182 for systemd-style passing of an existing listen socket
1183 as an option. IPv6 sockets now only bind to IPv6
1184 (if platform supports this). -CG
1185
1186Sun Jul 25 11:10:45 CEST 2010
1187 Changed code to use external libgnutls code instead of
1188 the "fork". Minor API changes for setting TLS options. -CG
1189
1190Sun Jun 13 10:52:34 CEST 2010
1191 Cleaned up example code. -CG
1192
1193Fri Apr 23 09:56:37 CEST 2010
1194 Do not return HTTP headers for requests without version
1195 numbers. Do return HTTP version 1.0 if client requested
1196 HTTP version 1.1 (previously, we returned HTTP/1.1 even
1197 if the client specified HTTP/1.0). -GM/CG
1198
1199Sat Mar 13 09:41:01 CET 2010
1200 Releasing libmicrohttpd 0.4.6. -CG
1201
1202Wed Mar 10 13:18:26 CET 2010
1203 Fixing bug in 100 CONTINUE replacement when handling POSTs
1204 (see report on mailinglist), with testcase. -CG/MC
1205
1206Tue Feb 23 09:16:15 CET 2010
1207 Added configure check for endianness to define WORDS_BIGENDIAN
1208 which fixes SSL support on big endian architectures. -JA/CG
1209
1210Sat Feb 20 10:01:09 CET 2010
1211 Added check for inconsistent options (MHD_OPTION_PROTOCOL_VERSION
1212 without MHD_USE_SSL) causing instant segfault. -JA/CG
1213
1214Tue Feb 9 20:31:51 CET 2010
1215 Fixed issue with poll doing busy waiting. -BK/CG
1216
1217Thu Jan 28 21:28:56 CET 2010
1218 Releasing libmicrohttpd 0.4.5. -CG
1219
1220Thu Jan 28 20:35:48 CET 2010
1221 Make sure addresses returned by memory pool are
1222 aligned (fixes bus errors on Sparc). -CG
1223
1224Thu Dec 17 20:26:52 CET 2009
1225 poll.h is not stricly required anymore. -ND
1226
1227Fri Dec 4 13:17:50 CET 2009
1228 Adding MHD_OPTION_ARRAY. -CG
1229
1230Mon Nov 16 14:41:26 CET 2009
1231 Fixed busy-loop in internal select mode for inactive
1232 clients with infinite connection timeout. -CG
1233
1234Thu Nov 12 16:19:14 CET 2009
1235 Adding support for setting a custom error handler for
1236 fatal errors (previously, the implementation always
1237 called 'abort' in these cases). -CG/ND
1238
1239Wed Nov 11 12:54:16 CET 2009
1240 Adding support for poll (alternative to select allowing
1241 for more than FD_SETSIZE parallel connections). -JM
1242
1243Wed Oct 28 20:26:00 CET 2009
1244 Releasing libmicrohttpd 0.4.4. -CG
1245
1246Wed Oct 14 14:37:37 CEST 2009
1247 Fixing (rare) deadlock due to SELECT missing SIGALRM by
1248 making all SELECT calls block for at most 1s. While this
1249 can in (rare) situations delay the shutdown by 1s, I think
1250 this is preferable (both performance and possibly portability-wise)
1251 over using a pipe for the signal. -CG
1252
1253Sun Oct 11 14:57:29 CEST 2009
1254 Adding eCos license as an additional license for the
1255 non-HTTPS code of MHD. -CG
1256
1257Sun Oct 11 11:24:27 CEST 2009
1258 Adding support for Symbian. -MR
1259
1260Fri Oct 9 15:21:29 CEST 2009
1261 Check for error codes from pthread operations (to help with
1262 error diagnostics) and abort if something went wrong. -CG
1263
1264Thu Oct 8 10:43:02 CEST 2009
1265 Added check for sockets being '< FD_SETSIZE' (just to be safe). -CG
1266
1267Mon Oct 5 21:17:26 CEST 2009
1268 Adding "COOKIE" header string #defines. -CG
1269
1270Mon Oct 5 08:29:06 CEST 2009
1271 Documenting default values. -CG
1272
1273Fri Aug 28 22:56:47 CEST 2009
1274 Releasing libmicrohttpd 0.4.3. -CG
1275
1276Sun Aug 23 16:21:35 UTC 2009
1277 Allow MHD_get_daemon_info to return the daemon's listen socket.
1278 Includes a test case that uses this functionality to bind a server to
1279 an OS-assigned port, look the port up with getsockname, and curl it. -DR
1280
1281Tue Aug 4 00:14:04 CEST 2009
1282 Fixing double-call to read from content-reader callback for first
1283 data segment (as reported by Alex on the mailinglist). -CG
1284
1285Thu Jul 29 21:41:52 CEST 2009
1286 Fixed issue with the code not using the "block_size" argument
1287 given to MHD_create_response_from_callback causing inefficiencies
1288 for values < 2048 and segmentation faults for values > 2048
1289 (as reported by Andre Colomb on the mailinglist). -CG
1290
1291Sun May 17 03:29:46 MDT 2009
1292 Releasing libmicrohttpd 0.4.2. -CG
1293
1294Fri May 15 11:00:20 MDT 2009
1295 Grow reserved read buffer more aggressively so that we are not
1296 needlessly stuck reading only a handfull of bytes in each iteration. -CG
1297
1298Thu May 14 21:20:30 MDT 2009
1299 Fixed issue where the "NOTIFY_COMPLETED" handler could be called
1300 twice (if a socket error or timeout occured for a pipelined
1301 connection after successfully completing a request and before
1302 the next request was successfully transmitted). This could
1303 confuse applications not expecting to see a connection "complete"
1304 that they were never aware of in the first place. -CG
1305
1306Mon May 11 13:01:16 MDT 2009
1307 Fixed issue where error code on timeout was "TERMINATED_WITH_ERROR"
1308 instead of "TERMINATED_TIMEOUT_REACHED". -CG
1309
1310Wed Apr 1 21:33:05 CEST 2009
1311 Added MHD_get_version(). -ND
1312
1313Wed Mar 18 22:59:07 MDT 2009
1314 Releasing libmicrohttpd 0.4.1. -CG
1315
1316Wed Mar 18 17:46:58 MDT 2009
1317 Always RECV/SEND with MSG_DONTWAIT to (possibly) address
1318 strange deadlock reported by Erik on the mailinglist ---
1319 and/or issues with blocking read after select on GNU/Linux
1320 (see select man page under bugs). -CG
1321
1322Tue Mar 17 01:19:50 MDT 2009
1323 Added support for thread-pools. -CG/RA
1324
1325Mon Mar 2 23:44:08 MST 2009
1326 Fixed problem with 64-bit upload and download sizes and
1327 "-1" being used to indicate "unknown" by introducing
1328 new 64-bit constant "MHD_SIZE_UNKNOWN". -CG/DC
1329
1330Wed Feb 18 08:13:56 MST 2009
1331 Added missing #include for build on arm-linux-uclibc. -CG/CC
1332
1333Mon Feb 16 21:12:21 MST 2009
1334 Moved MHD_get_connection_info so that it is always defined,
1335 even if HTTPS support is not enabled. -CG
1336
1337Sun Feb 8 21:15:30 MST 2009
1338 Releasing libmicrohttpd 0.4.0. -CG
1339
1340Thu Feb 5 22:43:45 MST 2009
1341 Incompatible API change to allow 64-bit uploads and downloads.
1342 Clients must use "uint64_t" for the "pos"
1343 argument (MHD_ContentReaderCallback) and the "off"
1344 argument (MHD_PostDataIterator) and the "size"
1345 argument (MHD_create_response_from_callback) now.
1346 Also, "unsigned int" was changed to "size_t" for
1347 the "upload_data_size" argument (MHD_AccessHandlerCallback),
1348 the argument to MHD_OPTION_CONNECTION_MEMORY_LIMIT,
1349 the "block_size" argument (MHD_create_response_from_callback),
1350 the "buffer_size" argument (MHD_create_post_processor) and
1351 the "post_data_len" argument (MHD_post_process). You may
1352 need to #include <stdint.h> before <microhttpd.h> from now on. -CG
1353
1354Thu Feb 5 20:21:08 MST 2009
1355 Allow getting address information about the connecting
1356 client after the accept call. -CG
1357
1358Mon Feb 2 22:21:48 MST 2009
1359 Fixed missing size adjustment for offsets for %-encoded
1360 arguments processed by the post processor (Mantis #1447). -CG/SN
1361
1362Fri Jan 23 16:57:21 MST 2009
1363 Support charset specification (ignore) after content-type
1364 when post-processing HTTP POST requests (Mantis #1443). -CG/SN
1365
1366Fri Dec 26 23:08:04 MST 2008
1367 Fixed broken check for identical connection address. -CG
1368 Making cookie parser more RFC2109 compliant (handle
1369 spaces around key, allow value to be optional). -CG
1370
1371Sat Dec 6 18:36:17 MST 2008
1372 Added configure option to disable checking for CURL support.
1373 Added MHD_OPTION to allow specification of custom logger. -CG
1374
1375Tue Nov 18 01:19:53 MST 2008
1376 Removed support for untested and/or broken SSL features
1377 and (largely useless) options. -CG
1378
1379Sun Nov 16 16:54:54 MST 2008
1380 Added option to get unparsed URI via callback.
1381 Releasing GNU libmicrohttpd 0.4.0pre1. -CG
1382
1383Sun Nov 16 02:48:14 MST 2008
1384 Removed tons of dead code. -CG
1385
1386Sat Nov 15 17:34:24 MST 2008
1387 Added build support for code coverage analysis. -CG
1388
1389Sat Nov 15 00:31:33 MST 2008
1390 Removing (broken) support for HTTPS servers with
1391 anonymous (aka "no") certificates as well as
1392 various useless dead code. -CG
1393
1394Sat Nov 8 02:18:42 MST 2008
1395 Unset TCP_CORK at the end of transmitting a response
1396 to improve performance (on systems where this is
1397 supported). -MM
1398
1399Tue Sep 30 16:48:08 MDT 2008
1400 Make MHD useful to Cygwin users; detect IPv6 headers
1401 in configure.
1402
1403Sun Sep 28 14:57:46 MDT 2008
1404 Unescape URIs (convert "%ef%e4%45" to "中国"). -CG
1405
1406Wed Sep 10 22:43:59 MDT 2008
1407 Releasing GNU libmicrohttpd 0.4.0pre0. -CG
1408
1409Wed Sep 10 21:36:06 MDT 2008
1410 Fixed data race on closing sockets during
1411 shutdown (in one-thread-per-connection mode). -CG
1412
1413Thu Sep 4 23:37:18 MDT 2008
1414 Fixed some boundary issues with processing
1415 chunked requests; removed memmove from a
1416 number of spots, in favor of using an index into
1417 the current buffer instead. -GS
1418
1419Sun Aug 24 13:05:41 MDT 2008
1420 Now handling clients returning 0 from response callback
1421 as specified in the documentation (abort if internal
1422 select is used, retry immediately if a thread per
1423 connection is used). -CG
1424
1425Sun Aug 24 12:44:43 MDT 2008
1426 Added missing reason phrase. -SG
1427
1428Sun Aug 24 10:33:22 MDT 2008
1429 Fixed bug where MHD failed to transmit the response when
1430 the client decided not to send "100 CONTINUE" during
1431 a PUT/POST request. -CG
1432
1433Wed Jul 16 18:54:03 MDT 2008
1434 Fixed bug generating chunked responses with chunk sizes
1435 greater than 0xFFFFFF (would cause protocol violations). -CG
1436
1437Mon May 26 13:28:57 MDT 2008
1438 Updated and improved documentation.
1439 Releasing GNU libmicrohttpd 0.3.1. -CG
1440
1441Fri May 23 16:54:41 MDT 2008
1442 Fixed issue with postprocessor not handling URI-encoded
1443 values of more than 1024 bytes correctly. -CG
1444
1445Mon May 5 09:18:29 MDT 2008
1446 Fixed date header (was off by 1900 years). -JP
1447
1448Sun Apr 13 01:06:20 MDT 2008
1449 Releasing GNU libmicrohttpd 0.3.0. -CG
1450
1451Sat Apr 12 21:34:26 MDT 2008
1452 Generate an internal server error if the programmer fails
1453 to handle upload data correctly. Tweaked testcases to
1454 avoid running into the problem in the testcases.
1455 Completed zzuf-based fuzzing testcases. -CG
1456
1457Sat Apr 12 15:14:05 MDT 2008
1458 Restructured the code (curl-testcases and zzuf testcases
1459 are now in different directories; code examples are in
1460 src/examples/).
1461 Fixed a problem (introduced in 0.2.3) with handling very
1462 large requests (the code did not return proper error code).
1463 If "--enable-messages" is specified, the code now includes
1464 reasonable default HTML webpages for various build-in
1465 errors (such as request too large and malformed requests).
1466 Without that flag, the webpages returned will still be
1467 empty.
1468 Started to add zzuf-based fuzzing-testcases (these require
1469 the zzuf and socat binaries to be installed). -CG
1470
1471Fri Apr 11 20:20:34 MDT 2008
1472 I hereby dub libmicrohttpd a GNU package. -Richard Stallman
1473
1474Sat Mar 29 22:36:09 MDT 2008
1475 Fixed bugs in handling of malformed HTTP requests
1476 (causing either NULL dereferences or connections to
1477 persist until time-out, if any). -CG
1478
1479 Updated and integrated TexInfo documentation. -CG
1480
1481Tue Mar 25 13:40:53 MDT 2008
1482 Prevent multi-part post-processor from going to error
1483 state when the input buffer is full and current token
1484 just changes processor state without consuming any data.
1485 Also, the original implementation would not consume any
1486 input in process_value_to_boundary if there is no new
1487 line character in sight. -AS
1488
1489 Remove checks for request method after it finished writing
1490 response footers as it's only _pipelined_ requests that
1491 should not be allowed after POST or PUT requests. Reusing
1492 the existing connection is perfectly ok though. And there
1493 is no reliable way to detect pipelining on server side
1494 anyway so it is the client's responsibility to not send new
1495 data before it gets a response after a POST operation. -AS
1496
1497 Clarified license in man page. Releasing
1498 libmicrohttpd 0.2.3 -CG
1499
1500Sat Mar 22 01:12:38 MDT 2008
1501 Releasing libmicrohttpd 0.2.2. -CG
1502
1503Mon Feb 25 19:13:53 MST 2008
1504 Fixed a problem with sockets closed for reading ending up
1505 in the read set under certain circumstances. -CG
1506
1507Wed Jan 30 23:15:44 MST 2008
1508 Added support for nested multiparts to post processor.
1509 Made sure that MHD does not allow pipelining for methods
1510 other than HEAD and GET (and of course still also only
1511 allows it for http 1.1). Releasing libmicrohttpd 0.2.1. -CG
1512
1513Mon Jan 21 11:59:46 MST 2008
1514 Added option to limit number of concurrent connections
1515 accepted from the same IP address. -CG
1516
1517Fri Jan 4 16:02:08 MST 2008
1518 Fix to properly close connection if application signals
1519 problem handling the request. - AS
1520
1521Wed Jan 2 16:41:05 MST 2008
1522 Improvements and bugfixes to post processor implementation. - AS
1523
1524Wed Dec 19 21:12:04 MST 2007
1525 Implemented chunked (HTTP 1.1) downloads (including
1526 sending of HTTP footers). Also allowed queuing of
1527 a response early to suppress the otherwise automatic
1528 "100 CONTINUE" response. Removed the mostly useless
1529 "(un)register handler" methods from the API. Changed
1530 the internal implementation to use a finite state
1531 machine (cleaner code, slightly less memory consumption).
1532 Releasing libmicrohttpd 0.2.0. - CG
1533
1534Sun Dec 16 03:24:13 MST 2007
1535 Implemented handling of chunked (HTTP 1.1) uploads.
1536 Note that the upload callback must be able to
1537 process chunks in the size uploaded by the client,
1538 MHD will not "join" small chunks into a big
1539 contiguous block of memory (even if buffer space
1540 would be available). - CG
1541
1542Wed Dec 5 21:39:35 MST 2007
1543 Fixed race in multi-threaded server mode.
1544 Fixed handling of POST data when receiving a
1545 "Connection: close" header (#1296).
1546 Releasing libmicrohttpd 0.1.2. - CG
1547
1548Sat Nov 17 00:55:24 MST 2007
1549 Fixed off-by-one in error message string matching.
1550 Added code to avoid generating SIGPIPE on platforms
1551 where this is possible (everywhere else, the main
1552 application should install a handler for SIGPIPE).
1553
1554Thu Oct 11 11:02:06 MDT 2007
1555 Releasing libmicrohttpd 0.1.1. - CG
1556
1557Thu Oct 11 10:09:12 MDT 2007
1558 Fixing response to include HTTP status message. - EG
1559
1560Thu Sep 27 10:19:46 MDT 2007
1561 Fixing parsing of "%xx" in URLs with GET arguments. - eglaysher
1562
1563Sun Sep 9 14:32:23 MDT 2007
1564 Added option to compile debug/warning messages;
1565 error messages are now disabled by default.
1566 Modified linker option for GNU LD to not export
1567 non-public symbols (further reduces binary size).
1568 Releasing libmicrohttpd 0.1.0. - CG
1569
1570Sat Sep 8 21:54:04 MDT 2007
1571 Extended API to allow for incremental POST
1572 processing. The new API is binary-compatible
1573 as long as the app does not handle POSTs, but
1574 since that maybe the case, we're strictly speaking
1575 breaking backwards compatibility (since url-encoded
1576 POST data is no longer obtained the same way). - CG
1577
1578Thu Aug 30 00:59:24 MDT 2007
1579 Improving API to allow clients to associate state
1580 with a connection and to be notified about request
1581 termination (this is a binary-compatible change). - CG
1582 Fixed compile errors under OS X. - HL
1583
1584Sun Aug 26 03:11:46 MDT 2007
1585 Added MHD_USE_PEDANTIC_CHECKS option which enforces
1586 receiving a "Host:" header in HTTP 1.1 (and sends a
1587 HTTP 400 status back if this is violated). - CG
1588
1589Tue Aug 21 01:01:46 MDT 2007
1590 Fixing assertion failure that occured when a client
1591 closed the connection after sending some data but
1592 not the full headers. - CG
1593
1594Sat Aug 18 03:06:09 MDT 2007
1595 Check for out of memory when adding headers to
1596 responses. Check for NULL key when looking
1597 for headers. If a content reader callback
1598 for a response returns zero (has no data yet),
1599 do not possibly fall into busy waiting when
1600 using external select (with internal selects
1601 we have no choice). - CG
1602
1603Wed Aug 15 01:46:44 MDT 2007
1604 Extending API to allow timeout of connections.
1605 Changed API (MHD_create_response_from_callback) to
1606 allow user to specify IO buffer size.
1607 Improved error handling.
1608 Released libmicrohttpd 0.0.3. - CG
1609
1610Tue Aug 14 19:45:49 MDT 2007
1611 Changed license to LGPL (with consent from all contributors).
1612 Released libmicrohttpd 0.0.2. - CG
1613
1614Sun Aug 12 00:09:26 MDT 2007
1615 Released libmicrohttpd 0.0.1. - CG
1616
1617Fri Aug 10 17:31:23 MDT 2007
1618 Fixed problems with handling of responses created from
1619 callbacks. Allowing accept policy callback to be NULL
1620 (to accept from all). Added minimal fileserver example.
1621 Only send 100 continue header when specifically requested. - CG
1622
1623Wed Aug 8 01:46:06 MDT 2007
1624 Added pool allocation and connection limitations (total
1625 number and memory size). Released libmicrohttpd 0.0.0. - CG
1626
1627Tue Jan 9 20:52:48 MST 2007
1628 Created project build files and updated API. - CG