File cpionamesize.diff of Package rpm.3337

--- ./lib/cpio.c.orig	2014-12-10 16:26:53.021827681 +0000
+++ ./lib/cpio.c	2014-12-10 16:31:59.179456740 +0000
@@ -161,7 +161,7 @@ int cpioHeaderRead(FSM_t fsm, struct sta
     st->st_rdev = makedev(major, minor);
 
     GET_NUM_FIELD(hdr.namesize, nameSize);
-    if (nameSize >= fsm->wrsize)
+    if (nameSize <= 0 || nameSize >= fsm->wrsize)
 	return CPIOERR_BAD_HEADER;
 
     fsm->wrlen = nameSize;
openSUSE Build Service is sponsored by