summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-06-11 12:59:15 +0000
committerJohn Crispin <john@openwrt.org>2014-06-11 12:59:15 +0000
commitc8d472c37f07e3a0d7a5ba05ec3b7538a72ad81c (patch)
tree038631553628aa0beb963792b5dc13454bbead28 /target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch
parentacbcd5f5b5465b28f966abd7f8da98062ba09935 (diff)
downloadmtk-20170518-c8d472c37f07e3a0d7a5ba05ec3b7538a72ad81c.zip
mtk-20170518-c8d472c37f07e3a0d7a5ba05ec3b7538a72ad81c.tar.gz
mtk-20170518-c8d472c37f07e3a0d7a5ba05ec3b7538a72ad81c.tar.bz2
kernel: backport the ubiblock patches from 3.14->3.10
Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 41120
Diffstat (limited to 'target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch')
-rw-r--r--target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch b/target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch
new file mode 100644
index 0000000..86f0d63
--- /dev/null
+++ b/target/linux/generic/patches-3.10/046-UBI-avoid-workqueue-format-string-leak.patch
@@ -0,0 +1,30 @@
+From bebfef150e0b8fa68704cddacf05b8c26462d565 Mon Sep 17 00:00:00 2001
+From: Kees Cook <keescook@chromium.org>
+Date: Mon, 7 Apr 2014 21:44:07 -0700
+Subject: [PATCH] UBI: avoid workqueue format string leak
+
+When building the name for the workqueue thread, make sure a format
+string cannot leak in from the disk name.
+
+Signed-off-by: Kees Cook <keescook@chromium.org>
+Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
+---
+ drivers/mtd/ubi/block.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c
+index 7ff473c..8d659e6 100644
+--- a/drivers/mtd/ubi/block.c
++++ b/drivers/mtd/ubi/block.c
+@@ -431,7 +431,7 @@ int ubiblock_create(struct ubi_volume_info *vi)
+ * Create one workqueue per volume (per registered block device).
+ * Rembember workqueues are cheap, they're not threads.
+ */
+- dev->wq = alloc_workqueue(gd->disk_name, 0, 0);
++ dev->wq = alloc_workqueue("%s", 0, 0, gd->disk_name);
+ if (!dev->wq)
+ goto out_free_queue;
+ INIT_WORK(&dev->work, ubiblock_do_work);
+--
+1.9.2
+