git-svn-id: file:///var/lib/svn/clamav-devel/trunk/clamav-devel@1239 77e5149b-7576-45b1-b177-96237e5ba77b
Nigel Horne authored on 2005/01/10 06:26:07... | ... |
@@ -1,6 +1,10 @@ |
1 |
+Sun Jan 9 21:24:58 GMT 2005 (njh) |
|
2 |
+---------------------------------- |
|
3 |
+ * libclamav/mbox.c: Some HTML.Phishing.Bank-41 were getting through |
|
4 |
+ |
|
1 | 5 |
Sun Jan 9 11:38:39 GMT 2005 (njh) |
2 | 6 |
---------------------------------- |
3 |
- * liclamav/mbox.c: Add support for messages that break RFC2047 |
|
7 |
+ * libclamav/mbox.c: Add support for messages that break RFC2047 |
|
4 | 8 |
|
5 | 9 |
Sat Jan 8 03:50:51 CET 2005 (tk) |
6 | 10 |
--------------------------------- |
... | ... |
@@ -17,6 +17,9 @@ |
17 | 17 |
* |
18 | 18 |
* Change History: |
19 | 19 |
* $Log: mbox.c,v $ |
20 |
+ * Revision 1.210 2005/01/09 21:23:21 nigelhorne |
|
21 |
+ * Catch HTML.Phishing.Bank-41 |
|
22 |
+ * |
|
20 | 23 |
* Revision 1.209 2005/01/09 11:37:02 nigelhorne |
21 | 24 |
* Handle broken RFC2047 headers |
22 | 25 |
* |
... | ... |
@@ -615,7 +618,7 @@ |
615 | 615 |
* Compilable under SCO; removed duplicate code with message.c |
616 | 616 |
* |
617 | 617 |
*/ |
618 |
-static char const rcsid[] = "$Id: mbox.c,v 1.209 2005/01/09 11:37:02 nigelhorne Exp $"; |
|
618 |
+static char const rcsid[] = "$Id: mbox.c,v 1.210 2005/01/09 21:23:21 nigelhorne Exp $"; |
|
619 | 619 |
|
620 | 620 |
#if HAVE_CONFIG_H |
621 | 621 |
#include "clamav-config.h" |
... | ... |
@@ -1597,7 +1600,6 @@ static message * |
1597 | 1597 |
parseEmailHeaders(const message *m, const table_t *rfc821) |
1598 | 1598 |
{ |
1599 | 1599 |
bool inHeader = TRUE; |
1600 |
- bool contMarker = FALSE; |
|
1601 | 1600 |
const text *t; |
1602 | 1601 |
message *ret; |
1603 | 1602 |
bool anyHeadersFound = FALSE; |
... | ... |
@@ -1621,18 +1623,15 @@ parseEmailHeaders(const message *m, const table_t *rfc821) |
1621 | 1621 |
buffer = NULL; |
1622 | 1622 |
|
1623 | 1623 |
if(inHeader) { |
1624 |
- cli_dbgmsg("parseEmailHeaders: check '%s' contMarker %d\n", |
|
1625 |
- buffer ? buffer : "", (int)contMarker); |
|
1624 |
+ cli_dbgmsg("parseEmailHeaders: check '%s'\n", |
|
1625 |
+ buffer ? buffer : ""); |
|
1626 | 1626 |
if(buffer == NULL) { |
1627 |
- if(!contMarker) { |
|
1628 |
- /* |
|
1629 |
- * A blank line signifies the end of |
|
1630 |
- * the header and the start of the text |
|
1631 |
- */ |
|
1632 |
- cli_dbgmsg("End of header information\n"); |
|
1633 |
- inHeader = FALSE; |
|
1634 |
- } else |
|
1635 |
- contMarker = FALSE; |
|
1627 |
+ /* |
|
1628 |
+ * A blank line signifies the end of |
|
1629 |
+ * the header and the start of the text |
|
1630 |
+ */ |
|
1631 |
+ cli_dbgmsg("End of header information\n"); |
|
1632 |
+ inHeader = FALSE; |
|
1636 | 1633 |
} else { |
1637 | 1634 |
char *ptr; |
1638 | 1635 |
const char *qptr; |
... | ... |
@@ -1644,10 +1643,8 @@ parseEmailHeaders(const message *m, const table_t *rfc821) |
1644 | 1644 |
/* |
1645 | 1645 |
* Continuation of line we're ignoring? |
1646 | 1646 |
*/ |
1647 |
- if((buffer[0] == '\t') || (buffer[0] == ' ') || contMarker) { |
|
1648 |
- contMarker = continuationMarker(buffer); |
|
1647 |
+ if((buffer[0] == '\t') || (buffer[0] == ' ')) |
|
1649 | 1648 |
continue; |
1650 |
- } |
|
1651 | 1649 |
|
1652 | 1650 |
/* |
1653 | 1651 |
* Is this a header we're interested in? |
... | ... |
@@ -1683,11 +1680,6 @@ parseEmailHeaders(const message *m, const table_t *rfc821) |
1683 | 1683 |
strcat(fullline, buffer); |
1684 | 1684 |
} |
1685 | 1685 |
|
1686 |
- contMarker = continuationMarker(buffer); |
|
1687 |
- |
|
1688 |
- if(contMarker) |
|
1689 |
- continue; |
|
1690 |
- |
|
1691 | 1686 |
assert(fullline != NULL); |
1692 | 1687 |
|
1693 | 1688 |
if(t->t_next && (t->t_next->t_line != NULL)) |