[[PATCH] libselinux: support building on older PCRE libs] On 13.10.22 (Tue 10:46) Joe MacDonald wrote: > Versions of PCRE prior to 8.20 did not have pcre_free_study(). In its > absence, use pcre_free() instead. > > Signed-off-by: Joe MacDonald <joe@xxxxxxxxxxxx> > --- > > This will hit all uses of pcre_free_study() provided label_file.h gets > included somewhere along the way. Also makes it cleaner to back out when > ancient versions of libpcre fall off the support map and it keeps the code > from being filled with all-caps. > > libselinux/src/label_file.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/libselinux/src/label_file.h b/libselinux/src/label_file.h > index bf0c9e2..7d48832 100644 > --- a/libselinux/src/label_file.h > +++ b/libselinux/src/label_file.h > @@ -8,6 +8,11 @@ > #define SELINUX_MAGIC_COMPILED_FCONTEXT 0xf97cff8a > #define SELINUX_COMPILED_FCONTEXT_MAX_VERS 1 > > +/* Prior to verison 8.20, libpcre did not have pcre_free_study() */ > +#if (PCRE_MAJOR < 8 || PCRE_MINOR < 20) > +#define pcre_free_study pcre_free > +#endif > + > /* A file security context specification. */ > struct spec { > struct selabel_lookup_rec lr; /* holds contexts for lookup result */ Hmm, actually, no. That's the same logic I had in the previous #if ... #endif block but it's wrong for cases where PCRE_MAJOR > 8. Sorry about that. -- -Joe MacDonald. :wq
Attachment:
signature.asc
Description: Digital signature