Add a FAQ entry for tainted sockets
[privoxy.git] / urlmatch.c
index ed7399b..418a949 100644 (file)
@@ -1,4 +1,4 @@
-const char urlmatch_rcs[] = "$Id: urlmatch.c,v 1.84 2014/06/20 09:47:10 fabiankeil Exp $";
+const char urlmatch_rcs[] = "$Id: urlmatch.c,v 1.86 2015/12/27 12:47:17 fabiankeil Exp $";
 /*********************************************************************
  *
  * File        :  $Source: /cvsroot/ijbswa/current/urlmatch.c,v $
@@ -617,7 +617,6 @@ jb_err parse_http_request(const char *req, struct http_request *http)
  *          4  :  regex   = Where the compiled regex should be stored.
  *
  * Returns     :  JB_ERR_OK - Success
- *                JB_ERR_MEMORY - Out of memory
  *                JB_ERR_PARSE - Cannot parse regex
  *
  *********************************************************************/
@@ -656,12 +655,7 @@ static jb_err compile_pattern(const char *pattern, enum regex_anchoring anchorin
             "Invalid anchoring in compile_pattern %d", anchoring);
    }
 
-   *regex = zalloc(sizeof(**regex));
-   if (NULL == *regex)
-   {
-      free_pattern_spec(url);
-      return JB_ERR_MEMORY;
-   }
+   *regex = zalloc_or_die(sizeof(**regex));
 
    snprintf(rebuf, sizeof(rebuf), fmt, pattern);
 
@@ -1281,6 +1275,7 @@ static int port_matches(const int port, const char *port_list)
 static int host_matches(const struct http_request *http,
                         const struct pattern_spec *pattern)
 {
+   assert(http->host != NULL);
 #ifdef FEATURE_EXTENDED_HOST_PATTERNS
    return ((NULL == pattern->pattern.url_spec.host_regex)
       || (0 == regexec(pattern->pattern.url_spec.host_regex, http->host, 0, NULL, 0)));