Commit Graph
30 Commits
Author SHA1 Message Date
Evgeny Grin (Karlson2k) a21ff8a9ef Removed MHD_tls_connection_handle_idle() and MHD_Connection::idle_handler.
Ensure that MHD_connection_update_event_loop_info() is called for MHD_TLS_CONNECTION_INIT state to
properly update read/write event loop info when doing TLS handshake
2017-05-29 21:41:06 +03:00
Evgeny Grin (Karlson2k) 8851d88e40 Fixed hypothetical situation when timeout could be larger than possible to measure.
Fixed detecting real closest timeout deadline when value wraps upper limit.
Fixed compiler warnings.
2017-04-05 23:21:59 +03:00
Evgeny Grin (Karlson2k) 88fee01b55 Fixed logic of idle disconnection: connection should be disconnected not early than "timeout",
not before "timeout" number of seconds.
2017-03-16 23:14:35 +03:00
Evgeny Grin (Karlson2k) 605bb70bde HTTPS connection: fixed double processing of timeout 2017-03-16 22:03:49 +03:00
Evgeny Grin (Karlson2k) 76500135fe Update connection last activity if and only if any data was received or transmitted. 2017-03-16 21:48:59 +03:00
Evgeny Grin (Karlson2k) 7d4e3953b7 Unified update of connection activity. 2017-03-16 21:28:32 +03:00
Evgeny Grin (Karlson2k) 589983325b run_tls_handshake(): fixed wrong return value resulting in slower TLS connection setup 2017-03-16 21:06:27 +03:00
Evgeny Grin (Karlson2k) 53ffa66992 Do not disconnect suspended HTTPS connections by timeout. 2017-03-16 20:39:58 +03:00
Evgeny Grin (Karlson2k) 5e099343f2 MHD_tls_connection_handle_idle(): do not need to explicitly handle data pending in TLS buffers
Data from TLS buffers handled automatically by read/write functions.
2017-03-16 18:43:53 +03:00
Christian Grothoff d170754b7d convert tls_closed to 'bool' 2017-02-15 13:32:39 +01:00
Evgeny Grin (Karlson2k) 384cb2ab65 Deduplicated connection's closure code, improved TLS closure. 2016-11-01 20:51:01 +03:00
Christian Grothoff e3aee92d56 get test_upgrade_ssl to pass again 2016-10-17 13:50:27 +02:00
Christian Grothoff 9b2289ae19 fixing build errors if new upgrade logic is compiled without HTTPS support 2016-09-05 12:53:16 +00:00
Christian Grothoff 404538a7cf more work on upgrade implementation 2016-08-28 10:49:19 +00:00
Evgeny Grin (Karlson2k) 9826ad54e0 Refactoring: do not define EPOLL_SUPPORT if epoll is disabled or not supported. 2016-08-24 15:02:10 +00:00
Evgeny Grin (Karlson2k) 4f7cfbe58e configure.ac: cleanup and fixes related to optional features, corresponding changes in source files 2016-01-11 20:15:19 +00:00
Christian Grothoff 2a6eada873 -fix assertion failure from race on shutdown and buffer shrinkage with pipelining 2015-10-25 14:33:28 +00:00
Evgeny Grin (Karlson2k) 6ef62209cb connection_https.c: include "connection.h" alongside with "connection_https.h" 2015-09-07 11:58:44 +00:00
Evgeny Grin (Karlson2k) c57068f727 Include correct header in connection_https.c 2015-09-06 20:35:03 +00:00
Evgeny Grin (Karlson2k) 70f7ad46eb Reimplement monotonic clock with wide range of platforms support 2015-08-27 09:43:09 +00:00
Christian Grothoff de029f6250 export MHD_get_reason_phrase_for 2015-08-14 12:19:43 +00:00
Christian Grothoff 10cf14317c -bringing copyright tags up to FSF standard 2015-02-07 23:12:45 +00:00
Christian Grothoff fd94723863 Hi Christian,
I attach the first attempt on SO_REUSEPORT. The patch is available
either at https://github.com/foxik/libmicrohttpd/commit/9ce9422742e10458f87275ea202a982e00c2b88c
or attached. (It is against the version with
MHD_DAEMON_OPTION_CURRENT_CONNECTIONS, but I can rebase it to current
SVN HEAD if you want.)

It seems that a reasonably multiplatform way of detecting SO_REUSEPORT is
  #ifdef SO_REPOSEPORT
which is used for example by Perl. For SO_EXCLUSIVEADDRUSE, the same
strategy seems to work too, according to Windows SDK headers and MinGW
WinAPI headers.

The current patch adds an option to allowing/disallowing address:port
reuse. One remark:
- currently both nonexisting SO_xxx and setsockopt failure are fatal and
  MHD_start_daemon fails. That may be too harsh -- maybe the
  MHD_OPTION_LISTENING_ADDRESS_REUSE should be only a hint.

  Nevertheless, as one can freely not use
  MHD_OPTION_LISTENING_ADDRESS_REUSE option, I chose the "fail on error"
  behaviour.

Thanks,
cheers,
Milan Straka

Original patch modified to get rid of some redundant USE_DEBUG
checks, fix indentation, and #ifndef SO_REUSEPORT on Linux,
we try be #defining it to 15 ourselves.
2014-10-29 19:50:58 +00:00
LRN 0d8aeae6df Add decl check for _stati64 (required for newer plibc)
Remove redundant -no-undefined (it's part of mandatory MHD_LIB_LDFLAGS
now)

Remove --export-all-symbols for W32 (visibility is used instead)
Add -fvisibility=hidden configure check (shamelessly borrowed from GTK)

Remove unused -export-symbols-regex check

Define _MHD_EXTERN to "extern" if it's undefined (this is what clients
get)

Mark all public functions with _MHD_EXTERN

Remove HIDDEN_SYMBOL definition

Don't mark hidden functions with HIDDEN_SYMBOL (everything that is not
explicitly public is hidden by default now)

Change constructor macros a bit to apply _MHD_EXTERN to them cleanly

Use HIDDEN_VISIBILITY_CFLAGS when compiling libraries

Remove EXPORT.sym files, don't mention them in EXTRA_DIST, don't use
them to define a list of exported functions

Remove redundant -no-undefined, make sure only the one that gets into
Makefiles directly remains, remove -Wl prefix from it
2014-01-27 06:59:02 +00:00
Christian Grothoff a372d23b4e -hide symbols 2013-12-24 11:28:30 +00:00
Christian Grothoff 14873b8fa8 releasing 0.9.30 2013-09-02 21:10:11 +00:00
Christian Grothoff f55c9a8e98 -fix connect/content-length handling 2013-08-02 21:42:29 +00:00
Andrey Uzunov 184cbd6222 microhttpd: put "#if EPOLL_SUPPORT" everywhere, so compilation can succeed even when it is disabled 2013-07-21 16:05:48 +00:00
Christian Grothoff a559950eb8 -fix combining HTTPS and EPOLL 2013-07-20 10:36:26 +00:00
Christian Grothoff 9eb27c8dbe -changing directory name 2013-05-05 18:07:33 +00:00