summaryrefslogtreecommitdiff
path: root/epan/dissectors/packet-btle.h
diff options
context:
space:
mode:
authorChristopher Kilgour <techie@whiterocker.com>2014-02-21 23:39:45 -0800
committerAnders Broman <a.broman58@gmail.com>2014-03-07 05:20:17 +0000
commitef94a80bfa86362cfca09e1982010b5a9a47d247 (patch)
tree22d58c86826d253b90b2dbd7f1773cabbc4f77bb /epan/dissectors/packet-btle.h
parent825ce03222ef7a4e6e7b2c215cae0597eeb55e96 (diff)
downloadwireshark-ef94a80bfa86362cfca09e1982010b5a9a47d247.tar.gz
Introduces two new Bluetooth DLTs for RF-based captures.
Adds support for BLUETOOTH_LE_LL_WITH_PHDR, dissector integrates with existing BTLE dissector. Fixes BTLE dissector to correctly extract packet CRC. Adds CRC checking to BTLE dissector. Provides optional context to BTLE dissector that allows RF captures to provide link-layer hints for dissection details. Significantly, parameters for determining CRC correctness are provided, as well as Access Address validity information. Change-Id: I7d4936b053353a7f9c524021c01f67f5828253fb Reviewed-on: https://code.wireshark.org/review/310 Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-btle.h')
-rw-r--r--epan/dissectors/packet-btle.h76
1 files changed, 76 insertions, 0 deletions
diff --git a/epan/dissectors/packet-btle.h b/epan/dissectors/packet-btle.h
new file mode 100644
index 0000000000..9d29d44346
--- /dev/null
+++ b/epan/dissectors/packet-btle.h
@@ -0,0 +1,76 @@
+/* packet-btle.h
+ * Structures for determining the dissection context for BTLE.
+ *
+ * Copyright 2014, Christopher D. Kilgour, techie at whiterocker dot com
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+#ifndef __PACKET_BTLE_H__
+#define __PACKET_BTLE_H__
+
+/*
+ * These structures are meant to support the provision of contextual
+ * metadata to the BTLE dissector.
+ */
+typedef struct {
+ guint64 InitA;
+ guint64 AdvA;
+ guint32 LinkAA;
+ guint32 CRCInit;
+ guint8 WinSize;
+ guint16 WinOffset;
+ guint16 Interval;
+ guint16 Latency;
+ guint16 Timeout;
+ guint64 ChM;
+ guint8 Hop;
+ guint8 SCA;
+} btle_CONNECT_REQ_t;
+
+typedef enum {
+ E_AA_NO_COMMENT = 0,
+ E_AA_MATCHED,
+ E_AA_BIT_ERRORS,
+ E_AA_ILLEGAL,
+} btle_AA_category_t;
+
+typedef struct {
+ btle_AA_category_t aa_category;
+ btle_CONNECT_REQ_t connection_info;
+ gint connection_info_valid: 1;
+ gint crc_checked_at_capture: 1;
+ gint crc_valid_at_capture: 1;
+ gint mic_checked_at_capture: 1;
+ gint mic_valid_at_capture: 1;
+} btle_context_t;
+
+#endif /* __PACKET_BTLE_H__ */
+
+/*
+ * Editor modelines - http://www.wireshark.org/tools/modelines.html
+ *
+ * Local variables:
+ * c-basic-offset: 4
+ * tab-width: 8
+ * indent-tabs-mode: nil
+ * End:
+ *
+ * vi: set shiftwidth=4 tabstop=8 expandtab:
+ * :indentSize=4:tabSize=8:noTabs=true:
+ */