diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-05-13 16:14:37 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2019-05-13 16:14:37 +0100 |
commit | a9e44f359321212ef5dc9d8273aca3accdc84bc1 (patch) | |
tree | 8914f8a5dad4d689560fcc30f1508524b75ff5b1 | |
parent | 2a88aa10df6ccec33effa05e89315d2e7076ef6b (diff) | |
download | rspamd-a9e44f359321212ef5dc9d8273aca3accdc84bc1.tar.gz rspamd-a9e44f359321212ef5dc9d8273aca3accdc84bc1.zip |
[Minor] HTML: Allow to extract base url from the tag
-rw-r--r-- | src/libserver/html.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/libserver/html.c b/src/libserver/html.c index ff3053de7..fcc6e5684 100644 --- a/src/libserver/html.c +++ b/src/libserver/html.c @@ -60,7 +60,7 @@ static struct html_tag_def tag_defs[] = { TAG_DEF(Tag_APPLET, "applet", (CM_OBJECT | CM_IMG | CM_INLINE | CM_PARAM)), TAG_DEF(Tag_AREA, "area", (CM_BLOCK | CM_EMPTY | FL_HREF)), TAG_DEF(Tag_B, "b", (CM_INLINE|FL_BLOCK)), - TAG_DEF(Tag_BASE, "base", (CM_HEAD | CM_EMPTY)), + TAG_DEF(Tag_BASE, "base", (CM_HEAD | CM_EMPTY | FL_HREF)), TAG_DEF(Tag_BASEFONT, "basefont", (CM_INLINE | CM_EMPTY)), TAG_DEF(Tag_BDO, "bdo", (CM_INLINE)), TAG_DEF(Tag_BIG, "big", (CM_INLINE)), @@ -3030,9 +3030,13 @@ rspamd_html_process_part_full (rspamd_mempool_t *pool, struct html_content *hc, prev_tag->id == Tag_HTML) { url = rspamd_html_process_url_tag (pool, cur_tag, hc); - if (url != NULL && hc->base_url == NULL) { - /* We have a base tag available */ - hc->base_url = url; + if (url != NULL) { + if (hc->base_url == NULL) { + /* We have a base tag available */ + hc->base_url = url; + } + + cur_tag->extra = url; } } } |