From c4e43a88c28103be81fdfea069aee957b7744b64 Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Mon, 22 Apr 2019 19:44:56 +0200 Subject: [PATCH] mesh: single mesh_upper_transport_message_processed_by_higher_layer instead of segmented/unsegmented --- test/mesh/mesh.c | 13 ++++--------- test/mesh/mesh_message_test.c | 8 ++++---- test/mesh/mesh_transport.c | 7 ++----- test/mesh/mesh_transport.h | 5 ++--- 4 files changed, 12 insertions(+), 21 deletions(-) diff --git a/test/mesh/mesh.c b/test/mesh/mesh.c index 50f73582e..8f66633b4 100644 --- a/test/mesh/mesh.c +++ b/test/mesh/mesh.c @@ -1791,14 +1791,9 @@ static void mesh_access_process(mesh_pdu_t * pdu){ printf("Message not handled\n"); } -static void mesh_segmented_message_handler(mesh_transport_pdu_t *transport_pdu){ - mesh_access_process((mesh_pdu_t*) transport_pdu); - mesh_upper_transport_segmented_message_processed_by_higher_layer(transport_pdu); -} - -static void mesh_unsegmented_message_handler(mesh_network_pdu_t *network_pdu){ - mesh_access_process((mesh_pdu_t*) network_pdu); - mesh_upper_transport_unsegmented_message_processed_by_higher_layer(network_pdu); +static void mesh_access_message_process_handler(mesh_pdu_t *pdu){ + mesh_access_process(pdu); + mesh_upper_transport_message_processed_by_higher_layer(pdu); } static btstack_crypto_aes128_cmac_t salt_request; @@ -1854,7 +1849,7 @@ int btstack_main(void) // Transport layers (lower + upper)) mesh_transport_init(); - mesh_upper_transport_register_access_message_handler(&mesh_segmented_message_handler); + mesh_upper_transport_register_access_message_handler(&mesh_access_message_process_handler); // PTS Virtual Address Label UUID - without Config Model, PTS uses our device uuid btstack_parse_hex("001BDC0810210B0E0A0C000B0E0A0C00", 16, label_uuid); diff --git a/test/mesh/mesh_message_test.c b/test/mesh/mesh_message_test.c index 0922d90ab..ff534daa9 100644 --- a/test/mesh/mesh_message_test.c +++ b/test/mesh/mesh_message_test.c @@ -177,13 +177,13 @@ static void test_upper_transport_access_message_handler(mesh_pdu_t * pdu){ transport_pdu = (mesh_transport_pdu_t *) pdu; recv_upper_transport_pdu_len = transport_pdu->len; memcpy(recv_upper_transport_pdu_data, transport_pdu->data, recv_upper_transport_pdu_len); - mesh_upper_transport_segmented_message_processed_by_higher_layer(transport_pdu); + mesh_upper_transport_message_processed_by_higher_layer(pdu); break; case MESH_PDU_TYPE_NETWORK: network_pdu = (mesh_network_pdu_t *) pdu; recv_upper_transport_pdu_len = mesh_network_pdu_len(network_pdu) - 1; memcpy(recv_upper_transport_pdu_data, mesh_network_pdu_data(network_pdu) + 1, recv_upper_transport_pdu_len); - mesh_upper_transport_unsegmented_message_processed_by_higher_layer(network_pdu); + mesh_upper_transport_message_processed_by_higher_layer(pdu); break; default: break; @@ -198,13 +198,13 @@ static void test_upper_transport_control_message_handler(mesh_pdu_t * pdu){ transport_pdu = (mesh_transport_pdu_t *) pdu; recv_upper_transport_pdu_len = transport_pdu->len; memcpy(recv_upper_transport_pdu_data, transport_pdu->data, recv_upper_transport_pdu_len); - mesh_upper_transport_segmented_message_processed_by_higher_layer(transport_pdu); + mesh_upper_transport_message_processed_by_higher_layer(pdu); break; case MESH_PDU_TYPE_NETWORK: network_pdu = (mesh_network_pdu_t *) pdu; recv_upper_transport_pdu_len = mesh_network_pdu_len(network_pdu); memcpy(recv_upper_transport_pdu_data, mesh_network_pdu_data(network_pdu), recv_upper_transport_pdu_len); - mesh_upper_transport_unsegmented_message_processed_by_higher_layer(network_pdu); + mesh_upper_transport_message_processed_by_higher_layer(pdu); break; default: break; diff --git a/test/mesh/mesh_transport.c b/test/mesh/mesh_transport.c index 11fcfbcbd..77d4e40d3 100644 --- a/test/mesh/mesh_transport.c +++ b/test/mesh/mesh_transport.c @@ -317,11 +317,8 @@ static void mesh_upper_transport_validate_segmented_message_ccm(void * arg){ } } -void mesh_upper_transport_segmented_message_processed_by_higher_layer(mesh_transport_pdu_t * transport_pdu){ - mesh_upper_transport_process_segmented_message_done(transport_pdu); -} -void mesh_upper_transport_unsegmented_message_processed_by_higher_layer(mesh_network_pdu_t * network_pdu){ - mesh_upper_transport_process_unsegmented_message_done(network_pdu); +void mesh_upper_transport_message_processed_by_higher_layer(mesh_pdu_t * pdu){ + mesh_upper_transport_process_unsegmented_message_done(pdu); } static void mesh_upper_transport_validate_segmented_message_digest(void * arg){ diff --git a/test/mesh/mesh_transport.h b/test/mesh/mesh_transport.h index 777e1441a..941e78078 100644 --- a/test/mesh/mesh_transport.h +++ b/test/mesh/mesh_transport.h @@ -57,6 +57,8 @@ void mesh_transport_set_device_key(const uint8_t * device_key); void mesh_application_key_set(uint16_t appkey_index, uint8_t aid, const uint8_t * application_key); +void mesh_upper_transport_message_processed_by_higher_layer(mesh_pdu_t * pdu); + // Control PDUs void mesh_upper_transport_register_control_message_handler(void (*callback)(mesh_pdu_t * pdu)); @@ -93,9 +95,6 @@ void mesh_upper_transport_send_unsegmented_access_pdu(mesh_network_pdu_t * netwo void mesh_upper_transport_send_segmented_access_pdu(mesh_transport_pdu_t * transport_pdu); -void mesh_upper_transport_segmented_message_processed_by_higher_layer(mesh_transport_pdu_t * transport_pdu); -void mesh_upper_transport_unsegmented_message_processed_by_higher_layer(mesh_network_pdu_t * network_pdu); - // // Virtual Address Management //