summaryrefslogtreecommitdiff
path: root/content
diff options
context:
space:
mode:
authorRob Kendrick <rjek@netsurf-browser.org>2008-03-05 23:09:36 +0000
committerRob Kendrick <rjek@netsurf-browser.org>2008-03-05 23:09:36 +0000
commit58ee433b670140b1794c1d57f55fbb8c54b3332c (patch)
treee5d459c15f7abff0e5e4ece9bf932dba85e677c1 /content
parentb168d636d09c86bfafb612c98528eb5af31e12b1 (diff)
downloadnetsurf-58ee433b670140b1794c1d57f55fbb8c54b3332c.tar.gz
netsurf-58ee433b670140b1794c1d57f55fbb8c54b3332c.tar.bz2
Add another check for malformed data: URLs
svn path=/trunk/netsurf/; revision=3889
Diffstat (limited to 'content')
-rw-r--r--content/fetchers/fetch_data.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/content/fetchers/fetch_data.c b/content/fetchers/fetch_data.c
index 72c2557a9..60ccf13f4 100644
--- a/content/fetchers/fetch_data.c
+++ b/content/fetchers/fetch_data.c
@@ -133,13 +133,22 @@ static bool fetch_data_process(struct fetch_data_context *c)
* data must still be there.
*/
+ LOG(("*** Processing %s", c->url));
+
+ if (strlen(c->url) < 6) {
+ /* 6 is the minimum possible length (data:,) */
+ fetch_send_callback(FETCH_ERROR, c->parent_fetch,
+ "Malformed data: URL", 0);
+ return false;
+ }
+
/* skip the data: part */
params = c->url + sizeof("data:") - 1;
/* find the comma */
if ( (comma = strchr(params, ',')) == NULL) {
fetch_send_callback(FETCH_ERROR, c->parent_fetch,
- "Badly formed data: URL", 0);
+ "Malformed data: URL", 0);
return false;
}