packet_print_features_msft(data);
print_field("Event prefix length: %u", evt_prefix_len);
packet_hexdump(data + 9, size - 9);
+
+ packet_set_msft_evt_prefix(data + 9, evt_prefix_len);
}
static void le_monitor_advertisement_cmd(const void *data, uint16_t size)
uint8_t bdaddr[6];
uint16_t manufacturer;
uint16_t msft_opcode;
+ uint8_t msft_evt_prefix[8];
+ uint8_t msft_evt_len;
size_t frame;
};
fallback_manufacturer = manufacturer;
}
+void packet_set_msft_evt_prefix(const uint8_t *prefix, uint8_t len)
+{
+ if (index_current < MAX_INDEX && len < 8)
+ memcpy(index_list[index_current].msft_evt_prefix, prefix, len);
+}
+
static void print_packet(struct timeval *tv, struct ucred *cred, char ident,
uint16_t index, const char *channel,
const char *color, const char *label,
void packet_set_priority(const char *priority);
void packet_select_index(uint16_t index);
void packet_set_fallback_manufacturer(uint16_t manufacturer);
+void packet_set_msft_evt_prefix(const uint8_t *prefix, uint8_t len);
void packet_hexdump(const unsigned char *buf, uint16_t len);
void packet_print_error(const char *label, uint8_t error);