[oe] [meta-networking][PATCH 5/5] ippool: Fix strncpy -Wformat-truncation warning
Khem Raj
raj.khem at gmail.com
Fri Dec 27 03:56:39 UTC 2019
Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
.../ippool/ippool/strncpy-truncation.patch | 35 +++++++++++++++++++
.../recipes-daemons/ippool/ippool_1.3.bb | 1 +
2 files changed, 36 insertions(+)
create mode 100644 meta-networking/recipes-daemons/ippool/ippool/strncpy-truncation.patch
diff --git a/meta-networking/recipes-daemons/ippool/ippool/strncpy-truncation.patch b/meta-networking/recipes-daemons/ippool/ippool/strncpy-truncation.patch
new file mode 100644
index 0000000000..28cad001db
--- /dev/null
+++ b/meta-networking/recipes-daemons/ippool/ippool/strncpy-truncation.patch
@@ -0,0 +1,35 @@
+Replace strncpy with memcpy
+
+since the length of data to
+be copied has already been determined with strlen(). Replace strncpy()
+with memcpy() to address the warning and optimize the code a little.
+
+| ippool_config.c:112:2: note: 'snprintf' output between 8 and 55 bytes into a destination of size 48
+| 112 | snprintf(prompt, sizeof(prompt), "ippool-%s", server_name);
+| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem at gmail.com>
+--- a/cli/cli_readline.c
++++ b/cli/cli_readline.c
+@@ -261,6 +261,11 @@ static void cli_rl_display_wrapped_text(
+ if (left_margin == 0) {
+ left_margin = 3;
+ }
++
++ if (left_margin >= strlen(text_buf)) {
++ left_margin = strlen(text_buf);
++ }
++
+ if (right_margin == 0) {
+ right_margin = 78;;
+ }
+@@ -271,7 +276,7 @@ static void cli_rl_display_wrapped_text(
+ /* First copy the text heading to the buffer and add a "-", accounting for
+ * the specified left margin.
+ */
+- strncpy(&text_buf[0], text1, left_margin - 3);
++ memcpy(&text_buf[0], text1, left_margin - 3);
+ for (pos = strlen(text1); pos < left_margin - 3; pos++) {
+ text_buf[pos] = ' ';
+ }
diff --git a/meta-networking/recipes-daemons/ippool/ippool_1.3.bb b/meta-networking/recipes-daemons/ippool/ippool_1.3.bb
index 6fa46904b3..3554e688ab 100644
--- a/meta-networking/recipes-daemons/ippool/ippool_1.3.bb
+++ b/meta-networking/recipes-daemons/ippool/ippool_1.3.bb
@@ -26,6 +26,7 @@ SRC_URI = "https://sourceforge.net/projects/openl2tp/files/${BPN}/${PV}/${BPN}-$
file://0003-cli-Mark-return-of-strtol-as-long-int.patch \
file://0002-link-with-libtirpc.patch \
file://0003-musl-fixes.patch \
+ file://strncpy-truncation.patch \
"
LIC_FILES_CHKSUM = "file://LICENSE;md5=4c59283b82fc2b166455e0fc23c71c6f"
--
2.24.1
More information about the Openembedded-devel
mailing list