bb11281 - crash in upack.c identified and changes suggested by Sebastian Andrzej Siewior.

remotes/push_mirror/klin/altstr-yara
Steven Morgan 10 years ago
parent ac7a18386c
commit fd738c77c9
  1. 4
      libclamav/upack.c

@ -302,7 +302,7 @@ int unupack(int upack, char *dest, uint32_t dsize, char *buff, uint32_t vma, uin
loc_esi += 4;
cli_dbgmsg("Upack: ecx counter: %08x\n", j);
if (!CLI_ISCONTAINED(dest, dsize, loc_esi, (j*4)) || !CLI_ISCONTAINED(dest, dsize, loc_edi, ((j+count)*4)))
if (!CLI_ISCONTAINED(dest, (dsize/4), loc_esi, j) || !CLI_ISCONTAINED(dest, (dsize/4), loc_edi, (j+count)))
return -1;
for (;j--; loc_edi+=4, loc_esi+=4)
cli_writeint32(loc_edi, cli_readint32(loc_esi));
@ -359,7 +359,7 @@ int unupack(int upack, char *dest, uint32_t dsize, char *buff, uint32_t vma, uin
loc_edi += 4;
loc_ebx = loc_edi;
if (!CLI_ISCONTAINED(dest, dsize, loc_edi, ((6+count)*4)))
if (!CLI_ISCONTAINED(dest, (dsize/4), loc_edi, (6+count)))
return -1;
cli_writeint32(loc_edi, 0xffffffff);
loc_edi += 4;

Loading…
Cancel
Save