git-svn-id: file:///var/lib/svn/clamav-devel/trunk/clamav-devel@666 77e5149b-7576-45b1-b177-96237e5ba77b
Trog authored on 2004/07/13 00:06:09... | ... |
@@ -1,3 +1,9 @@ |
1 |
+Mon Jul 12 16:03:11 BST 2004 (trog) |
|
2 |
+----------------------------------- |
|
3 |
+ * libclamav/htmlnorm.c: fix decoding of hex char encoding |
|
4 |
+ (spotted by Tomasz Klim) |
|
5 |
+ * libclamav/filetypes.c: add '<script' tags to HTML rule set |
|
6 |
+ |
|
1 | 7 |
Sun Jul 11 16:39:42 CEST 2004 (tk) |
2 | 8 |
---------------------------------- |
3 | 9 |
* libclamav: scanners: scan raw executables before trying to unpack them |
... | ... |
@@ -116,18 +116,20 @@ static const struct cli_smagic_s cli_smagic[] = { |
116 | 116 |
{"46726f6d3a20*436f6e74656e742d547970653a20", "Mail file", CL_MAILFILE}, |
117 | 117 |
|
118 | 118 |
/* remember the matcher is case sensitive */ |
119 |
- {"3c62723e", "HTML data", CL_HTMLFILE}, /* <br> */ |
|
120 |
- {"3c42723e", "HTML data", CL_HTMLFILE}, /* <Br> */ |
|
121 |
- {"3c42523e", "HTML data", CL_HTMLFILE}, /* <BR> */ |
|
122 |
- {"3c703e", "HTML data", CL_HTMLFILE}, /* <p> */ |
|
123 |
- {"3c503e", "HTML data", CL_HTMLFILE}, /* <P> */ |
|
124 |
- {"68726566", "HTML data", CL_HTMLFILE}, /* href */ |
|
125 |
- {"48726566", "HTML data", CL_HTMLFILE}, /* Href */ |
|
126 |
- {"48524546", "HTML data", CL_HTMLFILE}, /* HREF */ |
|
127 |
- {"3c666f6e74", "HTML data", CL_HTMLFILE}, /* <font */ |
|
128 |
- {"3c466f6e74", "HTML data", CL_HTMLFILE}, /* <Font */ |
|
129 |
- {"3c464f4e54", "HTML data", CL_HTMLFILE}, /* <FONT */ |
|
130 |
- |
|
119 |
+ {"3c62723e", "HTML data", CL_HTMLFILE}, /* <br> */ |
|
120 |
+ {"3c42723e", "HTML data", CL_HTMLFILE}, /* <Br> */ |
|
121 |
+ {"3c42523e", "HTML data", CL_HTMLFILE}, /* <BR> */ |
|
122 |
+ {"3c703e", "HTML data", CL_HTMLFILE}, /* <p> */ |
|
123 |
+ {"3c503e", "HTML data", CL_HTMLFILE}, /* <P> */ |
|
124 |
+ {"68726566", "HTML data", CL_HTMLFILE}, /* href */ |
|
125 |
+ {"48726566", "HTML data", CL_HTMLFILE}, /* Href */ |
|
126 |
+ {"48524546", "HTML data", CL_HTMLFILE}, /* HREF */ |
|
127 |
+ {"3c666f6e74", "HTML data", CL_HTMLFILE}, /* <font */ |
|
128 |
+ {"3c466f6e74", "HTML data", CL_HTMLFILE}, /* <Font */ |
|
129 |
+ {"3c464f4e54", "HTML data", CL_HTMLFILE}, /* <FONT */ |
|
130 |
+ {"3c736372697074", "HTML data", CL_HTMLFILE}, /* <script */ |
|
131 |
+ {"3c536372697074", "HTML data", CL_HTMLFILE}, /* <Script */ |
|
132 |
+ {"3c534352495054", "HTML data", CL_HTMLFILE}, /* <SCRIPT */ |
|
131 | 133 |
|
132 | 134 |
{NULL, NULL, CL_UNKNOWN_TYPE} |
133 | 135 |
}; |
... | ... |
@@ -176,7 +176,11 @@ unsigned int decode_html_char_ref(unsigned char *cref, |
176 | 176 |
} else { |
177 | 177 |
value *= 10; |
178 | 178 |
} |
179 |
- value += (*cref - '0'); |
|
179 |
+ if (isdigit(*cref)) { |
|
180 |
+ value += (*cref - '0'); |
|
181 |
+ } else { |
|
182 |
+ value += (tolower(*cref) - 'a' + 10); |
|
183 |
+ } |
|
180 | 184 |
cref++; |
181 | 185 |
count++; |
182 | 186 |
} |