Skip to content

Commit 5cb357c

Browse files
committed
WIP: mod: applications/zpc/components/zwave_api/src/zwapi_connection.c (main)
Signed-off-by: Philippe Coval <[email protected]>
1 parent 77e9b8a commit 5cb357c

File tree

1 file changed

+31
-12
lines changed

1 file changed

+31
-12
lines changed

applications/zpc/components/zwave_api/src/zwapi_connection.c

Lines changed: 31 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
*
1212
*****************************************************************************/
1313

14+
#include <assert.h>
1415
#include <string.h>
1516
#include "zwapi_connection.h"
1617
#include "zwapi_serial.h"
@@ -51,35 +52,53 @@ static const char *zwapi_frame_to_string(const uint8_t *buffer,
5152
continue;
5253
} else if (i == 1) {
5354
{
54-
int n = snprintf(message + index, sizeof(message) - index, "Length=");
55-
if (n < 0 || n >= sizeof(message) - index) {
55+
int written
56+
= snprintf(message + index, sizeof(message) - index, "Length=");
57+
if (written < 0 || written >= sizeof(message) - index) {
58+
sl_log_error(LOG_TAG,
59+
"Buffer overflow prevented while writing message.");
60+
assert(false);
5661
break;
5762
}
58-
index += n;
63+
index += written;
5964
}
6065
} else if (i == 2) {
6166
{
62-
int n = snprintf(message + index, sizeof(message) - index, "Type=");
63-
if (n < 0 || n >= sizeof(message) - index) {
67+
int written
68+
= snprintf(message + index, sizeof(message) - index, "Type=");
69+
if (written < 0 || written >= sizeof(message) - index) {
70+
sl_log_error(LOG_TAG,
71+
"Buffer overflow prevented while writing message.");
72+
assert(false);
6473
break;
6574
}
66-
index += n;
75+
index += written;
6776
}
6877
} else if (i == 3) {
6978
{
70-
int n = snprintf(message + index, sizeof(message) - index, "Cmd=");
71-
if (n < 0 || n >= sizeof(message) - index) {
79+
int written
80+
= snprintf(message + index, sizeof(message) - index, "Cmd=");
81+
if (written < 0 || written >= sizeof(message) - index) {
82+
sl_log_error(LOG_TAG,
83+
"Buffer overflow prevented while writing message.");
84+
assert(false);
7285
break;
7386
}
74-
index += n;
87+
index += written;
7588
}
7689
}
7790
{
78-
int n = snprintf(message + index, sizeof(message) - index, "%02X ", buffer[i]);
79-
if (n < 0 || n >= sizeof(message) - index) {
91+
int n = snprintf(message + index,
92+
sizeof(message) - index,
93+
"%02X ",
94+
buffer[i]);
95+
if (written < 0 || written >= sizeof(message) - index) {
96+
sl_log_error(LOG_TAG,
97+
"Buffer overflow prevented while writing message.");
98+
assert(false);
8099
break;
81100
}
82-
index += n;
101+
index += written;
83102
}
84103
}
85104
return message;

0 commit comments

Comments
 (0)