[PATCH] libosmo-netif[master]: src: _snprintf() helper functions always nul-terminate buffers

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Pablo Neira Ayuso gerrit-no-reply at lists.osmocom.org
Tue Sep 5 13:13:59 UTC 2017


Review at  https://gerrit.osmocom.org/3830

src: _snprintf() helper functions always nul-terminate buffers

Add the \0 for every case, even if this does not match exactly the
snprintf semantics.

Change-Id: I97e517f2d98e83894ea707c63489559302ff6bd2
---
M src/osmux.c
M src/rtp.c
2 files changed, 15 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmo-netif refs/changes/30/3830/1

diff --git a/src/osmux.c b/src/osmux.c
index b18246f..683c6e9 100644
--- a/src/osmux.c
+++ b/src/osmux.c
@@ -938,6 +938,13 @@
 
 		msg_len -= this_len;
 	}
+	/* This _snprintf() variant always nul-terminates the buffer. */
+	if (!offset)
+		buf[0] = '\0';
+	else if (offset + 1 >= size)
+		buf[offset] = '\0';
+	else
+		buf[++offset] = '\0';
 
 	return offset;
 }
diff --git a/src/rtp.c b/src/rtp.c
index 56fc37c..f524f73 100644
--- a/src/rtp.c
+++ b/src/rtp.c
@@ -223,5 +223,13 @@
 	ret = snprintf(buf + offset, remain, "]");
 	SNPRINTF_BUFFER_SIZE(ret, remain, offset);
 
+	/* This _snprintf() variant always nul-terminates the buffer. */
+	if (!offset)
+		buf[0] = '\0';
+	else if (offset + 1 >= size)
+		buf[offset] = '\0';
+	else
+		buf[++offset] = '\0';
+
 	return offset;
 }

-- 
To view, visit https://gerrit.osmocom.org/3830
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I97e517f2d98e83894ea707c63489559302ff6bd2
Gerrit-PatchSet: 1
Gerrit-Project: libosmo-netif
Gerrit-Branch: master
Gerrit-Owner: Pablo Neira Ayuso <pablo at gnumonks.org>



More information about the gerrit-log mailing list