Evgeny Grin (Karlson2k)
e4a40c110c
test_response_entries: fixed C standard
2022-05-14 16:46:38 +03:00
Evgeny Grin (Karlson2k)
83fe7b778a
Fixed additional compiler warnings on W32
2022-05-14 16:09:10 +03:00
Evgeny Grin (Karlson2k)
e4d6c07b14
Fixed some compiler warnings on W32
2022-05-14 15:48:35 +03:00
Evgeny Grin (Karlson2k)
840bc6ecfc
Fixed handling of connections with non-standard client addresses (pipe or UNIX sockets).
...
Fixed potential out-of-bond buffer read
2022-05-14 15:47:58 +03:00
Evgeny Grin (Karlson2k)
1d4a968e1b
Fixed return type for get_system_fdsetsize_value ()
2022-05-14 15:21:44 +03:00
Evgeny Grin (Karlson2k)
57f3e09813
Return NULL for MHD_CONNECTION_INFO_CLIENT_ADDRESS if information is not available
...
Pipe or UNIX socket connections may have no client address
2022-05-14 15:20:53 +03:00
Evgeny Grin (Karlson2k)
85ae657849
Replaced MHD_RESPMEM_PERSISTENT usage in examples and code
...
New functions do not produce compiler warnings.
2022-05-14 15:07:47 +03:00
Evgeny Grin (Karlson2k)
4fc1bbfd5b
MHD_create_response_from_buffer_copy(): fixed doxy
2022-05-14 14:52:07 +03:00
Evgeny Grin (Karlson2k)
a13647d1d0
Replaced MHD_RESPMEM_MUST_FREE with more portable solution in examples
2022-05-14 14:37:02 +03:00
Evgeny Grin (Karlson2k)
001b6b87fd
Updated example to use new digest auth function
2022-05-13 17:22:28 +03:00
Evgeny Grin (Karlson2k)
a09b252494
Updated tests to use new digest auth functions
2022-05-13 17:21:22 +03:00
Evgeny Grin (Karlson2k)
547246b9cb
Added two new public functions for digest authentication
2022-05-13 17:20:21 +03:00
Evgeny Grin (Karlson2k)
5fdb9effcb
digestauth: added detection for possibly fabricated nonces
2022-05-13 15:18:49 +03:00
Evgeny Grin (Karlson2k)
3c63be9051
digestauth: cosmetics
2022-05-13 15:18:49 +03:00
Evgeny Grin (Karlson2k)
58d1aef753
digestauth: fixed wrong results of client data check
...
Stale 'nonce' from client was reported as either 'INVALID_NONCE' or just
as 'MHD_NO'. Now it is always reported as 'INVALID_NONCE".
Unfortunately wrong 'nonce' is reported as 'INVALID_NONCE' as well and
it cannot be fixed with current API.
2022-05-13 15:18:48 +03:00
Evgeny Grin (Karlson2k)
0d78994dd1
test_set_panic: fixed compiler warnings
2022-05-12 18:56:34 +03:00
Evgeny Grin (Karlson2k)
05f582d4ad
Fixed leaks of mutexes.
...
Leaks of mutexes may be unnoticeable on many platforms, where mutex
destroy actually is no-op.
* Fixed leak of mutexes if daemon creation failed;
* Fixed leak of the cleanup mutex with daemon closure when thread pool
is used.
2022-05-12 16:41:28 +03:00
Evgeny Grin (Karlson2k)
1619fda1d7
Added asserts to check for non-master daemons only
2022-05-12 15:50:43 +03:00
Evgeny Grin (Karlson2k)
2590e0e891
MHD_set_connection_option(): reduced lock scope
...
Improved handling of setting the new connection timeout. Log function
is not called with lock held. Simplified logic, completely avoided
locking in thread-per-connection mode
2022-05-12 15:47:50 +03:00
Evgeny Grin (Karlson2k)
c1a1826e8e
Enforced no use of 'per_ip_connection_mutex' in slave daemons
2022-05-12 10:56:16 +03:00
Evgeny Grin (Karlson2k)
5ea2a8e68f
Cosmetics for cd5ad7aaad
2022-05-12 10:54:08 +03:00
Evgeny Grin (Karlson2k)
b9ed765cda
Fixed compiler error introduced by cd5ad7aaad
2022-05-06 22:28:33 +03:00
Evgeny Grin (Karlson2k)
f1e6de457d
internal.h: fixed static function placement
2022-05-06 22:25:51 +03:00
Evgeny Grin (Karlson2k)
cd5ad7aaad
digestauth: always use master daemon only
2022-05-06 22:21:57 +03:00
Evgeny Grin (Karlson2k)
c658010707
MHD_get_master(): moved to the header, simplified
...
There is no need to support more than one level of 'master' daemon.
2022-05-06 15:19:18 +03:00
Evgeny Grin (Karlson2k)
82ff096dd4
Added one more fallback for unique nonce generation
2022-05-06 15:15:56 +03:00
Evgeny Grin (Karlson2k)
4b3895dd4a
digestauth: added check for valid nonce format in the nonce-nc map
...
This is required to prevent strlen() runaway.
2022-05-06 15:05:43 +03:00
Evgeny Grin (Karlson2k)
171e6d0591
mhd_bithelpers: fixed handling of zero bits rotate
2022-05-06 14:06:52 +03:00
Evgeny Grin (Karlson2k)
54afc7adb5
Added missing zero-out of nonce-nc map array
2022-05-06 13:40:24 +03:00
Evgeny Grin (Karlson2k)
c55939891d
digestauth: added two more asserts
2022-05-06 11:57:54 +03:00
Evgeny Grin (Karlson2k)
05a79fdb36
digestauth: fixed logic of free nonce-nc slot detection
2022-05-06 11:37:23 +03:00
Evgeny Grin (Karlson2k)
9f226932dc
Fixed additional wrong (inverted) asserts
2022-05-05 15:49:30 +03:00
Evgeny Grin (Karlson2k)
1ed1fe5e9e
base64: added input checking and fixed compiler warnings
2022-05-05 15:44:29 +03:00
Evgeny Grin (Karlson2k)
1c58c968ce
Fixed wrong (inverted) asserts
2022-05-05 15:06:59 +03:00
Evgeny Grin (Karlson2k)
86f53a3dda
daemon: muted compiler warning
2022-05-05 15:06:59 +03:00
Evgeny Grin (Karlson2k)
a7aa1266e1
test_parse_cookies: added more checks
2022-05-05 14:55:45 +03:00
Evgeny Grin (Karlson2k)
cc88b5a09d
connection.c: fixed doxy
2022-05-04 19:25:32 +03:00
Evgeny Grin (Karlson2k)
968bb8f87c
Updated .gitignore
2022-05-04 18:34:30 +03:00
Evgeny Grin (Karlson2k)
d031ea8c32
digestauth: re-used static function
2022-05-04 15:58:47 +03:00
Evgeny Grin (Karlson2k)
f2aa7b8853
digestauth: added management of nonce-nc map array slots
2022-05-04 15:58:47 +03:00
Evgeny Grin (Karlson2k)
46554d2c55
digestauth: additional static function for code re-use
2022-05-04 15:47:37 +03:00
Evgeny Grin (Karlson2k)
6b722d2bff
digestauth: additional macros for readability
2022-05-04 15:47:37 +03:00
Evgeny Grin (Karlson2k)
6224ac6264
digestauth: use mseconds for timestamp
...
The clash of nonces is lower with higher timestamp resolution
2022-05-04 15:47:37 +03:00
Evgeny Grin (Karlson2k)
5658583a88
digestauth: increased timestamp to 48 bits
2022-05-04 15:47:36 +03:00
Evgeny Grin (Karlson2k)
6245c9a0a2
digestauth: added run-time checks for algo value
2022-05-04 15:47:36 +03:00
Evgeny Grin (Karlson2k)
f7d878ed66
digestauth: additional assert
2022-05-04 15:47:36 +03:00
Evgeny Grin (Karlson2k)
65300939cf
digestauth: changed type of var
2022-05-04 15:47:36 +03:00
Evgeny Grin (Karlson2k)
c38e0a30f8
digestauth: use 7 bit shift for fast "hash"
...
As only ASCII printable chars are used for "nonce", the highest bit
is always zero.
2022-05-04 15:47:36 +03:00
Evgeny Grin (Karlson2k)
338dba5d1d
.gitignore: Updated
2022-05-04 15:47:35 +03:00
Evgeny Grin (Karlson2k)
fe9ce5db47
internal.h: fixed doxy
2022-05-04 14:24:27 +03:00