046-UBI-avoid-workqueue-format-string-leak.patch 959 B

12345678910111213141516171819202122232425
  1. From bebfef150e0b8fa68704cddacf05b8c26462d565 Mon Sep 17 00:00:00 2001
  2. From: Kees Cook <[email protected]>
  3. Date: Mon, 7 Apr 2014 21:44:07 -0700
  4. Subject: [PATCH] UBI: avoid workqueue format string leak
  5. When building the name for the workqueue thread, make sure a format
  6. string cannot leak in from the disk name.
  7. Signed-off-by: Kees Cook <[email protected]>
  8. Signed-off-by: Artem Bityutskiy <[email protected]>
  9. ---
  10. drivers/mtd/ubi/block.c | 2 +-
  11. 1 file changed, 1 insertion(+), 1 deletion(-)
  12. --- a/drivers/mtd/ubi/block.c
  13. +++ b/drivers/mtd/ubi/block.c
  14. @@ -431,7 +431,7 @@ int ubiblock_create(struct ubi_volume_in
  15. * Create one workqueue per volume (per registered block device).
  16. * Rembember workqueues are cheap, they're not threads.
  17. */
  18. - dev->wq = alloc_workqueue(gd->disk_name, 0, 0);
  19. + dev->wq = alloc_workqueue("%s", 0, 0, gd->disk_name);
  20. if (!dev->wq)
  21. goto out_free_queue;
  22. INIT_WORK(&dev->work, ubiblock_do_work);