continue;
}
+#ifdef HAVE_PCRE2
+ if (pcre2_pattern_matches(b->url->pattern.tag_regex, tag))
+#else
/* and check if one of the tag patterns matches the tag, */
if (0 == regexec(b->url->pattern.tag_regex, tag, 0, NULL, 0))
+#endif
{
/* if it does, update the action bit map, */
if (merge_current_action(csp->action, b->action))
}
for (tag = csp->tags->first; NULL != tag; tag = tag->next)
{
+#ifdef HAVE_PCRE2
+ if (pcre2_pattern_matches(b->url->pattern.tag_regex, tag->str))
+#else
if (0 == regexec(b->url->pattern.tag_regex, tag->str, 0, NULL, 0))
+#endif
{
/*
* The pattern matches at least one tag, thus the action
return "client-header tagger";
case FT_SERVER_HEADER_TAGGER:
return "server-header tagger";
+ case FT_SUPPRESS_TAG:
+ return "suppress tag filter";
+ case FT_CLIENT_BODY_FILTER:
+ return "client body filter";
+ case FT_CLIENT_BODY_TAGGER:
+ return "client body tagger";
+ case FT_ADD_HEADER:
+ return "add-header action";
#ifdef FEATURE_EXTERNAL_FILTERS
case FT_EXTERNAL_CONTENT_FILTER:
return "external content filter";
#endif
- case FT_SUPPRESS_TAG:
- return "suppress tag filter";
case FT_INVALID_FILTER:
return "invalid filter type";
}
{ACTION_MULTI_CLIENT_HEADER_FILTER, FT_CLIENT_HEADER_FILTER},
{ACTION_MULTI_SERVER_HEADER_FILTER, FT_SERVER_HEADER_FILTER},
{ACTION_MULTI_CLIENT_HEADER_TAGGER, FT_CLIENT_HEADER_TAGGER},
- {ACTION_MULTI_SERVER_HEADER_TAGGER, FT_SERVER_HEADER_TAGGER}
+ {ACTION_MULTI_SERVER_HEADER_TAGGER, FT_SERVER_HEADER_TAGGER},
+ {ACTION_MULTI_CLIENT_BODY_FILTER, FT_CLIENT_BODY_FILTER}
};
int errors = 0;
int i;
*
* Function : load_one_actions_file
*
- * Description : Read and parse a action file and add to files
+ * Description : Read and parse an action file and add to files
* list.
*
* Parameters :
*
* Function : actions_to_text
*
- * Description : Converts a actionsfile entry from the internal
+ * Description : Converts an actionsfile entry from the internal
* structure into a text line. The output is split
* into one line for each action with line continuation.
*
*
* Function : actions_to_html
*
- * Description : Converts a actionsfile entry from numeric form
+ * Description : Converts an actionsfile entry from numeric form
* ("mask" and "add") to a <br>-separated HTML string
* in which each action is linked to its chapter in
* the user manual.
*
* Function : action_to_line_of_text
*
- * Description : Converts a action spec to a single text line
+ * Description : Converts an action spec to a single text line
* listing the enabled actions.
*
* Parameters :