75db32d journal: Move more pattern matching logic into pcre2-util

Authored and Committed by daandemeyer 2 years ago
    journal: Move more pattern matching logic into pcre2-util
    
    To avoid having "#if HAVE_PCRE2" all throughout the code, let's
    confine the pcre2 header specific stuff to pcre2-util.c. Instead of
    exposing all the individual symbols from pcre2, let's only expose
    three high level functions that do all we need:
    
    - pcre2_pattern_compile(): Compile the regex
    - pcre2_pattern_matches(): Check if the compiled regex matches a message
    - pcre2_pattern_free(): Free the compiled regex
    
    We expose the compiled pcre2 pattern (which is of type pcre2_code *) as
    a void pointer to avoid having to include pcre2.h in all code where we
    work with compiled pcre2 patterns. For readability, we typedef void
    to pcre2_pattern and use that as the type specifier for compiled pcre2
    patterns.
    
        
file modified
+10 -106
file modified
+116 -3
file modified
+18 -0