aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-10-30 09:50:03 -0700
committerKhem Raj <raj.khem@gmail.com>2021-11-01 05:45:17 -0700
commitce3c3f2099d4c9df3ee98fe11931f0c4a38eb4ed (patch)
treebf9e7d9b052adf0c4e4e202bf25ce8bc50351ba1
parent9c9c02d434a8ea7a2dd0dadc0ec130aec37f1ff3 (diff)
downloadmeta-openembedded-contrib-ce3c3f2099d4c9df3ee98fe11931f0c4a38eb4ed.tar.gz
sysdig: Fix build with ncurses 6.3+
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-extended/sysdig/sysdig/0001-libsinsp-Fix-a-lot-of-Werror-format-security-errors-.patch155
-rw-r--r--meta-oe/recipes-extended/sysdig/sysdig_git.bb1
2 files changed, 156 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/sysdig/sysdig/0001-libsinsp-Fix-a-lot-of-Werror-format-security-errors-.patch b/meta-oe/recipes-extended/sysdig/sysdig/0001-libsinsp-Fix-a-lot-of-Werror-format-security-errors-.patch
new file mode 100644
index 0000000000..055b0c1c29
--- /dev/null
+++ b/meta-oe/recipes-extended/sysdig/sysdig/0001-libsinsp-Fix-a-lot-of-Werror-format-security-errors-.patch
@@ -0,0 +1,155 @@
+From a5c8e2676b94d2ea41b44b4e05943bee6459f337 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 30 Oct 2021 09:46:35 -0700
+Subject: [PATCH] libsinsp: Fix a lot of -Werror=format-security errors with
+ mvprintw/mvwprintw
+
+In all these places a non-constant is used as a format string which
+compiler complains about. Fix by using "%s" as format.
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ userspace/libsinsp/cursescomponents.cpp | 4 ++--
+ userspace/libsinsp/cursesspectro.cpp | 2 +-
+ userspace/libsinsp/cursestable.cpp | 6 +++---
+ userspace/libsinsp/cursesui.cpp | 14 +++++++-------
+ 4 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/userspace/libsinsp/cursescomponents.cpp b/userspace/libsinsp/cursescomponents.cpp
+index 4003cb4e..372b4526 100644
+--- a/userspace/libsinsp/cursescomponents.cpp
++++ b/userspace/libsinsp/cursescomponents.cpp
+@@ -877,7 +877,7 @@ void curses_textbox::print_no_data()
+ string wstr = "No Data For This Selection";
+ mvprintw(m_parent->m_screenh / 2,
+ m_parent->m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ refresh();
+ }
+@@ -1100,7 +1100,7 @@ void curses_textbox::render()
+ attrset(m_parent->m_colors[sinsp_cursesui::LARGE_NUMBER]);
+ mvprintw(0,
+ m_parent->m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+ }
+
+ //
+diff --git a/userspace/libsinsp/cursesspectro.cpp b/userspace/libsinsp/cursesspectro.cpp
+index 6858bc95..32012963 100644
+--- a/userspace/libsinsp/cursesspectro.cpp
++++ b/userspace/libsinsp/cursesspectro.cpp
+@@ -227,7 +227,7 @@ void curses_spectro::print_error(string wstr)
+ mvwprintw(m_tblwin,
+ m_parent->m_screenh / 2,
+ m_parent->m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+ }
+
+ void curses_spectro::update_data(vector<sinsp_sample_row>* data, bool force_selection_change)
+diff --git a/userspace/libsinsp/cursestable.cpp b/userspace/libsinsp/cursestable.cpp
+index 69c2aa32..54667554 100644
+--- a/userspace/libsinsp/cursestable.cpp
++++ b/userspace/libsinsp/cursestable.cpp
+@@ -254,7 +254,7 @@ void curses_table::print_line_centered(string line, int32_t off)
+ mvwprintw(m_tblwin,
+ m_parent->m_screenh / 2 + off,
+ m_parent->m_screenw / 2 - line.size() / 2,
+- line.c_str());
++ "%s", line.c_str());
+ }
+ else
+ {
+@@ -268,7 +268,7 @@ glogf("2, %d %s\n", spos, ss.c_str());
+ mvwprintw(m_tblwin,
+ m_parent->m_screenh / 2 + off + j,
+ 0,
+- ss.c_str());
++ "%s", ss.c_str());
+
+ spos += m_parent->m_screenw;
+ if(spos >= line.size())
+@@ -328,7 +328,7 @@ void curses_table::print_error(string wstr)
+ mvwprintw(m_tblwin,
+ m_parent->m_screenh / 2,
+ m_parent->m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+ }
+
+ void curses_table::render(bool data_changed)
+diff --git a/userspace/libsinsp/cursesui.cpp b/userspace/libsinsp/cursesui.cpp
+index 1eeb0864..69652edc 100644
+--- a/userspace/libsinsp/cursesui.cpp
++++ b/userspace/libsinsp/cursesui.cpp
+@@ -825,7 +825,7 @@ void sinsp_cursesui::render_header()
+ attrset(m_colors[sinsp_cursesui::LARGE_NUMBER]);
+ mvprintw(0,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+ }
+
+ //
+@@ -1123,7 +1123,7 @@ void sinsp_cursesui::render_filtersearch_main_menu()
+
+ m_cursor_pos = cursor_pos;
+
+- mvprintw(m_screenh - 1, m_cursor_pos, str->c_str());
++ mvprintw(m_screenh - 1, m_cursor_pos, "%s", str->c_str());
+
+ m_cursor_pos += str->size();
+ }
+@@ -2189,7 +2189,7 @@ void sinsp_cursesui::print_progress(double progress)
+ string wstr = "Processing File";
+ mvprintw(m_screenh / 2,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ //
+ // Using sprintf because to_string doesn't support setting the precision
+@@ -2199,7 +2199,7 @@ void sinsp_cursesui::print_progress(double progress)
+ wstr = "Progress: " + string(numbuf);
+ mvprintw(m_screenh / 2 + 1,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ refresh();
+ }
+@@ -2308,7 +2308,7 @@ sysdig_table_action sinsp_cursesui::handle_textbox_input(int ch)
+ attrset(m_colors[sinsp_cursesui::FAILED_SEARCH]);
+ mvprintw(m_screenh / 2,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ //
+ // Restore the cursor
+@@ -2363,7 +2363,7 @@ sysdig_table_action sinsp_cursesui::handle_textbox_input(int ch)
+
+ mvprintw(m_screenh / 2,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ render();
+ }
+@@ -2436,7 +2436,7 @@ sysdig_table_action sinsp_cursesui::handle_textbox_input(int ch)
+
+ mvprintw(m_screenh / 2,
+ m_screenw / 2 - wstr.size() / 2,
+- wstr.c_str());
++ "%s", wstr.c_str());
+
+ render();
+ }
+--
+2.33.1
+
diff --git a/meta-oe/recipes-extended/sysdig/sysdig_git.bb b/meta-oe/recipes-extended/sysdig/sysdig_git.bb
index a12f8ba5e1..90f375b665 100644
--- a/meta-oe/recipes-extended/sysdig/sysdig_git.bb
+++ b/meta-oe/recipes-extended/sysdig/sysdig_git.bb
@@ -24,6 +24,7 @@ RDEPENDS:${PN} = "bash"
SRC_URI = "git://github.com/draios/sysdig.git;branch=dev \
file://0001-fix-build-with-LuaJIT-2.1-betas.patch \
file://aarch64.patch \
+ file://0001-libsinsp-Fix-a-lot-of-Werror-format-security-errors-.patch \
"
SRCREV = "67833b2aca06bd9d11cff7cb29f04fbf4ef96cad"
PV = "0.27.1"