diff options
author | Jeff Morriss <jeff.morriss@ulticom.com> | 2011-03-25 19:02:18 +0000 |
---|---|---|
committer | Jeff Morriss <jeff.morriss@ulticom.com> | 2011-03-25 19:02:18 +0000 |
commit | cc6fc23812104d4a075a3beac738c7dcd3ee8e8b (patch) | |
tree | 018418cf804b5694292966d5073ccffac84a3bd4 /epan/dissectors/packet-x11.c | |
parent | 28ef67fb391330d617c5d43b0179069aff725497 (diff) |
From Didier via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3055 :
Apply rev 25869 to most of the rest of the TCP-desegmenting dissectors.
(The SSL dissector was already updated in one of two spots with bug 4535/rev
32456.)
A couple of the patches had to be manually applied.
From me: Fix the comments to match the change (including in the TCP and SSL
dissectors.)
svn path=/trunk/; revision=36332
Diffstat (limited to 'epan/dissectors/packet-x11.c')
-rw-r--r-- | epan/dissectors/packet-x11.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/epan/dissectors/packet-x11.c b/epan/dissectors/packet-x11.c index a05dc2a814..f700b8a77c 100644 --- a/epan/dissectors/packet-x11.c +++ b/epan/dissectors/packet-x11.c @@ -4338,10 +4338,13 @@ static void dissect_x11_requests(tvbuff_t *tvb, packet_info *pinfo, /* * Yes. Tell the TCP dissector where the data * for this message starts in the data it handed - * us, and how many more bytes we need, and return. + * us and that we need "some more data." Don't tell + * it exactly how many bytes we need because if/when + * we ask for even more (after the header) that will + * break reassembly. */ pinfo->desegment_offset = offset; - pinfo->desegment_len = 4 - length_remaining; + pinfo->desegment_len = DESEGMENT_ONE_MORE_SEGMENT; return; } } @@ -4450,11 +4453,13 @@ static void dissect_x11_requests(tvbuff_t *tvb, packet_info *pinfo, /* * Yes. Tell the TCP dissector where the * data for this message starts in the data - * it handed us, and how many more bytes we - * need, and return. + * it handed us and that we need "some more + * data." Don't tell it exactly how many bytes + * we need because if/when we ask for even more + * (after the header) that will break reassembly. */ pinfo->desegment_offset = offset; - pinfo->desegment_len = 10 - length_remaining; + pinfo->desegment_len = DESEGMENT_ONE_MORE_SEGMENT; return; } } @@ -4699,11 +4704,13 @@ dissect_x11_replies(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) /* * Yes. Tell the TCP dissector where the data * for this message starts in the data it handed - * us, and how many more bytes we need, and - * return. + * us and that we need "some more data." Don't tell + * it exactly how many bytes we need because if/when + * we ask for even more (after the header) that will + * break reassembly. */ pinfo->desegment_offset = offset; - pinfo->desegment_len = 8 - length_remaining; + pinfo->desegment_len = DESEGMENT_ONE_MORE_SEGMENT; return; } } |