-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The channel binding data dynbuf was not set correctly #15685
Comments
Thanks for this report. A question on this though: The dynbuf logic looks like this: if(fit > s->toobig) {
return CURLE_TOO_LARGE; ... which I think indicates that the limit set in dyn_init() is the maximum allowed size. And the comments say 85 bytes is the largest allowed size. So where is the discrepancy? |
"leng" is the actual data length (EXCLUDING the null-terminator). |
Yes, you're right of course. That's also why the value is called "toobig", So |
The channel binding data dynbuf was not set correctly making it fail with CURLE_TOO_LARGE too easily. Reported-by: galen11 on github Fixes #15685
I did this
lib/http_negotiate.c
The channel binding data dynbuf was not set correctly. toobig should be set to the actual data length plus 1. Otherwise, dyn_nappend will fail with CURLE_TOO_LARGE.
To address this, toobig should be set to SSL_CB_MAX_SIZE + 1 when Curl_dyn_init.
The issue was from an enhancement of cURL, see 0a5ea09
I expected the following
No response
curl/libcurl version
curl 8.10.1
operating system
RedHat / Rocky Linux
The text was updated successfully, but these errors were encountered: