cabinet: Check buffer size before copying in NONEfdi_decomp.

Check that the data will fit into the fixed sized buffer CAB(outbuf)
and return an error if not before copying.
This commit is contained in:
Rob Shearman 2008-10-01 11:19:31 +01:00 committed by Alexandre Julliard
parent 2b5a59c092
commit 79ad9cbcdd
1 changed files with 1 additions and 0 deletions

View File

@ -911,6 +911,7 @@ static int LZXfdi_init(int window, fdi_decomp_state *decomp_state) {
static int NONEfdi_decomp(int inlen, int outlen, fdi_decomp_state *decomp_state)
{
if (inlen != outlen) return DECR_ILLEGALDATA;
if (outlen > CAB_BLOCKMAX) return DECR_DATAFORMAT;
memcpy(CAB(outbuf), CAB(inbuf), (size_t) inlen);
return DECR_OK;
}