git-svn: trunk@1447
Tomasz Kojm authored on 2005/03/29 09:05:05... | ... |
@@ -1,3 +1,7 @@ |
1 |
+Tue Mar 29 02:02:05 CEST 2005 (tk) |
|
2 |
+---------------------------------- |
|
3 |
+ * libclamav: detect and ignore ISO 9660/High Sierra CD-ROM data |
|
4 |
+ |
|
1 | 5 |
Mon Mar 28 12:05:17 BST 2005 (njh) |
2 | 6 |
---------------------------------- |
3 | 7 |
* libclamav: Added fast track visa technology to files that are not mboxs |
... | ... |
@@ -213,11 +213,11 @@ cli_file_t cli_filetype2(int desc) |
213 | 213 |
|
214 | 214 |
if(ret == CL_TYPE_UNKNOWN_DATA || ret == CL_TYPE_UNKNOWN_TEXT) { |
215 | 215 |
|
216 |
- if(!(bigbuff = (unsigned char *) cli_calloc(16384 + 1, sizeof(unsigned char)))) |
|
216 |
+ if(!(bigbuff = (unsigned char *) cli_calloc(37638 + 1, sizeof(unsigned char)))) |
|
217 | 217 |
return ret; |
218 | 218 |
|
219 | 219 |
lseek(desc, 0, SEEK_SET); |
220 |
- if((bread = read(desc, bigbuff, 16384)) > 0) { |
|
220 |
+ if((bread = read(desc, bigbuff, 37638)) > 0) { |
|
221 | 221 |
|
222 | 222 |
bigbuff[bread] = 0; |
223 | 223 |
|
... | ... |
@@ -233,6 +233,17 @@ cli_file_t cli_filetype2(int desc) |
233 | 233 |
} |
234 | 234 |
} |
235 | 235 |
|
236 |
+ if(ret == CL_TYPE_UNKNOWN_DATA || ret == CL_TYPE_UNKNOWN_TEXT) { |
|
237 |
+ |
|
238 |
+ if(!memcmp(bigbuff + 32769, "CD001" , 5) || !memcmp(bigbuff + 37633, "CD001" , 5)) { |
|
239 |
+ cli_dbgmsg("Recognized ISO 9660 CD-ROM data\n"); |
|
240 |
+ ret = CL_TYPE_DATA; |
|
241 |
+ } else if(!memcmp(bigbuff + 32776, "CDROM" , 5)) { |
|
242 |
+ cli_dbgmsg("Recognized High Sierra CD-ROM data\n"); |
|
243 |
+ ret = CL_TYPE_DATA; |
|
244 |
+ } |
|
245 |
+ } |
|
246 |
+ |
|
236 | 247 |
free(bigbuff); |
237 | 248 |
} |
238 | 249 |
|