summaryrefslogtreecommitdiff
path: root/src/queue.c
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2022-03-24 18:14:50 +0100
committerPhil Sutter <phil@nwl.cc>2022-03-28 12:19:44 +0200
commit0e05989f3247e9aef0d96aafc144b2d853732891 (patch)
tree725c9078d4752c68dc796e82d89954fa1f19927a /src/queue.c
parent549f90d8a7847f201aa604a0cf7c24b73d4b5a56 (diff)
downloadconntrack-tools-0e05989f3247e9aef0d96aafc144b2d853732891.tar.gz
Fix potential buffer overrun in snprintf() calls
When consecutively printing into the same buffer at increasing offset, reduce buffer size passed to snprintf() to not defeat its size checking. Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'src/queue.c')
-rw-r--r--src/queue.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/queue.c b/src/queue.c
index 76425b1..e94dc7c 100644
--- a/src/queue.c
+++ b/src/queue.c
@@ -69,12 +69,12 @@ void queue_stats_show(int fd)
int size = 0;
char buf[512];
- size += snprintf(buf+size, sizeof(buf),
+ size += snprintf(buf + size, sizeof(buf) - size,
"allocated queue nodes:\t\t%12u\n\n",
qobjects_num);
list_for_each_entry(this, &queue_list, list) {
- size += snprintf(buf+size, sizeof(buf),
+ size += snprintf(buf + size, sizeof(buf) - size,
"queue %s:\n"
"current elements:\t\t%12u\n"
"maximum elements:\t\t%12u\n"