[PATCH] libosmocore[master]: fix -Werror build: logging.c: always use literal with snprintf

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/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Wed Jan 17 12:26:47 UTC 2018


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

fix -Werror build: logging.c: always use literal with snprintf

A recent commit added an snprintf that passes a pointer to a literal directly
to snprintf. Since passing pointers to printf formats is a vulnerability in
case user supplied data may be passed in the format, modern compilers warn
against that, which breaks our -Werror builds. Even though this is just a
pointer to a literal, it needs to be an actual literal to make compilers happy.

Use printf("%s", c) instead of printf(c).

Note that our current build slave's gcc does not enforce that yet, while newer
compilers do.

Change-Id: Ifa4eb8a9fab66dcd987986065351b4a06421f1ec
---
M src/logging.c
1 file changed, 1 insertion(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/45/5845/1

diff --git a/src/logging.c b/src/logging.c
index a6aa7eb..9b37bf5 100644
--- a/src/logging.c
+++ b/src/logging.c
@@ -335,7 +335,7 @@
 	if (target->use_color) {
 		c_subsys = color(subsys);
 		if (c_subsys) {
-			ret = snprintf(buf + offset, rem, c_subsys);
+			ret = snprintf(buf + offset, rem, "%s", c_subsys);
 			if (ret < 0)
 				goto err;
 			OSMO_SNPRINTF_RET(ret, rem, offset, len);

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifa4eb8a9fab66dcd987986065351b4a06421f1ec
Gerrit-PatchSet: 1
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>



More information about the gerrit-log mailing list