Browse code

fuzz - 12156 - Explicit cast to unsigned 32bit int because a signed int could not hold 0xffff << 16 bits.

Micah Snyder authored on 2019/02/03 04:29:53
Showing 1 changed files
... ...
@@ -146,7 +146,7 @@ int cli_scancpio_old(cli_ctx *ctx)
146 146
 	    } else if(hdr_namesize % 2)
147 147
 		pos++;
148 148
 	}
149
-	filesize = (uint32_t) (EC16(hdr_old.filesize[0], conv) << 16 | EC16(hdr_old.filesize[1], conv));
149
+        filesize = (uint32_t)((uint32_t)EC16(hdr_old.filesize[0], conv) << 16 | EC16(hdr_old.filesize[1], conv));
150 150
 	cli_dbgmsg("CPIO: Filesize: %u\n", filesize);
151 151
 	if(!filesize)
152 152
 	    continue;