git-svn: trunk@1498
Trog authored on 2005/04/28 16:54:24... | ... |
@@ -1,3 +1,9 @@ |
1 |
+Thu Apr 28 08:52:05 BST 2005 (trog) |
|
2 |
+----------------------------------- |
|
3 |
+ * libclamav/chmunpack.c: Add extra sanity check. |
|
4 |
+ |
|
5 |
+ * libclamav/unrar/unrar20.c: Fix typo spotted by NJH. |
|
6 |
+ |
|
1 | 7 |
Wed Apr 27 23:54:46 CEST 2005 (tk) |
2 | 8 |
---------------------------------- |
3 | 9 |
* libclamav/upx.c: add sanity check to pefromupx() (patch by NJH) |
... | ... |
@@ -187,6 +187,9 @@ static uint64_t chm_endian_convert_64(uint64_t v) |
187 | 187 |
int chm_read_data(int fd, unsigned char *dest, off_t offset, off_t len, |
188 | 188 |
unsigned char *m_area, off_t m_length) |
189 | 189 |
{ |
190 |
+ if ((offset < 0) || (len < 0) || ((offset+len) < 0)) { |
|
191 |
+ return FALSE; |
|
192 |
+ } |
|
190 | 193 |
if (m_area != NULL) { |
191 | 194 |
if ((offset+len) > m_length) { |
192 | 195 |
return FALSE; |
... | ... |
@@ -182,7 +182,7 @@ static unsigned char decode_audio(unpack_data_t *unpack_data, int delta) |
182 | 182 |
|
183 | 183 |
pch = 8 * v->last_char + v->K1 * v->D1 + v->K2 * v->D2 + v->K3 * |
184 | 184 |
v->D3 + v->K4 * v->D4 + v->K5 * unpack_data->unp_channel_delta; |
185 |
- pch - (pch >> 3) & 0xff; |
|
185 |
+ pch = (pch >> 3) & 0xff; |
|
186 | 186 |
|
187 | 187 |
ch = pch - delta; |
188 | 188 |
|