From 96dd454c0481bb8f1737ba3069ab2b7decd6e133 Mon Sep 17 00:00:00 2001 From: liquidraver <504870+liquidraver@users.noreply.github.com> Date: Mon, 16 Mar 2026 10:58:57 +0100 Subject: [PATCH] fix transport code usage --- zephcore/helpers/TransportKeyStore.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zephcore/helpers/TransportKeyStore.cpp b/zephcore/helpers/TransportKeyStore.cpp index 76e4b5e..d37eccb 100644 --- a/zephcore/helpers/TransportKeyStore.cpp +++ b/zephcore/helpers/TransportKeyStore.cpp @@ -28,8 +28,8 @@ uint16_t TransportKey::calcTransportCode(const mesh::Packet* packet) const { mbedtls_md_hmac_finish(&ctx, hmac); mbedtls_md_free(&ctx); - /* Extract first 2 bytes as transport code */ - uint16_t code = (hmac[0] << 8) | hmac[1]; + /* Extract first 2 bytes as transport code (little-endian, matching Arduino SHA256 finalizeHMAC behavior) */ + uint16_t code = (uint16_t)hmac[0] | ((uint16_t)hmac[1] << 8); if (code == 0) { // reserve codes 0000 and FFFF code++; } else if (code == 0xFFFF) {