From 5cbd83c4e611a4746aa972782d914a9fdae3e81d Mon Sep 17 00:00:00 2001 From: laurent <laurent Thomas> Date: Fri, 5 May 2023 19:28:35 +0200 Subject: [PATCH] add macro for UINT32 --- openair3/UTILS/conversions.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/openair3/UTILS/conversions.h b/openair3/UTILS/conversions.h index 6e961781f0..2c544c94e0 100644 --- a/openair3/UTILS/conversions.h +++ b/openair3/UTILS/conversions.h @@ -116,6 +116,15 @@ do { \ ((buf)[3]); \ } while(0) +/* Convert an array of char containing vALUE to x */ +#define BUFFER_TO_UINT32(buf, x) \ + do { \ + x = (((uint32_t)(buf)[0] << 24) | \ + (uint32_t)((buf)[1] << 16) | \ + (uint32_t)((buf)[2] << 8) | \ + (uint32_t)((buf)[3]); \ + } while (0) + /* Convert an integer on 32 bits to an octet string from aSN1c tool */ #define INT32_TO_OCTET_STRING(x, aSN) \ do { \ @@ -260,6 +269,12 @@ do { \ BUFFER_TO_INT32((aSN)->buf, x); \ } while(0) +#define OCTET_STRING_TO_UINT32(aSN, x) \ + do { \ + DevCheck((aSN)->size == 4, (aSN)->size, 0, 0); \ + BUFFER_TO_UINT32((aSN)->buf, x); \ + } while (0) + #define BIT_STRING_TO_INT32(aSN, x) \ do { \ DevCheck((aSN)->bits_unused == 0, (aSN)->bits_unused, 0, 0); \ -- 2.26.2