From 845948800683f6e18d11db07d99466eb1ff99b9b Mon Sep 17 00:00:00 2001 From: Oswin Bult Date: Fri, 21 Mar 2025 18:48:50 +0300 Subject: [PATCH] Apply patch #10406: simplify sign extension --- src/apps/snmp/snmp_asn1.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/src/apps/snmp/snmp_asn1.c b/src/apps/snmp/snmp_asn1.c index 6df34dbd..0664ad9f 100644 --- a/src/apps/snmp/snmp_asn1.c +++ b/src/apps/snmp/snmp_asn1.c @@ -463,14 +463,8 @@ snmp_asn1_dec_s32t(struct snmp_pbuf_stream *pbuf_stream, u16_t len, s32_t *value if ((len > 0) && (len < 5)) { PBUF_OP_EXEC(snmp_pbuf_stream_read(pbuf_stream, &data)); - if (data & 0x80) { - /* negative, start from -1 */ - *value = -1; - *value = (*value << 8) | data; - } else { - /* positive, start from 0 */ - *value = data; - } + /* sign extension */ + *value = (s8_t)data; len--; /* shift in the remaining value */ while (len > 0) {