From a2dc0a4d57948f2bb3554e2cc1b313943ebc5622 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Sun, 27 Jan 2013 05:18:16 +0100 Subject: [PATCH] core: Parse the TX power level from EIR data --- src/eir.c | 7 +++++++ src/eir.h | 1 + 2 files changed, 8 insertions(+) diff --git a/src/eir.c b/src/eir.c index 428882e71..084884eb2 100644 --- a/src/eir.c +++ b/src/eir.c @@ -134,6 +134,7 @@ int eir_parse(struct eir_data *eir, const uint8_t *eir_data, uint8_t eir_len) uint16_t len = 0; eir->flags = -1; + eir->tx_power = 127; /* No EIR data to parse */ if (eir_data == NULL) @@ -191,6 +192,12 @@ int eir_parse(struct eir_data *eir, const uint8_t *eir_data, uint8_t eir_len) eir->name_complete = eir_data[1] == EIR_NAME_COMPLETE; break; + case EIR_TX_POWER: + if (data_len < 1) + break; + eir->tx_power = (int8_t) data[0]; + break; + case EIR_CLASS_OF_DEV: if (data_len < 3) break; diff --git a/src/eir.h b/src/eir.h index 72953eb1f..1b6242d79 100644 --- a/src/eir.h +++ b/src/eir.h @@ -45,6 +45,7 @@ struct eir_data { uint32_t class; uint16_t appearance; gboolean name_complete; + int8_t tx_power; uint8_t *hash; uint8_t *randomizer; bdaddr_t addr; -- 2.47.3