714 Commits
Author SHA1 Message Date
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
silvioprog dad0746a10 Added minimal example for how to compress HTTP response. (#4914) 2019-01-08 03:00:17 -03:00
Christian Grothoff b7052c0415 Check should (indeed) be for GNUTLS_E_AGAIN.
Lasa Martxel wrote:
Hello,

I have found the following code in daemon.c file, lines 1449 to 1467:

      if (0 >= res)
        {
          if (GNUTLS_E_INTERRUPTED != res)
            {
              urh->app.celi &= ~MHD_EPOLL_STATE_WRITE_READY;

              if (GNUTLS_E_INTERRUPTED != res)

(GNUTLS_E_INTERRUPTED != res) is checked twice.

In the read part (a few lines above), GNUTLS_E_INTERRUPTED != res is checked first and then GNUTLS_E_AGAIN != res. It looks like something similar should be done here, but I’m not sure.

Thanks,

Martxel
2018-12-19 00:06:48 +01:00
Christian Grothoff 1619b9f051 reset timeout on response being queued, needed in thread-per-connection mode if the working thread takes very long 2018-12-13 22:51:05 +01:00
Christian Grothoff 273a6df932 remove requirement for VLA in digestauth.c logic 2018-12-11 10:06:42 +01:00
Christian Grothoff 18a607a518 use WSA_FLAG_OVERLAPPED in W32 sockets as per suggestion from Johnathan McDougall on the mailinglist 2018-12-08 23:18:08 +01:00
Christian Grothoff 517c4a81c7 releasing libmicrohttpd 0.9.62 2018-12-08 23:11:13 +01:00
Christian Grothoff 2897bd23e5 add test for RFC 7616 and document new API 2018-12-08 22:54:33 +01:00
Christian Grothoff bcba3f58c5 preliminary implementation for RFC 7616 support 2018-12-08 17:35:37 +01:00
Christian Grothoff be32c05e0e add build option to compile MHD without threads 2018-12-07 12:42:49 +01:00
Christian Grothoff 0eefd20ba3 add build option to compile MHD without threads 2018-12-07 12:40:40 +01:00
silvioprog 22c08b5fd7 Renamed all occurrences from _model(s)_ to _mode(s)_. 2018-12-06 13:26:39 -03:00
silvioprog b220303691 Optimized the function MHD_create_response_from_callback() for Windows by increasing its internal buffer size and allowed to customize it via macro MHD_FD_BLOCK_SIZE. 2018-12-06 12:54:00 -03:00
silvioprog 53674dcdfb Referenced the gnutls_load_file() function in the HTTPs examples. 2018-12-06 02:13:37 -03:00
Christian Grothoff 79a8955bb6 fix #5496:
'
2018-12-05 18:20:00 +01:00
Christian Grothoff 7b92bb1cde releasing 0.9.61 2018-11-20 22:23:03 +01:00
Christian Grothoff 64e1480540 fix build issue with GnuTLS < 3.0 2018-11-14 14:01:49 +01:00
Christian Grothoff ff551c4671 From: Christian Hesse <mail@eworm.de>
Date: Thu, 8 Nov 2018 00:15:29 +0100
Subject: [PATCH 1/1] fix tests with curl

Starting with curl 7.62.0 some tests fail. The commit in question is
46e16406 [0] ("url: use the URL API internally as well").

Analyzing the changed behavior reveals that the url given to
curl_easy_setopt() with CURLOPT_URL is no longer encoded. Looking at the
documentation [1] this behavior is correct, the "parameter should be a
char * to a zero terminated string which must be URL-encoded [...]".

So let's just give a valid url...

[0] https://github.com/curl/curl/commit/46e164069d1a5230e4e64cbd2ff46c46cce056bb
[1] https://curl.haxx.se/libcurl/c/CURLOPT_URL.html

Signed-off-by: Christian Hesse <mail@eworm.de>
Signed-off: CG
2018-11-12 19:52:49 +01:00
Christian Grothoff 2962b6e48d add MHD_create_response_from_buffer_with_free_callback 2018-11-08 14:53:46 +01:00
Christian Grothoff acd39ed23d releasing libmicrohttpd 0.9.60 2018-11-06 19:55:27 +01:00
Christian Grothoff 3fc686e335 initialize epoll_fd even if we have no listen fd, patch by Jose Bollo 2018-11-01 16:31:03 +01:00
Christian Grothoff 4728124102 notify main thread about thread termination for instant clean up 2018-10-20 12:45:21 +02:00
Christian Grothoff 9199e5aa3a From: Gauthier Haderer <ghaderer@wyplay.com>
Date: Mon, 15 Oct 2018 14:11:39 +0200
Subject: [PATCH] Add response flag to force version to 1.0 and maintain
 connection management.

The existing MHD_RF_HTTP_VERSION_1_0_ONLY flag already changes MHD's
behavior to apply HTTP 1.0 rules for connection management. When
enabled, MHD sends a response using the same version as used in the
request (is this normal?).

What I want is MHD responding as a HTTP 1.0 server with support for
connection management headers would do. This is what the
MHD_RF_HTTP_VERSION_1_0_RESPONSE response flag is for.

You can even combine it with MHD_RF_HTTP_VERSION_1_0_ONLY to change the
response's HTTP version while maintaining strict compliance with HTTP
1.0 regarding connection management.

This solution is not perfect as this flag is set on the response which
is created after header processing. So MHD will behave as a HTTP 1.1
server until the response is queued. It means that an invalid HTTP 1.1
request will fail even if the response is sent with HTTP 1.0 and the
request would be valid if interpreted with this version. For example,
this request will fail in strict mode:

GET /dummy HTTP/1.1

as the Host header is missing and is mandatory in HTTP 1.1, but it
should succeed when interpreted with HTTP 1.0.

I don't think this is a big issue in practice. Besides, being able to
change the HTTP version on a response basis is really convenient when
using MHD in a test framework where we need to validate a client against
HTTP 1.1 AND HTTP 1.0.
2018-10-16 20:44:39 +02:00
Christian Grothoff 0db81a9248 fix #5411 2018-10-05 19:23:26 +02:00
Christian Grothoff a7c0b04cce properly recognize Dirk B. 2018-07-14 13:27:46 +02:00
Christian Grothoff 2c47a23dec integrate TLS PSK patch from Tal Moaz (plus documentation, plus style and bugfixes 2018-07-14 13:27:45 +02:00
Christian Grothoff 2ed04522e2 add support for digest auth with hashed password 2018-07-14 13:27:45 +02:00
Christian Grothoff 85913afa11 move to canonical gettext 2018-03-10 12:28:34 +01:00
Christian Grothoff 0ebdff94d4 fix test_upgrade transient failures (#5189) 2018-03-02 21:45:26 +01:00
Christian Grothoff fc495439b4 call completion handler also for upgrade connections 2018-02-27 23:28:01 +01:00
Christian Grothoff 9bf8e55fe1 fixing #5278 as suggested by reporter 2018-02-16 03:10:24 +01:00
Christian Grothoff 21b2dd96aa getting ready for 0.9.59 2018-02-01 10:18:02 +01:00
Christian Grothoff 12a6689266 fix mask 2018-02-01 08:40:27 +01:00
Christian Grothoff 2dd1b43e09 fix #5260 as suggested by reporter 2018-01-29 17:35:15 +01:00
Christian Grothoff 867c58add0 fix warnings for __clang_major__ for non-clang compilers 2018-01-04 12:25:07 +01:00
Evgeny Grin (Karlson2k) 98cd69d190 Doxygen fixes 2017-12-11 17:13:45 +03:00
Evgeny Grin (Karlson2k) b4aa632ce2 Releasing GNU libmicrohttpd 0.9.58 2017-12-07 21:09:24 +03:00