csp_buffer: Fix pointers in csp_buffer_clone #834
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR have 2 commits.
Commit 1 :
The frame_begin pointer was introduced in commit 5ee2d36, but csp_buffer_clone()
was not updated accordingly.
As a result, cloned packets would end up with a frame_begin pointer referencing
the original packet’s memory, which is incorrect and unsafe.
This commit fixes the issue by recalculating frame_begin after copying the
packet, ensuring it points to the correct memory area within the new buffer.
Commit 2 :
Add unit tests to verify that the frame_begin pointer in a cloned packet points
to the correct memory region within the clone.
The tests also confirm that modifying the original packet's data does not affect
the cloned packet, ensuring proper memory separation between the two.