libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit 57a5fcfac7b83c771d11d8c46d6d010d86e526a4
parent 69aec9dc33b71c782075a263f1484945f399078f
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Thu, 21 Jul 2022 13:12:46 +0300

digestauth: fixed username extraction with the new API

Diffstat:
Msrc/microhttpd/digestauth.c | 9+++++++++
1 file changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/microhttpd/digestauth.c b/src/microhttpd/digestauth.c @@ -892,9 +892,12 @@ get_rq_uname (const struct MHD_RqDAuth *params, else { uname_info->userhash_bin = (uint8_t *) (buf + buf_used); + uname_info->uname_type = MHD_DIGEST_AUTH_UNAME_TYPE_USERHASH; buf_used += uname_info->userhash_bin_size; } } + else + uname_info->uname_type = MHD_DIGEST_AUTH_UNAME_TYPE_STANDARD; } else if (MHD_DIGEST_AUTH_UNAME_TYPE_EXTENDED == uname_type) { @@ -909,9 +912,15 @@ get_rq_uname (const struct MHD_RqDAuth *params, { uname_info->username = (char *) (buf + buf_used); uname_info->username_len = (size_t) res; + uname_info->uname_type = MHD_DIGEST_AUTH_UNAME_TYPE_EXTENDED; buf_used += uname_info->username_len + 1; } } + else + { + mhd_assert (0); + uname_info->uname_type = MHD_DIGEST_AUTH_UNAME_TYPE_INVALID; + } mhd_assert (buf_size >= buf_used); return buf_used; }