-
-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
curlx_strtoofft() doesn't fully protect against null "str" argument #1950
Comments
By the way I'm happy to provide a patch and pull request if there is a preference for which way to go with this. |
First, 7.46.0 is really old so we don't really care much how we did back then. But... The code still has a similar construct. We just don't support a NULL pointer in the first argument so the check for that being non-NULL is completely superfluous. We should perhaps instead make than an assert. |
I think he means 7.56, I can't find that code in 7.46. I agree it should be removed. It is the same as if you call strtoll or _strtoi64 with null for the first argument. |
ah, makes sense. Yes please @bnason-nf, a PR would be nice! |
Yes sorry, 7.46.0 is a typo, I meant the latest 7.56.0. I will put together a PR. |
Closes curl#1950: curlx_strtoofft() doesn't fully protect against null 'str' argument.
With curl 7.46.0, in curlx_strtoofft(), there is a check for a null "str" argument, but the remaining lines of the function don't guard against null. Currently, it it would cause a null pointer dereference if str were ever null.
So, either the first condition in this while loop is unnecessary if str can never be null:
while(str && *str && ISSPACE(*str))
Or the remaining code should be changed to handle a null str argument (maybe just an early out at the top of the function would be simplest).
The text was updated successfully, but these errors were encountered: