| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
There was a problem hiding this comment.
I think this pattern is also present in SHA-* and other modules as it's essentially C/C a b it everywhere.
Sorry, something went wrong.
Not sure what C/C a b is, but the pattern is indeed the same. E.g. Line 89 in 02288bf There the hash_state is also set to NULL, not sure why that is. |
Sorry, something went wrong.
it was meant to be a "C/C a bit" and I used C/C for "carbon copy" (which is essentially to mean "copy-paste" for me)
Likely to prevent a double-free (I don't know if it was me or tiran/gpshead who added this) |
Sorry, something went wrong.
|
Actually it was me in 261633b. I just forgot about the MD5 one I think. |
Sorry, something went wrong.
|
Sorry, something went wrong.
|
Oh and please also put the state to NULL just to prevent a possible double-free |
Sorry, something went wrong.
| int rc = py_hmac_hinfo_ht_add(table, KEY, value); \ | ||
| if (rc < 0) { \ | ||
| PyMem_Free(value); \ | ||
| if (value->refcnt == 0) { \ |
There was a problem hiding this comment.
This one is already part of an other PR actually.
Sorry, something went wrong.
There was a problem hiding this comment.
Namely: #145321.
Sorry, something went wrong.
There was a problem hiding this comment.
I would prefer merging PR gh-145321 first since it's older and more complete.
Sorry, something went wrong.
There was a problem hiding this comment.
Agreed. I am waiting for the other PR and will rebase accordingly.
Sorry, something went wrong.
There was a problem hiding this comment.
i just merged the above.
Sorry, something went wrong.
There was a problem hiding this comment.
The md5 change LGTM. I'm not sure that it's worth it to add a NEWS entry for this change, since it's unlikely to hit this bug in practice.
Sorry, something went wrong.
| int rc = py_hmac_hinfo_ht_add(table, KEY, value); \ | ||
| if (rc < 0) { \ | ||
| PyMem_Free(value); \ | ||
| if (value->refcnt == 0) { \ |
There was a problem hiding this comment.
I would prefer merging PR gh-145321 first since it's older and more complete.
Sorry, something went wrong.
|
I prefer to always include a NEWS entry for crashes even if they are rare. |
Sorry, something went wrong.
There was a problem hiding this comment.
LGTM.
Sorry, something went wrong.
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
|
@eendebakpt Thanks for the PR! Once it's merged, could you do a manual backport for 3.13 and an automatic backport for 3.14 (though I'm not entirely sure about conflicts in md5module.c) |
Sorry, something went wrong.
|
Thanks @eendebakpt for the PR, and @picnixz for merging it 🌮🎉.. I'm working now to backport this PR to: 3.14. |
Sorry, something went wrong.
…honGH-145422) Fix a possible NULL pointer dereference in `md5module.c` and a double-free in `hmacmodule.c`. Those crashes only occur in error paths taken when the interpreter fails to allocate memory. (cherry picked from commit c1d7768) Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
|
GH-145610 is a backport of this pull request to the 3.14 branch. |
Sorry, something went wrong.
|
GH-145611 is a backport of this pull request to the 3.13 branch. |
Sorry, something went wrong.
…-145422) (#145610) gh-145376: Fix crashes in `md5module.c` and `hmacmodule.c` (GH-145422) Fix a possible NULL pointer dereference in `md5module.c` and a double-free in `hmacmodule.c`. Those crashes only occur in error paths taken when the interpreter fails to allocate memory. (cherry picked from commit c1d7768) Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
* gh-145376: Fix crashes in md5module.c Fix a possible NULL pointer dereference in `md5module.c`. This can only occur in error paths taken when the interpreter fails to allocate memory. (cherry-picked from c1d7768) * 📜🤖 Added by blurb_it. * Update Modules/md5module.c --------- Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
…hon#145422) Fix a possible NULL pointer dereference in `md5module.c` and a double-free in `hmacmodule.c`. Those crashes only occur in error paths taken when the interpreter fails to allocate memory.
| Back | FazBrowse Home | New Git URL |
Avoid a null pointer deref in the case of an error path in the constructors (e.g. MD5Type_copy_impl)
Issue found using Claude.