From bdb5a17e3570ee5bde564f894444125be16a233c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= Date: Thu, 27 Nov 2014 15:45:31 +0200 Subject: filter: default path is const and thus non-writable fix crash that would happen in blob_lowercase due to trying to write rodata. --- src/squark-filter.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/squark-filter.c b/src/squark-filter.c index 827540e..5ffcedf 100644 --- a/src/squark-filter.c +++ b/src/squark-filter.c @@ -168,8 +168,7 @@ static int url_parse(blob_t uri, struct url_info *nfo) else nfo->port = 80; } - if (blob_is_null(nfo->path)) - nfo->path = BLOB_STR("/"); + if (blob_is_null(nfo->path)) nfo->path = slash; /* significant host name */ nfo->significant_host = nfo->host; @@ -275,7 +274,7 @@ static int url_classify(struct url_info *url, struct sqdb *db) /* and then search for path matches -- construct hashing * string of url decoded path */ - blob_lowercase(url->path); /* filter DB stores all URLs in lowercase */ + if (url->path.ptr != slash.ptr) blob_lowercase(url->path); /* filter DB stores all URLs in lowercase */ blob_push_urldecode(&keybuf, url->path); keylimits = blob_pushed(BLOB_BUF(buffer), keybuf); -- cgit v1.2.3