return NULL;
}
+static void
+rspamd_process_html_url (rspamd_mempool_t *pool, struct rspamd_url *url,
+ GHashTable *target)
+{
+ gint nstate = 0;
+ struct rspamd_url *query_url;
+ gchar *url_str;
+ gint rc;
+
+ if (url->querylen > 0) {
+
+ if (rspamd_url_find (pool, url->query, url->querylen, NULL, NULL,
+ &url_str, TRUE, &nstate)) {
+ query_url = rspamd_mempool_alloc0 (pool,
+ sizeof (struct rspamd_url));
+
+ rc = rspamd_url_parse (query_url,
+ url_str,
+ strlen (url_str),
+ pool);
+
+ if (rc == URI_ERRNO_OK &&
+ url->hostlen > 0) {
+ msg_debug_pool ("found url %s in query of url"
+ " %*s", url_str, url->querylen, url->query);
+
+ if (!g_hash_table_lookup (target,
+ query_url)) {
+ g_hash_table_insert (target,
+ query_url,
+ query_url);
+ }
+ }
+ }
+ }
+}
+
static void
rspamd_html_process_img_tag (rspamd_mempool_t *pool, struct html_tag *tag,
struct html_content *hc)
else {
url = NULL;
}
+
+ if (turl == NULL && url != NULL) {
+ rspamd_process_html_url (pool,
+ url,
+ target_tbl);
+ }
}
href_offset = dest->len;