From 159101c7bc38da3b2ca2f791ccca4cedb8da8a0c Mon Sep 17 00:00:00 2001 From: Christian Eggers Date: Fri, 11 Jul 2025 23:57:20 +0200 Subject: [PATCH] mesh: crypto: simplify mesh_crypto_packet_parse() - NULL pointer checks are not required (no caller passes NULL pointers) - reuse result of mesh_crypto_network_header_parse() rather than determining value of 'CTL' again. --- mesh/crypto.c | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/mesh/crypto.c b/mesh/crypto.c index 3200d1231..3dcf226ad 100644 --- a/mesh/crypto.c +++ b/mesh/crypto.c @@ -643,7 +643,7 @@ bool mesh_crypto_packet_parse(const uint8_t *packet, uint8_t packet_len, if (segmented) *segmented = is_segmented; - if (packet[1] & CTL) { + if (*ctl) { uint8_t this_opcode = packet[9] & OPCODE_MASK; if (cookie) @@ -660,17 +660,11 @@ bool mesh_crypto_packet_parse(const uint8_t *packet, uint8_t packet_len, *seqZero = (hdr >> SEQ_ZERO_HDR_SHIFT) & SEQ_ZERO_MASK; - if (payload) - *payload = packet + 9; - - if (payload_len) - *payload_len = packet_len - 9; + *payload = packet + 9; + *payload_len = packet_len - 9; } else { - if (payload) - *payload = packet + 10; - - if (payload_len) - *payload_len = packet_len - 10; + *payload = packet + 10; + *payload_len = packet_len - 10; } } else { if (cookie) @@ -693,17 +687,11 @@ bool mesh_crypto_packet_parse(const uint8_t *packet, uint8_t packet_len, if (segN) *segN = (hdr >> SEGN_HDR_SHIFT) & SEG_MASK; - if (payload) - *payload = packet + 13; - - if (payload_len) - *payload_len = packet_len - 13; + *payload = packet + 13; + *payload_len = packet_len - 13; } else { - if (payload) - *payload = packet + 10; - - if (payload_len) - *payload_len = packet_len - 10; + *payload = packet + 10; + *payload_len = packet_len - 10; } } -- 2.47.3