aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorGuy Harris <gharris@sonic.net>2021-03-28 17:55:23 -0700
committerGuy Harris <gharris@sonic.net>2021-03-29 01:02:47 +0000
commit2ba52cdc0e4216dafdfc32498fc0210c99449ec9 (patch)
tree44ff0f94da1ee954efda01f4fd00dbd80abace04 /CMakeLists.txt
parent22cf2cb345b16f9783165e9cfc80ed9a97a11ca0 (diff)
tvbuff_subset: fix its implementation of string scanning.
Both subset_find_guint8() and subset_pbrk_guint8() pass the parent tvbuff to tvb_find_guint8()/tvb_ws_mempbrk_pattern_guint8(), along with the offset in that tvbuff. That means that the offset they get back is relative to that tvbuff, so it must be adjusted to be relative to the tvbuff *they* were handed. For subsets of frame and "real data" tvbuffs, there's a single lump of data containing the content of the subset tvbuff, so they go through the "fast path" and get the offset correct, bypassing the broken code; that's the vast majority of calls to those routines. For subsets of *composite* tvbuffs, however, they don't go through the "fast path", and this bug shows up. This causes both crashes and misdissection of HTTP if the link-layer is PPP with Van Jacobson compression, as the decompression uses composite tvbuffs. Fixes #17254 and its many soon-to-be-duplicates.
Diffstat (limited to 'CMakeLists.txt')
0 files changed, 0 insertions, 0 deletions