Commit Graph
5727 Commits
Author SHA1 Message Date
Evgeny Grin (Karlson2k) 530942bfe4 mhd_tls_funcs: fixed wrong return value type 2024-11-24 20:54:11 +03:00
Evgeny Grin (Karlson2k) 85ba7af004 Added TLS lib debug messages printing 2024-11-24 20:54:11 +03:00
Evgeny Grin (Karlson2k) 085f18f4be Renamed CONNECTION_STATE to HTTP_STAGE
This is stages of HTTP communication, not states of the connection.
2024-11-24 20:54:10 +03:00
Evgeny Grin (Karlson2k) 540078c600 stream_process_states: extracted one function for internal access 2024-11-24 20:54:10 +03:00
Evgeny Grin (Karlson2k) 835c9fac96 conn_mark_ready: unified duplicated code 2024-11-24 20:54:10 +03:00
Evgeny Grin (Karlson2k) 9276899b29 mhd_socket_error: split into enum and functions 2024-11-24 20:54:10 +03:00
Evgeny Grin (Karlson2k) 333c5647f3 tls_gnu_funcs: corrected sections comments 2024-11-24 20:54:09 +03:00
Evgeny Grin (Karlson2k) 425d3003c3 daemon_add_conn: added TODO comment 2024-11-24 20:54:09 +03:00
Evgeny Grin (Karlson2k) ca88e99ffd Implemented initialisation of connection's GnuTLS data 2024-11-24 20:54:09 +03:00
Evgeny Grin (Karlson2k) 9cccdd11eb TLS backends: improved readability, renames, corrected comments 2024-11-21 22:44:19 +03:00
Evgeny Grin (Karlson2k) 638ef69dc6 mhd_recv.h: fixed code style 2024-11-21 22:44:19 +03:00
Evgeny Grin (Karlson2k) f996b18c04 Refactoring: moved socket-specific connection data to special structure 2024-11-21 22:44:19 +03:00
Christian Grothoff 80d55d8274 add minimal TLS test 2024-11-20 11:52:15 +01:00
Evgeny Grin (Karlson2k) cd8c2ebf9f configure: fixed detection when old version of GnuTLS header is used 2024-11-19 13:50:56 +03:00
Evgeny Grin (Karlson2k) cd6fda427c Implemented initialisation of daemon's GnuTLS data 2024-11-19 10:52:16 +03:00
Evgeny Grin (Karlson2k) 86170adff2 mhd_status_code_int: new internal header 2024-11-19 10:52:16 +03:00
Evgeny Grin (Karlson2k) cb09c6e71d mhd_arr_num_elems: added new helper macro 2024-11-19 10:52:16 +03:00
Evgeny Grin (Karlson2k) d0f8bce9d0 Makefile.am: fixed formatting 2024-11-19 10:52:16 +03:00
Evgeny Grin (Karlson2k) feb30189e7 mhd_sys_options: Fixed typo in comment 2024-11-19 10:52:15 +03:00
Evgeny Grin (Karlson2k) 3a65ef3fca mhd_sys_options: alternative compiler trick 2024-11-19 10:52:15 +03:00
Evgeny Grin (Karlson2k) 77e6c70f3e Added basis for TLS infrastructure, implemented GnuTLS global initialisation 2024-11-19 10:52:15 +03:00
Evgeny Grin (Karlson2k) 43b21403d8 Makefile: do not distribute mhd_config.h 2024-11-18 17:17:54 +03:00
Evgeny Grin (Karlson2k) 4b50c448a9 sys_w32_ver.h: new helper macro for W32 2024-11-18 17:17:54 +03:00
Evgeny Grin (Karlson2k) c900c14fde configure: updated GnuTLS detection, rejected too old GnuTLS versions
Can be backported
2024-11-18 17:17:54 +03:00
Evgeny Grin (Karlson2k) 375f6ba965 W32: disabled unwanted callbacks for thread attach/detach
Used if MHD is compiled as DLL with DLL runtime C library
2024-11-18 17:17:53 +03:00
Evgeny Grin (Karlson2k) 5bdda4bcc3 Completely re-written start-up library initialisation
Global library initialisation/deinitialisation is know source for
various hard-to-debug problems.
In complex environments any function called during startup may lead to
failure or even deadlock if called function depends on other resources
that are not yet initialised or cannot be initialised yet.
Accordingly, any function called during shutdown may lead to other
problems as well if it depends on resources that has been initialised
earlier.

