mirror of
https://github.com/espressif/esp-nimble.git
synced 2026-08-29 21:30:01 +00:00
nimble/test: Assert all os_mbuf operations
This makes sure tests don't use invalid memory in case of os_mbuf bug. X-Original-Commit: 1a43ed04274fb24c1c7588b62925a23b229ebc08
This commit is contained in:
@@ -44,6 +44,8 @@ static uint16_t ble_att_svr_test_attr_n_len;
|
||||
static int
|
||||
ble_att_svr_test_misc_gap_cb(struct ble_gap_event *event, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (event->type) {
|
||||
case BLE_GAP_EVENT_NOTIFY_RX:
|
||||
ble_att_svr_test_n_conn_handle = event->notify_rx.conn_handle;
|
||||
@@ -51,8 +53,10 @@ ble_att_svr_test_misc_gap_cb(struct ble_gap_event *event, void *arg)
|
||||
TEST_ASSERT_FATAL(OS_MBUF_PKTLEN(event->notify_rx.om) <=
|
||||
sizeof ble_att_svr_test_attr_n);
|
||||
ble_att_svr_test_attr_n_len = OS_MBUF_PKTLEN(event->notify_rx.om);
|
||||
os_mbuf_copydata(event->notify_rx.om, 0, ble_att_svr_test_attr_n_len,
|
||||
ble_att_svr_test_attr_n);
|
||||
rc = os_mbuf_copydata(event->notify_rx.om, 0,
|
||||
ble_att_svr_test_attr_n_len,
|
||||
ble_att_svr_test_attr_n);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -102,14 +106,17 @@ ble_att_svr_test_misc_attr_fn_r_1(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (op) {
|
||||
case BLE_ATT_ACCESS_OP_READ:
|
||||
if (offset > ble_att_svr_test_attr_r_1_len) {
|
||||
return BLE_ATT_ERR_INVALID_OFFSET;
|
||||
}
|
||||
|
||||
os_mbuf_append(*om, ble_att_svr_test_attr_r_1 + offset,
|
||||
ble_att_svr_test_attr_r_1_len - offset);
|
||||
rc = os_mbuf_append(*om, ble_att_svr_test_attr_r_1 + offset,
|
||||
ble_att_svr_test_attr_r_1_len - offset);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return 0;
|
||||
|
||||
default:
|
||||
@@ -122,6 +129,7 @@ ble_att_svr_test_misc_attr_fn_r_2(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (op) {
|
||||
case BLE_ATT_ACCESS_OP_READ:
|
||||
@@ -129,8 +137,9 @@ ble_att_svr_test_misc_attr_fn_r_2(uint16_t conn_handle, uint16_t attr_handle,
|
||||
return BLE_ATT_ERR_INVALID_OFFSET;
|
||||
}
|
||||
|
||||
os_mbuf_append(*om, ble_att_svr_test_attr_r_2 + offset,
|
||||
ble_att_svr_test_attr_r_2_len - offset);
|
||||
rc = os_mbuf_append(*om, ble_att_svr_test_attr_r_2 + offset,
|
||||
ble_att_svr_test_attr_r_2_len - offset);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return 0;
|
||||
|
||||
default:
|
||||
@@ -143,7 +152,11 @@ ble_att_svr_test_misc_attr_fn_r_err(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
os_mbuf_append(*om, (uint8_t[4]){1,2,3,4}, 4);
|
||||
int rc;
|
||||
|
||||
rc = os_mbuf_append(*om, (uint8_t[4]){1,2,3,4}, 4);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
return BLE_ATT_ERR_UNLIKELY;
|
||||
}
|
||||
|
||||
@@ -286,19 +299,23 @@ ble_att_svr_test_misc_attr_fn_rw_1(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (op) {
|
||||
case BLE_ATT_ACCESS_OP_READ:
|
||||
if (offset > ble_att_svr_test_attr_w_1_len) {
|
||||
return BLE_ATT_ERR_INVALID_OFFSET;
|
||||
}
|
||||
|
||||
os_mbuf_append(*om, ble_att_svr_test_attr_w_1 + offset,
|
||||
ble_att_svr_test_attr_w_1_len - offset);
|
||||
rc = os_mbuf_append(*om, ble_att_svr_test_attr_w_1 + offset,
|
||||
ble_att_svr_test_attr_w_1_len - offset);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return 0;
|
||||
|
||||
case BLE_ATT_ACCESS_OP_WRITE:
|
||||
os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_1);
|
||||
rc = os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_1);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
ble_att_svr_test_attr_w_1_len = OS_MBUF_PKTLEN(*om);
|
||||
return 0;
|
||||
|
||||
@@ -312,10 +329,13 @@ ble_att_svr_test_misc_attr_fn_w_1(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (op) {
|
||||
case BLE_ATT_ACCESS_OP_WRITE:
|
||||
os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_1);
|
||||
rc = os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_1);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
ble_att_svr_test_attr_w_1_len = OS_MBUF_PKTLEN(*om);
|
||||
return 0;
|
||||
|
||||
@@ -329,10 +349,13 @@ ble_att_svr_test_misc_attr_fn_w_2(uint16_t conn_handle, uint16_t attr_handle,
|
||||
uint8_t op, uint16_t offset,
|
||||
struct os_mbuf **om, void *arg)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (op) {
|
||||
case BLE_ATT_ACCESS_OP_WRITE:
|
||||
os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_2);
|
||||
rc = os_mbuf_copydata(*om, 0, OS_MBUF_PKTLEN(*om),
|
||||
ble_att_svr_test_attr_w_2);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
ble_att_svr_test_attr_w_2_len = OS_MBUF_PKTLEN(*om);
|
||||
return 0;
|
||||
|
||||
@@ -856,7 +879,8 @@ TEST_CASE(ble_att_svr_test_read)
|
||||
TEST_ASSERT(OS_MBUF_PKTLEN(om) == ble_att_svr_test_attr_r_1_len);
|
||||
TEST_ASSERT(os_mbuf_cmpf(om, 0, ble_att_svr_test_attr_r_1,
|
||||
ble_att_svr_test_attr_r_1_len) == 0);
|
||||
os_mbuf_free_chain(om);
|
||||
rc = os_mbuf_free_chain(om);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
/* Ensure no response got sent. */
|
||||
ble_hs_test_util_tx_all();
|
||||
@@ -2049,7 +2073,8 @@ TEST_CASE(ble_att_svr_test_oom)
|
||||
ble_hs_test_util_verify_tx_err_rsp(BLE_ATT_OP_INDICATE_REQ, 1,
|
||||
BLE_ATT_ERR_INSUFFICIENT_RES);
|
||||
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
}
|
||||
|
||||
TEST_SUITE(ble_att_svr_suite)
|
||||
|
||||
@@ -589,7 +589,9 @@ TEST_CASE(ble_gatt_disc_c_test_oom_all)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -611,7 +613,9 @@ TEST_CASE(ble_gatt_disc_c_test_oom_all)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -678,7 +682,8 @@ TEST_CASE(ble_gatt_disc_c_test_oom_uuid)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -700,7 +705,8 @@ TEST_CASE(ble_gatt_disc_c_test_oom_uuid)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
|
||||
@@ -406,7 +406,8 @@ TEST_CASE(ble_gatt_disc_d_test_oom_all)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -428,7 +429,8 @@ TEST_CASE(ble_gatt_disc_d_test_oom_all)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure succeeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
|
||||
@@ -442,7 +442,8 @@ TEST_CASE(ble_gatt_disc_s_test_oom_all)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -461,7 +462,8 @@ TEST_CASE(ble_gatt_disc_s_test_oom_all)
|
||||
ticks_until = ble_gattc_timer();
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -521,7 +523,8 @@ TEST_CASE(ble_gatt_disc_s_test_oom_uuid)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
ble_hs_test_util_tx_all();
|
||||
@@ -542,7 +545,8 @@ TEST_CASE(ble_gatt_disc_s_test_oom_uuid)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -617,7 +621,8 @@ TEST_CASE(ble_gatt_disc_s_test_oom_timeout)
|
||||
TEST_ASSERT(ticks_until == BLE_HS_FOREVER);
|
||||
TEST_ASSERT(!ble_gattc_any_jobs());
|
||||
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
}
|
||||
|
||||
TEST_SUITE(ble_gatt_disc_s_test_suite)
|
||||
|
||||
@@ -395,7 +395,8 @@ TEST_CASE(ble_gatt_find_s_test_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure succeeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -414,7 +415,8 @@ TEST_CASE(ble_gatt_find_s_test_oom)
|
||||
ble_gatt_find_s_test_misc_rx_read_type(1, incs + 1);
|
||||
|
||||
/* Verify the procedure succeeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
|
||||
@@ -62,6 +62,7 @@ ble_gatt_read_test_cb(uint16_t conn_handle, const struct ble_gatt_error *error,
|
||||
{
|
||||
struct ble_gatt_read_test_attr *dst;
|
||||
int *stop_after;
|
||||
int rc;
|
||||
|
||||
stop_after = arg;
|
||||
|
||||
@@ -88,7 +89,8 @@ ble_gatt_read_test_cb(uint16_t conn_handle, const struct ble_gatt_error *error,
|
||||
dst->conn_handle = conn_handle;
|
||||
dst->handle = attr->handle;
|
||||
dst->value_len = OS_MBUF_PKTLEN(attr->om);
|
||||
os_mbuf_copydata(attr->om, 0, OS_MBUF_PKTLEN(attr->om), dst->value);
|
||||
rc = os_mbuf_copydata(attr->om, 0, OS_MBUF_PKTLEN(attr->om), dst->value);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
if (stop_after != NULL && *stop_after > 0) {
|
||||
(*stop_after)--;
|
||||
@@ -110,6 +112,7 @@ ble_gatt_read_test_long_cb(uint16_t conn_handle,
|
||||
{
|
||||
struct ble_gatt_read_test_attr *dst;
|
||||
int *reads_left;
|
||||
int rc;
|
||||
|
||||
reads_left = arg;
|
||||
|
||||
@@ -140,8 +143,9 @@ ble_gatt_read_test_long_cb(uint16_t conn_handle,
|
||||
TEST_ASSERT(conn_handle == dst->conn_handle);
|
||||
TEST_ASSERT(attr->handle == dst->handle);
|
||||
}
|
||||
os_mbuf_copydata(attr->om, 0, OS_MBUF_PKTLEN(attr->om),
|
||||
dst->value + dst->value_len);
|
||||
rc = os_mbuf_copydata(attr->om, 0, OS_MBUF_PKTLEN(attr->om),
|
||||
dst->value + dst->value_len);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
dst->value_len += OS_MBUF_PKTLEN(attr->om);
|
||||
|
||||
if (reads_left != NULL && *reads_left > 0) {
|
||||
@@ -859,7 +863,8 @@ TEST_CASE(ble_gatt_read_test_long_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
ble_hs_test_util_tx_all();
|
||||
@@ -883,7 +888,8 @@ TEST_CASE(ble_gatt_read_test_long_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
|
||||
@@ -665,7 +665,8 @@ TEST_CASE(ble_gatt_write_test_long_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
ble_hs_test_util_tx_all();
|
||||
@@ -692,7 +693,8 @@ TEST_CASE(ble_gatt_write_test_long_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
@@ -763,7 +765,8 @@ TEST_CASE(ble_gatt_write_test_reliable_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify the procedure proceeds after mbufs become available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
ble_hs_test_util_tx_all();
|
||||
@@ -790,7 +793,8 @@ TEST_CASE(ble_gatt_write_test_reliable_oom)
|
||||
TEST_ASSERT(ticks_until == BLE_GATT_RESUME_RATE_TICKS);
|
||||
|
||||
/* Verify that procedure completes when mbufs are available. */
|
||||
os_mbuf_free_chain(oms);
|
||||
rc = os_mbuf_free_chain(oms);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
os_time_advance(ticks_until);
|
||||
ble_gattc_timer();
|
||||
|
||||
|
||||
@@ -110,7 +110,8 @@ ble_hs_test_util_prev_tx_dequeue(void)
|
||||
uint8_t pb;
|
||||
int rc;
|
||||
|
||||
os_mbuf_free_chain(ble_hs_test_util_prev_tx_cur);
|
||||
rc = os_mbuf_free_chain(ble_hs_test_util_prev_tx_cur);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
om = ble_hs_test_util_prev_tx_dequeue_once(&hci_hdr);
|
||||
if (om != NULL) {
|
||||
@@ -974,7 +975,8 @@ ble_hs_test_util_l2cap_rx(uint16_t conn_handle,
|
||||
if (conn != NULL) {
|
||||
rc = ble_l2cap_rx(conn, hci_hdr, om, &rx_cb, &reject_cid);
|
||||
} else {
|
||||
os_mbuf_free_chain(om);
|
||||
rc = os_mbuf_free_chain(om);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
}
|
||||
|
||||
ble_hs_unlock();
|
||||
@@ -2084,7 +2086,8 @@ ble_hs_test_util_read_local_flat(uint16_t attr_handle, uint16_t max_len,
|
||||
|
||||
*out_len = OS_MBUF_PKTLEN(om);
|
||||
|
||||
os_mbuf_free_chain(om);
|
||||
rc = os_mbuf_free_chain(om);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2163,6 +2166,7 @@ ble_hs_test_util_mbuf_alloc_all_but(int count)
|
||||
{
|
||||
struct os_mbuf *prev;
|
||||
struct os_mbuf *om;
|
||||
int rc;
|
||||
int i;
|
||||
|
||||
/* Allocate all available mbufs and put them in a single chain. */
|
||||
@@ -2184,7 +2188,8 @@ ble_hs_test_util_mbuf_alloc_all_but(int count)
|
||||
for (i = 0; i < count; i++) {
|
||||
TEST_ASSERT_FATAL(prev != NULL);
|
||||
om = SLIST_NEXT(prev, om_next);
|
||||
os_mbuf_free(prev);
|
||||
rc = os_mbuf_free(prev);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
prev = om;
|
||||
}
|
||||
|
||||
@@ -750,7 +750,8 @@ ble_l2cap_test_coc_connect(struct test_data *t)
|
||||
TEST_ASSERT_FATAL(rc == ev->early_error);
|
||||
|
||||
if (rc != 0) {
|
||||
os_mbuf_free_chain(sdu_rx);
|
||||
rc = os_mbuf_free_chain(sdu_rx);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -953,8 +954,11 @@ ble_l2cap_test_coc_send_data(struct test_data *t)
|
||||
TEST_ASSERT(rc == ev->early_error);
|
||||
|
||||
if (rc) {
|
||||
os_mbuf_free(sdu);
|
||||
os_mbuf_free(sdu_copy);
|
||||
rc = os_mbuf_free(sdu);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
|
||||
rc = os_mbuf_free(sdu_copy);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -965,7 +969,8 @@ ble_l2cap_test_coc_send_data(struct test_data *t)
|
||||
|
||||
ble_hs_test_util_verify_tx_l2cap(sdu);
|
||||
|
||||
os_mbuf_free_chain(sdu_copy);
|
||||
rc = os_mbuf_free_chain(sdu_copy);
|
||||
TEST_ASSERT_FATAL(rc == 0);
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user