aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-ses.c
diff options
context:
space:
mode:
authorStephen Fisher <steve@stephen-fisher.com>2006-11-17 01:52:15 +0000
committerStephen Fisher <steve@stephen-fisher.com>2006-11-17 01:52:15 +0000
commit961a87c32c447a9bddff50c74437dbd89c2dd45f (patch)
tree8a96fb6904af3b75939afa507a494d800dd33093 /epan/dissectors/packet-ses.c
parent627b9196a5f855608b242660f8389ebdd13fa1b4 (diff)
Improve the heuristics of the SES dissector some more in response to bug #1229
svn path=/trunk/; revision=19917
Diffstat (limited to 'epan/dissectors/packet-ses.c')
-rw-r--r--epan/dissectors/packet-ses.c7
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)
{