diff --git a/src/eir.c b/src/eir.c
index 5e0e96a..e4554e8 100644
--- a/src/eir.c
+++ b/src/eir.c
if (eir_len <= HCI_MAX_EIR_LENGTH - 2)
eir_generate_uuid128(uuids, ptr, &eir_len);
}
+
+gboolean eir_has_complete_name(uint8_t *data, size_t len)
+{
+ uint8_t field_len;
+ size_t parsed;
+
+ for (parsed = 0; parsed < len - 1; parsed += field_len) {
+ field_len = data[0];
+
+ if (field_len == 0)
+ break;
+
+ parsed += field_len + 1;
+
+ if (parsed > len)
+ break;
+
+ if (data[1] == EIR_NAME_COMPLETE)
+ return TRUE;
+
+ data += field_len + 1;
+ }
+
+ return FALSE;
+}
diff --git a/src/eir.h b/src/eir.h
index 8842790..47c2258 100644
--- a/src/eir.h
+++ b/src/eir.h
void eir_create(const char *name, int8_t tx_power, uint16_t did_vendor,
uint16_t did_product, uint16_t did_version,
GSList *uuids, uint8_t *data);
+
+gboolean eir_has_complete_name(uint8_t *data, size_t len);