aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorJaap Keuter <jaap.keuter@xs4all.nl>2008-03-14 21:36:01 +0000
committerJaap Keuter <jaap.keuter@xs4all.nl>2008-03-14 21:36:01 +0000
commit74178fafda524972bb99e5a9f32a0262a4530f52 (patch)
tree26772b0da1bc3e03efc4dee9f4e7ac8d761f47b1 /epan
parent5d9ca601d8cabc2298d18e88a2988622bc79de8d (diff)
From Dustin D. Trammell:
The FIX protocol dissector uses the 6 byte string "8=FIX." at the beginning of the data to match the beginning of a FIX version string of the format "8=FIX.x.x" in order to determine if the data is the FIX protocol or not. With FIX 5.x and beyond, the beginning of the data will have a version string of the format "8=FIXT.x.x" to indicate the FIX Transport (FIXT) version. A simple solution is to update the current FIX dissector to only match the first 5 bytes of the version string (see attached patch). This will cause a match for FIX version 4.x and prior (8=FIX.x.x) as well as 5.x and beyond (8=FIXT.x.x). svn path=/trunk/; revision=24633
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-fix.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/epan/dissectors/packet-fix.c b/epan/dissectors/packet-fix.c
index 374f2de0e2..5d05090f1d 100644
--- a/epan/dissectors/packet-fix.c
+++ b/epan/dissectors/packet-fix.c
@@ -863,8 +863,8 @@ dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
GString *label = NULL;
GString *summary_label = NULL;
- /* get at least the fix version: 8=FIX.x.x */
- if (tvb_strneql(tvb, 0, "8=FIX.", 6) != 0) {
+ /* get at least the fix version: 8=FIX.x.x or 8=FIXT.x.x */
+ if (tvb_strneql(tvb, 0, "8=FIX", 5) != 0) {
/* not a fix packet */
return FALSE;
}