From 292bf2842cb8c09d7445bfe729ab3e0fa5f48a47 Mon Sep 17 00:00:00 2001 From: Ian Craggs Date: Sat, 13 Jul 2024 12:32:48 +0100 Subject: [PATCH] Widen property type to be able to carry all values #1493 --- src/MQTTProperties.c | 8 ++++---- src/MQTTProperties.h | 8 +++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/MQTTProperties.c b/src/MQTTProperties.c index 4f704c8b..5f4704c6 100644 --- a/src/MQTTProperties.c +++ b/src/MQTTProperties.c @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2017, 2020 IBM Corp. and others + * Copyright (c) 2017, 2024 IBM Corp. and others * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 @@ -475,10 +475,10 @@ int MQTTProperties_propertyCount(MQTTProperties *props, enum MQTTPropertyCodes p } -int MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index) +int64_t MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index) { int i = 0; - int rc = -9999999; + int64_t rc = -9999999; int cur_index = 0; for (i = 0; i < props->count; ++i) @@ -515,7 +515,7 @@ int MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCod } -int MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid) +int64_t MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid) { return MQTTProperties_getNumericValueAt(props, propid, 0); } diff --git a/src/MQTTProperties.h b/src/MQTTProperties.h index 45d1b5e3..9077b3bf 100644 --- a/src/MQTTProperties.h +++ b/src/MQTTProperties.h @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2017, 2023 IBM Corp. and others + * Copyright (c) 2017, 2024 IBM Corp. and others * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 @@ -19,6 +19,8 @@ #include "MQTTExportDeclarations.h" +#include + #define MQTT_INVALID_PROPERTY_ID -2 /** The one byte MQTT V5 property indicator */ @@ -191,7 +193,7 @@ LIBMQTT_API int MQTTProperties_propertyCount(MQTTProperties *props, enum MQTTPro * @param propid the property id to check for. * @return the integer value of the property. -9999999 on failure. */ -LIBMQTT_API int MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid); +LIBMQTT_API int64_t MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid); /** * Returns the integer value of a specific property when it's not the only instance. @@ -201,7 +203,7 @@ LIBMQTT_API int MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTP * @param index the instance number, starting at 0. * @return the integer value of the property. -9999999 on failure. */ -LIBMQTT_API int MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index); +LIBMQTT_API int64_t MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index); /** * Returns a pointer to the property structure for a specific property.