diff options
Diffstat (limited to 'package/utils/busybox/patches/600-cve-2017-16544.patch')
-rw-r--r-- | package/utils/busybox/patches/600-cve-2017-16544.patch | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/package/utils/busybox/patches/600-cve-2017-16544.patch b/package/utils/busybox/patches/600-cve-2017-16544.patch deleted file mode 100644 index 3b142bdd64..0000000000 --- a/package/utils/busybox/patches/600-cve-2017-16544.patch +++ /dev/null @@ -1,35 +0,0 @@ -From c3797d40a1c57352192c6106cc0f435e7d9c11e8 Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko <vda.linux@googlemail.com> -Date: Tue, 7 Nov 2017 18:09:29 +0100 -Subject: lineedit: do not tab-complete any strings which have control - characters - -function old new delta -add_match 41 68 +27 - -Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> ---- - libbb/lineedit.c | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - ---- a/libbb/lineedit.c -+++ b/libbb/lineedit.c -@@ -633,6 +633,18 @@ static void free_tab_completion_data(voi - - static void add_match(char *matched) - { -+ unsigned char *p = (unsigned char*)matched; -+ while (*p) { -+ /* ESC attack fix: drop any string with control chars */ -+ if (*p < ' ' -+ || (!ENABLE_UNICODE_SUPPORT && *p >= 0x7f) -+ || (ENABLE_UNICODE_SUPPORT && *p == 0x7f) -+ ) { -+ free(matched); -+ return; -+ } -+ p++; -+ } - matches = xrealloc_vector(matches, 4, num_matches); - matches[num_matches] = matched; - num_matches++; |