Blame rpm-4.11.x-CVE-2014-8118.patch

Lubos Kardos 6bebc45
--- rpm-4.11.1.orig/lib/cpio.c	2014-11-28 12:21:50.444158675 +0100
Lubos Kardos 6bebc45
+++ rpm-4.11.1/lib/cpio.c	2014-11-28 12:22:53.776453253 +0100
Lubos Kardos 6bebc45
@@ -296,6 +296,9 @@
Lubos Kardos 6bebc45
     st->st_rdev = makedev(major, minor);
Lubos Kardos 6bebc45
 
Lubos Kardos 6bebc45
     GET_NUM_FIELD(hdr.namesize, nameSize);
Lubos Kardos 6bebc45
+    if (nameSize <= 0 || nameSize > 4096) {
Lubos Kardos 6bebc45
+        return CPIOERR_BAD_HEADER;
Lubos Kardos 6bebc45
+    }
Lubos Kardos 6bebc45
 
Lubos Kardos 6bebc45
     *path = xmalloc(nameSize + 1);
Lubos Kardos 6bebc45
     read = Fread(*path, nameSize, 1, cpio->fd);