650 Commits
Author SHA1 Message Date
Christian Grothoff a110ae6276 fix buffer overflow and add test 2020-06-28 21:55:56 +02:00
Christian Grothoff 0d771f770e handle gnutls_record_uncork() failure, might help issue PC reported on the list 2020-06-16 20:46:32 +02:00
Christian Grothoff a019057377 fix PP bug discovered by MD 2020-06-10 21:45:23 +02:00
Christian Grothoff 89d2ef9732 define and use 'enum MHD_Result' (merge) 2020-04-08 23:38:07 +02:00
Christian Grothoff de872dea2d define and use 'enum MHD_Result' 2020-04-08 23:36:41 +02:00
Christian Grothoff 6347f514aa introduce 'enum MHD_Result' 2020-04-08 22:59:05 +02:00
silvioprog 68200a8426 Added example for how to provide a tiny threaded websocket server. (#5501) 2020-04-07 15:00:56 -03:00
silvioprog bcffdf809f Applied several spelling fixes. (#6142) 2020-03-31 15:08:34 -03:00
Christian Grothoff eeb9c46884 declare victory on #6090, bump header version 2020-03-07 17:21:17 +01:00
Christian Grothoff fe6716d103 releasing 0.9.70 2020-02-08 21:58:26 +01:00
Christian Grothoff f34781c87e add post processor logic fix 2019-12-26 14:44:18 +01:00
Christian Grothoff f5d59eb3a7 Given post body "a&b=1", how should MHD interpret the data?
I'm at the end of a long investigation and it's come down to that question
for post_process_urlencoded() in MHD.

MHD currently calls back with ("a&b", "1").  The app I'm working breaks
when it doesn't receive a callback for "b".  The http client in this case
(that did the urlencoding) is google-http-java-client 1.23.0.

The client behavior may be questionable, but MHD's behavior doesn't seem
right either.  Isn't there some principle, "clients should strive for
conformance, servers should strive for forgiveness".

I've attached a patch to MHD to add a failing test, but without a fix.

As for relevant standards, the W3C[1] is not detailed enough to cover it.
The WhatWG[2] is more specific and allows for empty values and even empty
keys.  I'd like to callout uriparser[3], another C library I've patched in
as a work-around.  Uriparser documents their handling of these cases well:

* NULL in the value member means there was no '=' in the item text as with
"?abc&def".
* An empty string in the value member means there was '=' in the item as
with "?abc=&def".

[1] https://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1
[2] https://url.spec.whatwg.org/#urlencoded-parsing
[3] https://uriparser.github.io/doc/api/latest/#querystrings

commit aa0534af56d135e1b261d127af09c22015c1ff87
Author: Ethan Tuttle <ethan@ethantuttle.com>
Date:   Tue Dec 24 03:50:59 2019 -0800

    urlencoding post-processor: add failing tests for keys without values
2019-12-24 15:33:05 +01:00
Christian Grothoff 3a661f8675 releasing 0.9.69 2019-12-15 14:17:15 +01:00
Christian Grothoff 6f3a998f22 fix #5977 2019-12-15 14:12:56 +01:00
Christian Grothoff 8869259c7f if suspended on POST before 100 CONTINUE, give application a second chance to queue non-100 CONTINUE response 2019-11-29 23:23:05 +01:00
Christian Grothoff 86186edbf3 version bump 2019-10-26 19:31:15 +02:00
Christian Grothoff 1fe2d0d352 fix regression: uncork when HTTPS is used in conjunction with empty response body 2019-10-26 18:53:58 +02:00
Christian Grothoff 185f740e06 allow clients to override sanity check for content-length header 2019-10-25 14:43:36 +02:00
Christian Grothoff 35877189f6 cosmetics for Markus 2019-10-17 19:12:08 +02:00
Christian Grothoff cbbfd0591f presumably last touches on ng0's GSoC setsockopt refactoring 2019-10-17 16:52:29 +02:00
ng0 86832243cf Merge remote-tracking branch 'origin/master' into dev/ng0/gsoc2019 2019-08-18 10:18:58 +00:00
Christian Grothoff 316f6ab358 add compiler/linker hardnening 2019-08-09 10:08:20 +02:00
ng0 818b0a791b Add draft of Changelog. 2019-08-02 10:09:29 +00:00
Christian Grothoff 91826f5001 releasing v0.9.66 2019-08-01 13:38:40 +02:00
Christian Grothoff de315d36e0 attempt to fix issue with upload data discovered by FD 2019-08-01 00:54:42 +02:00
Christian Grothoff bafd078984 fix hang reported by Viet on 24.6.2019 on the mailinglist: do not just consider nested epoll, but also already ready connections 2019-07-29 20:03:41 +02:00
Christian Grothoff f73873bc19 fix regression introduced in cc5032b85 2019-07-25 14:42:56 +02:00
Christian Grothoff 092b370587 undo, duplicated functionality 2019-07-22 16:11:10 +02:00
Christian Grothoff 3d1b941137 introducte MHD_RO_FREE_FUNCTION as proposed by Nicolas Mora on the list 2019-07-22 11:49:42 +02:00
Tim Rühsen 3751044dc8 Add callback to allow OCSP stapling 2019-07-17 12:50:15 +02:00
Evgeny Grin (Karlson2k) 8688527894 Releasing GNU libmicrohttpd 0.9.65 2019-07-05 23:18:51 +03:00
Evgeny Grin (Karlson2k) cedf766b65 Updated ChangeLog 2019-06-23 21:54:07 +03:00
Evgeny Grin (Karlson2k) 9ddf07f81e Releasing 0.9.64 2019-06-09 20:29:37 +03:00
Evgeny Grin (Karlson2k) e9493e0d34 microhttpd.h: reordered includes for better compatibility,
Updated ChangeLog
2019-06-09 20:03:20 +03:00
Evgeny Grin (Karlson2k) 31b90a287f Updated ChangeLog 2019-06-08 12:52:22 +03:00
Christian Grothoff 603ecd85bc prefix even potentially exported hash symbols with MHD_ (as proposed by Dirk Brinkmeier) 2019-06-03 23:46:28 +02:00
Evgeny Grin (Karlson2k) 1d7cb0092d ChangeLog updated 2019-05-26 23:11:30 +03:00
Evgeny Grin (Karlson2k) 9da5831ce0 ChangeLog updated 2019-05-21 22:28:05 +03:00
Evgeny Grin (Karlson2k) d5d03f1161 ChangeLog update 2019-05-21 18:08:42 +03:00
Evgeny Grin (Karlson2k) 2a0871b731 Fixed build from source on GNU Hurd 2019-05-15 14:57:50 +03:00
Evgeny Grin (Karlson2k) bc36476b9e Updated ChangeLog 2019-05-13 18:51:29 +03:00
Christian Grothoff 58552e93ac applying patch from Tim 2019-04-30 15:39:10 +02:00
Christian Grothoff 1917b86699 add flags for TLS option control 2019-04-15 17:38:16 +02:00
Christian Grothoff 312713c363 merge 2019-04-08 15:12:45 +02:00
Christian Grothoff 83a86be948 fix close() checks 2019-04-08 15:12:20 +02:00
Christian Grothoff 1b610e5b13 allow binary zero in unescaped GET arguments (see mailinglist) 2019-03-20 10:46:21 +01:00
silvioprog e2c268e379 Added example for how to compress chunked HTTP response. 2019-02-10 21:13:57 -03:00
Christian Grothoff 154d0fd6a1 adjusting digest auth to previous regression fix, releasing 0.9.63 2019-02-10 17:13:03 +01:00
Christian Grothoff f6ee589dc9 add test for &-URI parsing and URI logging 2019-02-09 13:51:53 +01:00
Christian Grothoff d640ad8212 preliminary patch for query string issue reported on the ML 2019-02-07 16:16:56 +01:00