#### Pre-Submission Checklist <!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply --> <!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above--> <!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list --> - [X] Commit message has the format required by CONTRIBUTING guide - [X] Commits are split per component (core, individual modules, libs, utils, ...) - [X] Each component has a single commit (if not, squash them into one commit) - [X] No commits to README files for modules (changes must be done to docbook files in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change - [ ] Small bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds new functionality) - [X] Breaking change (fix or feature that would change existing functionality)
#### Checklist: - [X] PR should be backported to stable branches - [X] Tested changes locally - [X] Related to issue #3168
#### Description Certificate serial numbers can be large integers (> 2^64). Parse then as BIGNUM and store the string in pv; we cannot store as integer anymore. The original code handles 2^64 with a static buffer of 19. We upsize to 2^256 with a static buffer of 80.
May break configurations that try to extract the sn pv as an integer (does anyone actually do this?)
Addresses #3168. You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3171
-- Commit Summary --
* tls: cert serial number can exceed uint64
-- File Changes --
M src/modules/tls/tls_select.c (24)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3171.patch https://github.com/kamailio/kamailio/pull/3171.diff
Thanks for this PR! I noticed some functions return pointers that are then used and later freed. I guess that they have to be checked if they are `NULL`, expecting there will be crashes when they are used and they are `NULL`.
@space88man pushed 1 commit.
ced8dd1e3c586cbe5c56342e840c939b5e4f2725 tls: cert serial number can exceed uint64
Thanks for this PR! I noticed some functions return pointers that are then used and later freed. I guess that they have to be checked if they are `NULL`, expecting there will be crashes when they are used and they are `NULL`.
Added NULL checking to the PR.
@space88man pushed 1 commit.
01595e964c173121eca3e071c4a99b808bc6c96d tls: cert serial number can exceed uint64
@space88man pushed 1 commit.
83332df09da61d51624b96f04a8bda232da2e5c2 tls: cert serial number can exceed uint64
@space88man pushed 1 commit.
c99eff6aa9734902936019b1d528b00814dd27f7 tls: cert serial number can exceed uint64
@space88man pushed 1 commit.
5fa8b627c9beede65d0626b9f7e9457f29b46fa1 tls: cert serial number can exceed uint64
@space88man pushed 1 commit.
0538776ba16899f345061f1b8b68d77408ec0f90 tls: cert serial number can exceed uint64
Thanks, testing and confirming would be useful in order to merge and backport in time for 5.6.1.
Merged #3171 into master.