diff options
author | Jeff Morriss <jeff.morriss.ws@gmail.com> | 2015-02-23 17:03:43 -0500 |
---|---|---|
committer | Jeff Morriss <jeff.morriss.ws@gmail.com> | 2015-02-26 12:34:50 +0000 |
commit | 29feae5f98ad2853b571a3daa5262b14c5d0c144 (patch) | |
tree | 371d43d48cf38c9e10965f5ddadb65bea1e020af /epan/dissectors/packet-http.c | |
parent | 96d1ce00eb83136bb399f279a1afef7f07ed0205 (diff) |
Use tcp_dissect_pdus() in the SSTP dissector.
I happened across the discussion in Ia44e0791b6ee78ad594de342c4f2401bad9beb4e
which indicates that protocols running over SSL can use tcp_dissect_pdus() too.
So do it in the SSTP dissector.
Change-Id: I3de14c1b2af5e4e5fe3630121366b71a5ad223cf
Reviewed-on: https://code.wireshark.org/review/7333
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-http.c')
-rw-r--r-- | epan/dissectors/packet-http.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/epan/dissectors/packet-http.c b/epan/dissectors/packet-http.c index 02ea8d4cd6..888ce93000 100644 --- a/epan/dissectors/packet-http.c +++ b/epan/dissectors/packet-http.c @@ -2922,6 +2922,13 @@ dissect_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data) break; } if (conv_data->upgrade == UPGRADE_SSTP && conv_data->response_code == 200 && pinfo->fd->num >= conv_data->startframe) { + /* Increase pinfo->can_desegment because we are traversing + * http and want to preserve desegmentation functionality for + * the proxied protocol + */ + if (pinfo->can_desegment > 0) + pinfo->can_desegment++; + call_dissector_only(sstp_handle, tvb_new_subset_remaining(tvb, offset), pinfo, tree, NULL); break; } |