fix algorithm parsing, string cmp was matching wrong strings to client requests to determine selected algorithm

This commit is contained in:
Christian Grothoff
2026-07-28 10:58:39 +02:00
parent f438804c18
commit 888606e004
+7 -7
View File
@@ -290,15 +290,14 @@ get_rq_dauth_algo (const struct MHD_RqDAuthParam *const algo_param)
return MHD_DIGEST_AUTH_ALGO3_SHA256;
if (MHD_str_equal_caseless_quoted_s_bin_n (algo_param->value.str, \
algo_param->value.len, \
_MHD_MD5_TOKEN _MHD_SESS_TOKEN))
_MHD_SHA512_256_TOKEN))
return MHD_DIGEST_AUTH_ALGO3_SHA512_256;
/* Algorithms below are not supported by MHD for authentication */
if (MHD_str_equal_caseless_quoted_s_bin_n (algo_param->value.str, \
algo_param->value.len, \
_MHD_SHA512_256_TOKEN \
_MHD_SESS_TOKEN))
/* Algorithms below are not supported by MHD for authentication */
_MHD_MD5_TOKEN _MHD_SESS_TOKEN))
return MHD_DIGEST_AUTH_ALGO3_MD5_SESSION;
if (MHD_str_equal_caseless_quoted_s_bin_n (algo_param->value.str, \
algo_param->value.len, \
@@ -307,7 +306,8 @@ get_rq_dauth_algo (const struct MHD_RqDAuthParam *const algo_param)
return MHD_DIGEST_AUTH_ALGO3_SHA256_SESSION;
if (MHD_str_equal_caseless_quoted_s_bin_n (algo_param->value.str, \
algo_param->value.len, \
_MHD_SHA512_256_TOKEN))
_MHD_SHA512_256_TOKEN \
_MHD_SESS_TOKEN))
return MHD_DIGEST_AUTH_ALGO3_SHA512_256_SESSION;
/* No known algorithm has been detected */