diff --git a/attrib/att.c b/attrib/att.c
index 435a26d..d367918 100644
--- a/attrib/att.c
+++ b/attrib/att.c
uint16_t *end, bt_uuid_t *uuid,
uint8_t *value, size_t *vlen)
{
- size_t valuelen;
- uint16_t min_len = sizeof(pdu[0]) + sizeof(*start) +
- sizeof(*end) + sizeof(uint16_t);
-
if (pdu == NULL)
return 0;
- if (len < min_len)
+ if (len < 7)
return 0;
/* Attribute Opcode (1 octet) */
/* 16-bit UUID to find (2 octets) */
*uuid = att_get_uuid16(&pdu[5]);
- valuelen = len - min_len;
- *vlen = valuelen;
-
/* Attribute value to find */
- if (valuelen > 0)
- memcpy(value, pdu + min_len, valuelen);
+ *vlen = len - 7;
+ if (*vlen > 0)
+ memcpy(value, pdu + 7, *vlen);
return len;
}