diff options
author | sfisher <sfisher@f5534014-38df-0310-8fa8-9805f1628bb7> | 2006-11-17 01:52:15 +0000 |
---|---|---|
committer | sfisher <sfisher@f5534014-38df-0310-8fa8-9805f1628bb7> | 2006-11-17 01:52:15 +0000 |
commit | 5df1b0853c1c9ff895c6c41ff08333cf0ea564e8 (patch) | |
tree | 8a96fb6904af3b75939afa507a494d800dd33093 /epan/dissectors/packet-ses.c | |
parent | e8f9513367766fc1869e87215dadd8b15a237be4 (diff) |
Improve the heuristics of the SES dissector some more in response to bug #1229
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@19917 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-ses.c')
-rw-r--r-- | epan/dissectors/packet-ses.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/epan/dissectors/packet-ses.c b/epan/dissectors/packet-ses.c index fa0a4c531f..0291ac64ac 100644 --- a/epan/dissectors/packet-ses.c +++ b/epan/dissectors/packet-ses.c @@ -1789,10 +1789,11 @@ dissect_ses_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree) return FALSE; /* no, it isn't a session PDU */ } - /* can we recognize the second session PDU ? Return FALSE if not */ - if(tvb_bytes_exist(tvb, 2, 2)) { /* Make sure there is a second one */ + /* can we recognize the second session PDU if the first one was + * a Give Tokens PDU? Return FALSE if not */ + if(tvb_bytes_exist(tvb, 2, 2) && type == SES_GIVE_TOKENS) { /* get SPDU type */ - type = tvb_get_guint8(tvb, offset+4); + type = tvb_get_guint8(tvb, offset+2); /* check SPDU type */ if (match_strval(type, ses_vals) == NULL) { |