validation: Fix tag array for 8 bit architectures
Compilation for 8 bit architectures fails due to a bit shift larger than
8 for a uint8_t data type. This commit changes the data type to uint32_t
for the tag array.
Signed-off-by: Koen Zandberg <koen@bergzand.net>
diff --git a/src/cborvalidation.c b/src/cborvalidation.c
index a1a7e08..00693d6 100644
--- a/src/cborvalidation.c
+++ b/src/cborvalidation.c
@@ -241,27 +241,27 @@
struct KnownTagData { uint32_t tag; uint32_t types; };
static const struct KnownTagData knownTagData[] = {
- { 0, (uint8_t)CborTextStringType },
- { 1, (uint8_t)(CborIntegerType+1) },
- { 2, (uint8_t)CborByteStringType },
- { 3, (uint8_t)CborByteStringType },
- { 4, (uint8_t)CborArrayType },
- { 5, (uint8_t)CborArrayType },
- { 16, (uint8_t)CborArrayType },
- { 17, (uint8_t)CborArrayType },
- { 18, (uint8_t)CborArrayType },
- { 21, (uint8_t)CborByteStringType | ((uint8_t)CborArrayType << 8) | ((uint8_t)CborMapType << 16) },
- { 22, (uint8_t)CborByteStringType | ((uint8_t)CborArrayType << 8) | ((uint8_t)CborMapType << 16) },
- { 23, (uint8_t)CborByteStringType | ((uint8_t)CborArrayType << 8) | ((uint8_t)CborMapType << 16) },
- { 24, (uint8_t)CborByteStringType },
- { 32, (uint8_t)CborTextStringType },
- { 33, (uint8_t)CborTextStringType },
- { 34, (uint8_t)CborTextStringType },
- { 35, (uint8_t)CborTextStringType },
- { 36, (uint8_t)CborTextStringType },
- { 96, (uint8_t)CborArrayType },
- { 97, (uint8_t)CborArrayType },
- { 98, (uint8_t)CborArrayType },
+ { 0, (uint32_t)CborTextStringType },
+ { 1, (uint32_t)(CborIntegerType+1) },
+ { 2, (uint32_t)CborByteStringType },
+ { 3, (uint32_t)CborByteStringType },
+ { 4, (uint32_t)CborArrayType },
+ { 5, (uint32_t)CborArrayType },
+ { 16, (uint32_t)CborArrayType },
+ { 17, (uint32_t)CborArrayType },
+ { 18, (uint32_t)CborArrayType },
+ { 21, (uint32_t)CborByteStringType | ((uint32_t)CborArrayType << 8) | ((uint32_t)CborMapType << 16) },
+ { 22, (uint32_t)CborByteStringType | ((uint32_t)CborArrayType << 8) | ((uint32_t)CborMapType << 16) },
+ { 23, (uint32_t)CborByteStringType | ((uint32_t)CborArrayType << 8) | ((uint32_t)CborMapType << 16) },
+ { 24, (uint32_t)CborByteStringType },
+ { 32, (uint32_t)CborTextStringType },
+ { 33, (uint32_t)CborTextStringType },
+ { 34, (uint32_t)CborTextStringType },
+ { 35, (uint32_t)CborTextStringType },
+ { 36, (uint32_t)CborTextStringType },
+ { 96, (uint32_t)CborArrayType },
+ { 97, (uint32_t)CborArrayType },
+ { 98, (uint32_t)CborArrayType },
{ 55799, 0U }
};