Evgeny Grin (Karlson2k)
51bea81bf7
microhttpd.h: sorted Digest Auth functions and enums
...
This should improve readability of the header.
2022-07-30 22:28:44 +03:00
Evgeny Grin (Karlson2k)
f708f54c03
test_digestauth2: added testing of RFC2069 mode
2022-07-30 22:28:44 +03:00
Evgeny Grin (Karlson2k)
fff9fa7832
digestauth: implemented support for RFC 2069
...
The old Digest Auth specification, but still supported by many clients.
2022-07-30 22:28:44 +03:00
Evgeny Grin (Karlson2k)
7727073aab
test_digestauth2: added testing of Auth v2 API
2022-07-30 22:28:44 +03:00
Evgeny Grin (Karlson2k)
3d75094b41
test_digestauth2: added testing of 'userdigest'
2022-07-30 22:28:43 +03:00
Evgeny Grin (Karlson2k)
0b70234172
test_digestauth2: test the new option
2022-07-30 22:28:43 +03:00
Evgeny Grin (Karlson2k)
3213c703dd
daemon.c: changed fill value for unused members
2022-07-30 22:28:43 +03:00
Evgeny Grin (Karlson2k)
0ecad853ed
Added new MHD_OPTION_DIGEST_AUTH_RANDOM_COPY option
2022-07-30 22:28:43 +03:00
Evgeny Grin (Karlson2k)
653376caa5
microhttpd: improved description for MHD_OPTION_DIGEST_AUTH_RANDOM
2022-07-30 22:28:43 +03:00
Evgeny Grin (Karlson2k)
c3b626ed22
microhttpd: improved description for MHD_OPTION_NONCE_NC_SIZE
2022-07-30 22:28:42 +03:00
Evgeny Grin (Karlson2k)
41dfd74cd4
configure: control more parameters with 'build-type'
2022-07-30 22:28:42 +03:00
Evgeny Grin (Karlson2k)
3f583074e6
configure: report in summary whether static and shared version will be built
2022-07-30 22:28:42 +03:00
Evgeny Grin (Karlson2k)
d1b181d4dc
configure: cosmetics
2022-07-30 22:28:42 +03:00
Evgeny Grin (Karlson2k)
5aa16f7e31
digestauth: added dynamic detection and use of the algo specified by client
2022-07-30 22:28:41 +03:00
Christian Grothoff
9eb7b4de64
-fix typos
2022-07-28 22:05:12 +02:00
Evgeny Grin (Karlson2k)
2949c070e6
Makefile: cosmetics
2022-07-28 07:21:37 +03:00
Evgeny Grin (Karlson2k)
a64c96c497
MHD_FEATURE_*: added some values related to Digest Auth
2022-07-28 07:21:37 +03:00
Evgeny Grin (Karlson2k)
2fd1a01fe0
test_digestauth2: added new group of tests for Digest Auth checking
2022-07-28 07:21:36 +03:00
Evgeny Grin (Karlson2k)
c03c57c9d2
Added MHD_queue_auth_required_response3(); Refactored public Digest Auth API v3
...
Added brand new function with more complete support for RFC 7616
features. New function implemented from scratch. Old functions became
wrappers for the new function, so fixes are inherited.
Fixes:
* All user values are properly quoted
Features:
* Added support for optional 'domain' Digest auth parameter
* Realm now optional
* Added userhash support
* Added charset support
For other Digest Auth v3 functions:
* Added more parameters for complete control of Auth process from
application side.
2022-07-28 07:21:35 +03:00
Evgeny Grin (Karlson2k)
4baec145d4
Digest Auth public structs: removed redundant member
...
Added one more check for data validity.
2022-07-28 07:21:33 +03:00
Evgeny Grin (Karlson2k)
13db035fc9
MHD_add_response_entry(): refactoring + added internal function
2022-07-28 07:21:33 +03:00
Evgeny Grin (Karlson2k)
012a2d3bb1
Updated Digest Auth enums in the header
2022-07-28 07:21:33 +03:00
Evgeny Grin (Karlson2k)
0194db857c
test_digestauth_concurrent: fixed compiler warnings
2022-07-25 16:20:50 +03:00
Evgeny Grin (Karlson2k)
99c44002a9
tests_digestauth*: added workarounds for libcurl bug
2022-07-25 16:20:50 +03:00
Evgeny Grin (Karlson2k)
aa49d6053c
test_digestauth_emu_ext: cosmetics, additional check
2022-07-25 16:20:50 +03:00
Evgeny Grin (Karlson2k)
5da848a157
test_digestauth{,_sha256,_with_aguments}: moved back to Digest Auth APIv2
...
Fixed compiler warnings
2022-07-25 16:20:49 +03:00
Evgeny Grin (Karlson2k)
50828ba77d
digestauth: term correction in comment
2022-07-25 16:20:49 +03:00
Evgeny Grin (Karlson2k)
5866b68fa7
Updated doxy for old Digest Auth API function
...
This function supports new functionality now (extended notation) and
this functionality is automatically available without rebuilding
application.
2022-07-25 16:20:49 +03:00
Evgeny Grin (Karlson2k)
961635da2a
digest_auth_check(): added check for too large realm value
2022-07-25 16:20:49 +03:00
Evgeny Grin (Karlson2k)
7e5206cc03
digest_auth_check(): added support for userhash
2022-07-25 16:20:48 +03:00
Evgeny Grin (Karlson2k)
c024f7c8ad
digest_auth_check(): reduced scope of one-time variable
2022-07-25 16:20:48 +03:00
Evgeny Grin (Karlson2k)
658e94e110
gen_auth: cosmetics
2022-07-25 16:20:48 +03:00
Evgeny Grin (Karlson2k)
8714ba41f7
gen_auth: fixed detection of userhash in Digest Auth requests
2022-07-25 16:20:48 +03:00
Evgeny Grin (Karlson2k)
7ace1e11a3
digestauth: fixed copy-paste error in request algo parsing
2022-07-25 16:20:33 +03:00
Evgeny Grin (Karlson2k)
2279673589
Added test for Digest Auth with username in extended notation
...
As libcurl does not support extended notation, it is not completely
real test. Pregenerated fake nonce, cnonce and response are used so
only parsing of request header and checking request header are tested.
No real authorisation.
2022-07-21 15:07:08 +03:00
Evgeny Grin (Karlson2k)
aac0cc55ea
digestauth: added support for extended notation for old API
2022-07-21 15:07:07 +03:00
Evgeny Grin (Karlson2k)
c7ac9d80a5
digestauth: do not allocate extra space for extended notation
2022-07-21 15:07:07 +03:00
Evgeny Grin (Karlson2k)
57a5fcfac7
digestauth: fixed username extraction with the new API
2022-07-21 15:07:07 +03:00
Evgeny Grin (Karlson2k)
69aec9dc33
digest_auth_check(): updated the order of parameters check
...
If more than one parameter is wrong, then the first checked wrong
parameter will be reported, so check the most important parameters
first.
2022-07-21 15:07:07 +03:00
Evgeny Grin (Karlson2k)
b528bec9c1
digest_auth_check(): added support for username in extended notation
2022-07-21 15:07:06 +03:00
Evgeny Grin (Karlson2k)
e1e5a39568
digestauth: removed usage of variable-length arrays
...
This should improve efficiency, size and security:
* Code works just fine with fixed size arrays.
* The resulting binary size is smaller when fixed size arrays are used.
* GCC stack protector cannot be used with functions with variable-length
arrays.
2022-07-21 15:07:06 +03:00
Evgeny Grin (Karlson2k)
c63e7544d8
digest calculations: further simplified code, removed some local variables
2022-07-21 15:07:06 +03:00
Evgeny Grin (Karlson2k)
76813be7bf
digest_auth_check(): removed one more large local variable
2022-07-21 15:07:06 +03:00
Evgeny Grin (Karlson2k)
98ade6e6fe
digestauth: added sanity check for digest macros
2022-07-21 15:07:06 +03:00
Evgeny Grin (Karlson2k)
984f72a201
digestauth: simplified internal function call
2022-07-21 15:07:05 +03:00
Evgeny Grin (Karlson2k)
348da88b86
digestauth: added small helper function to simplify the code
2022-07-21 15:07:05 +03:00
Evgeny Grin (Karlson2k)
e916620931
test_digest: improved test URI
2022-07-21 15:07:05 +03:00
Evgeny Grin (Karlson2k)
755b338ba5
test_basicauth: Fixed doxy
2022-07-21 15:07:05 +03:00
Christian Grothoff
bd88a19e2d
-typo
2022-07-20 21:04:25 +02:00
Evgeny Grin (Karlson2k)
76b5b1952c
microhttpd.h: formatted some deprecation warnings
2022-07-19 17:50:07 +03:00