diff options
author | wmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7> | 2009-09-04 18:18:34 +0000 |
---|---|---|
committer | wmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7> | 2009-09-04 18:18:34 +0000 |
commit | b26e1471b9666a99816511d78954155a21252fc8 (patch) | |
tree | f67fb3d64027874d3d4723e96434c818a8aab185 /epan/dissectors/packet-kingfisher.c | |
parent | ea5f8a2fa969f8066d58d663bf1b3d33173483d6 (diff) |
From Rob Casey: Fix for: Incorrect station identifier parsing in Kingfisher dissector
See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3946
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@29700 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-kingfisher.c')
-rw-r--r-- | epan/dissectors/packet-kingfisher.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/epan/dissectors/packet-kingfisher.c b/epan/dissectors/packet-kingfisher.c index bc0b7bec2e..9727a8fd43 100644 --- a/epan/dissectors/packet-kingfisher.c +++ b/epan/dissectors/packet-kingfisher.c @@ -259,18 +259,18 @@ dissect_kingfisher(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean kfp->version = (kfp->function & 0x80)?3:2; - kfp->system = tvb_get_guint8(tvb, 0); - kfp->message = tvb_get_guint8(tvb, 5); - - - if(kfp->version == 2){ - kfp->target = tvb_get_guint8(tvb, 1); - kfp->from = tvb_get_guint8(tvb, 3); - kfp->via = tvb_get_guint8(tvb, 4); - } else { - kfp->target |= (tvb_get_guint8(tvb, 7) << 8); - kfp->from |= (tvb_get_guint8(tvb, 8) << 8); - kfp->via |= (tvb_get_guint8(tvb, 9) << 8); + kfp->system = tvb_get_guint8( tvb, 0 ); + kfp->message = tvb_get_guint8( tvb, 5 ); + + kfp->target = tvb_get_guint8( tvb, 1 ); + kfp->from = tvb_get_guint8( tvb, 3 ); + kfp->via = tvb_get_guint8( tvb, 4 ); + + if( kfp->version == 3 ) + { + kfp->target |= ( tvb_get_guint8( tvb, 7 ) << 8 ); + kfp->from |= ( tvb_get_guint8( tvb, 8 ) << 8 ); + kfp->via |= ( tvb_get_guint8( tvb, 9 ) << 8 ); } |