mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-31 19:24:33 +02:00
fix(bt/bluedroid): Allow adding empty header in OBEX and GOEP
This commit is contained in:
@@ -359,7 +359,7 @@ UINT16 GOEPC_RequestAddHeader(UINT16 handle, UINT8 header_id, const UINT8 *data,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data == NULL || data_len == 0) {
|
if ((data == NULL && data_len != 0) || (data != NULL && data_len == 0)) {
|
||||||
ret = GOEP_INVALID_PARAM;
|
ret = GOEP_INVALID_PARAM;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -481,7 +481,11 @@ UINT16 OBEX_AppendHeader(BT_HDR *pkt, const UINT8 *header)
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
UINT16 OBEX_AppendHeaderRaw(BT_HDR *pkt, UINT8 header_id, const UINT8 *data, UINT16 data_len)
|
UINT16 OBEX_AppendHeaderRaw(BT_HDR *pkt, UINT8 header_id, const UINT8 *data, UINT16 data_len)
|
||||||
{
|
{
|
||||||
if (pkt == NULL || data == NULL) {
|
if (pkt == NULL) {
|
||||||
|
return OBEX_INVALID_PARAM;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((data == NULL && data_len != 0) || (data != NULL && data_len == 0)) {
|
||||||
return OBEX_INVALID_PARAM;
|
return OBEX_INVALID_PARAM;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -527,8 +531,10 @@ UINT16 OBEX_AppendHeaderRaw(BT_HDR *pkt, UINT8 header_id, const UINT8 *data, UIN
|
|||||||
UINT16_TO_BE_FIELD(p_start, header_len);
|
UINT16_TO_BE_FIELD(p_start, header_len);
|
||||||
p_start+= 2;
|
p_start+= 2;
|
||||||
}
|
}
|
||||||
|
if (data != NULL) {
|
||||||
/* store data */
|
/* store data */
|
||||||
memcpy(p_start, data, data_len);
|
memcpy(p_start, data, data_len);
|
||||||
|
}
|
||||||
pkt->len += header_len;
|
pkt->len += header_len;
|
||||||
/* point to packet len */
|
/* point to packet len */
|
||||||
p_data++;
|
p_data++;
|
||||||
|
Reference in New Issue
Block a user