diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2021-03-19 20:29:51 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2021-03-19 20:29:51 +0100 |
commit | 3d9ff9d52edf0b2ad4f7c878b6197dc369240d04 (patch) | |
tree | e68482d2969bf47d9bcfc182f05fb0100c8031ea /monitor/packet.c | |
parent | 8e2d46d8b1cfa8169aa70eb50c9807add934e555 (diff) | |
download | bluez-3d9ff9d52edf0b2ad4f7c878b6197dc369240d04.tar.gz |
monitor: Add basic decoding for MSFT extension
Diffstat (limited to 'monitor/packet.c')
-rw-r--r-- | monitor/packet.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/monitor/packet.c b/monitor/packet.c index 0c98fd766..2fdea532d 100644 --- a/monitor/packet.c +++ b/monitor/packet.c @@ -2638,6 +2638,16 @@ static const struct bitfield_data features_le[] = { { } }; +static const struct bitfield_data features_msft[] = { + { 0, "RSSI Monitoring feature for BR/EDR" }, + { 1, "RSSI Monitoring feature for LE connections" }, + { 2, "RSSI Monitoring of LE advertisements" }, + { 3, "Advertising Monitoring of LE advertisements" }, + { 4, "Verifying the validity of P-192 and P-256 keys" }, + { 5, "Continuous Advertising Monitoring" }, + { } +}; + static void print_features(uint8_t page, const uint8_t *features_array, uint8_t type) { @@ -2674,6 +2684,13 @@ static void print_features(uint8_t page, const uint8_t *features_array, break; } break; + case 0xf0: + switch (page) { + case 0: + features_table = features_msft; + break; + } + break; } if (!features_table) @@ -2695,6 +2712,11 @@ void packet_print_features_ll(const uint8_t *features) print_features(0, features, 0x01); } +void packet_print_features_msft(const uint8_t *features) +{ + print_features(0, features, 0xf0); +} + #define LE_STATE_SCAN_ADV 0x0001 #define LE_STATE_CONN_ADV 0x0002 #define LE_STATE_NONCONN_ADV 0x0004 |