diff options
author | morriss <morriss@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-11-15 20:52:41 +0000 |
---|---|---|
committer | morriss <morriss@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-11-15 20:52:41 +0000 |
commit | 08709c11b62f3c30e7080018de6c388485bb26e3 (patch) | |
tree | cd4568693402abd1e4152a63810bbcacecf3ee0a /epan/dissectors/packet-ieee802154.h | |
parent | 6acf01801a2e8f066d79312d64ada603ea04f15c (diff) |
From Fred Fierling via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5395 :
The ZigBee security dissector was not recording the short to long address
mappings in Security Headers, preventing the decryption of some payloads. This
patch eliminates the Undecoded warnings in packets 1 and 19 in this test
capture: https://bugs.wireshark.org/bugzilla/attachment.cgi?id=5457
The keys to decrypt these packets are listed in the bug.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@34886 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-ieee802154.h')
-rw-r--r-- | epan/dissectors/packet-ieee802154.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/epan/dissectors/packet-ieee802154.h b/epan/dissectors/packet-ieee802154.h index c8a9ada6c6..ab7b999b93 100644 --- a/epan/dissectors/packet-ieee802154.h +++ b/epan/dissectors/packet-ieee802154.h @@ -204,11 +204,11 @@ typedef struct { GHashTable *short_table; } ieee802154_packet; +/* Structure for two-way mapping table */ typedef struct { - guint proto; GHashTable *long_table; GHashTable *short_table; -} ieee802154_addr_t; +} ieee802154_map_tab_t; /* Key used by the short address hash table. */ typedef struct { @@ -223,7 +223,7 @@ typedef struct { /* A mapping record for a frame, pointed to by hash table */ typedef struct { - int proto; /* protocol that created this record */ + const char *proto; /* name of protocol that created this record */ guint start_fnum; guint end_fnum; guint64 addr64; @@ -244,7 +244,8 @@ extern gchar *print_eui64_oui(guint64); extern proto_item *proto_tree_add_eui64(proto_tree *, int, tvbuff_t *, gint, gint, gint64); /* Short to Extended Address Prototypes */ -extern ieee802154_map_rec *ieee802154_addr_update(ieee802154_addr_t *, guint16, guint16, guint64, int, guint); +extern ieee802154_map_rec *ieee802154_addr_update(ieee802154_map_tab_t *, guint16, guint16, guint64, + const char *, guint); extern guint ieee802154_short_addr_hash(gconstpointer); extern guint ieee802154_long_addr_hash(gconstpointer key); extern gboolean ieee802154_short_addr_equal(gconstpointer, gconstpointer); |