To avoid problems with initialisation/de-initialisation, MHD now uses
only minimal initialisation during startup (mainly a single mutex) and
full initialisation of the library when the first daemon is created.
When the last daemon is shutting down, global library de-initialization
is performed.

This approach gives a very clear way for correct start-up and shut down
procedures.
2024-11-18 17:17:52 +03:00
Evgeny Grin (Karlson2k) 7c5132a528 mhd_mono_clock: added re-init function 2024-10-30 11:44:00 +01:00
Evgeny Grin (Karlson2k) c4877a91f7 Implemented support for mach_*_time() functions (Darwin)
Can be backported
2024-10-30 11:44:00 +01:00
Evgeny Grin (Karlson2k) 3fa2db6ce4 mhd_mono_clock: streamlined code 2024-10-30 11:44:00 +01:00
Evgeny Grin (Karlson2k) 2492ef7bc1 mhd_mono_clock: improved fallback resiliency and accuracy 2024-10-30 11:43:59 +01:00
Evgeny Grin (Karlson2k) b228a53bab mhd_mono_clock: improved calculation accuracy on W32 2024-10-30 11:43:59 +01:00
Evgeny Grin (Karlson2k) c03caf4acd mhd_mono_clock: simplified code 2024-10-30 11:43:59 +01:00
Evgeny Grin (Karlson2k) 5482e206ad mhd_mono_clock: re-structured Darwin initialisation, improved readability 2024-10-30 11:43:58 +01:00
Evgeny Grin (Karlson2k) 4204708345 mhd_mono_clock: added news IDs, fixed comments, minor readability fixes 2024-10-30 11:43:58 +01:00
Evgeny Grin (Karlson2k) c47d50e787 mhd_mono_clock: updated code style 2024-10-30 11:43:58 +01:00
Evgeny Grin (Karlson2k) b8b168e48b Include "mhd_sys_options.h" in every file
The header must be included before any other headers.
2024-10-30 11:43:58 +01:00
Evgeny Grin (Karlson2k) bb1abbce46 mhd_itc.c: fixed missing name updated 2024-10-30 11:43:57 +01:00
Evgeny Grin (Karlson2k) 501a102f6a microhttpd2.h: updated status codes 2024-10-30 11:43:57 +01:00
Evgeny Grin (Karlson2k) a0733db598 configure: fixed TCP_NODELAY detection 2024-10-30 11:43:57 +01:00
Evgeny Grin (Karlson2k) dce84df5ee mhd_locks: updated, fixed format and missing macros 2024-10-30 11:43:57 +01:00
Evgeny Grin (Karlson2k) 2d6a514ba6 autoinit_funcs.h: improved support for Solaris compiler 2024-10-30 11:43:56 +01:00
Evgeny Grin (Karlson2k) ba7ecee306 Migrated to new API of autoinit_funcs.h 2024-10-30 11:43:56 +01:00
Evgeny Grin (Karlson2k) 0c4f15bb0c autoinit_funcs.h: significantly reworked
Widen support for compilers with function "attribute" support.
Improved W32 support.
Implemented more flexibility with more control macros for users.
Separated "namespace" by prefixing used names with 'AIF_'.
autoinit_funcs.h: significantly reworked

Widen support for compilers with function "attribute" support.
Improved W32 support.
Implemented more flexibility with more control macros for users.
Separated "namespace" by prefixing names with 'AIF_'.
2024-10-30 11:43:56 +01:00
Evgeny Grin (Karlson2k) b691b86cda mhd_lib_init{,_impl}.h: prepare for new autoinit functions macros 2024-10-22 10:57:51 +02:00
Evgeny Grin (Karlson2k) 0896ecd9bc mhd_lib_init.h: fixed building without autoinit functions 2024-10-22 10:57:51 +02:00
Evgeny Grin (Karlson2k) aecb8d7913 mhd_locks.h: minor refactoring 2024-10-22 10:57:51 +02:00
Evgeny Grin (Karlson2k) 7cc50f8b2f sys_w32_ver.h: new helper macro for W32 2024-10-22 10:57:50 +02:00
Evgeny Grin (Karlson2k) e9c0fc0bbb Renamed sockets kind macros 2024-10-07 14:25:10 +02:00
Evgeny Grin (Karlson2k) ab5ea93398 Renamed threads kind macros 2024-10-06 22:01:15 +02:00
Evgeny Grin (Karlson2k) fa1f02cedf mhd_locks: renamed some macros for uniformity and clarity 2024-10-06 21:23:57 +02:00