Wietse Venema: > Scott Kitterman: > > The original PCRE library that Postfix uses is no longer maintained: > > > > https://pcre.org/ > > > > It's been replaced by PCRE2, which has a notably different API, so Postfix > > PCRE > > support would need porting. I've looked and it's beyond my limited skills. > > > > Is there any chance of getting this updated for Postfix 3.7? > > > > PCRE2 was released 6 years ago, so I would imagine support is reasonably > > widespread. > > Thanks for the reminder. Now is the time to start planning > the annual stable release.
I have an implementation based on PCRE2 that passes the existing Postfix tests for PCRE (which are ASCII based), without triggering complaints from Valgrind. I'll release this code first in Postfix 3.7. After that we can discuss if it makes sense to merge this change back into earlier stable Postfix versions. One visible difference is that the obscure 'X' pattern flag is no longer supported, because the underlying PCRE_EXTRA feature no longer exists in the PCRE2 library. Postfix ignores the flag and logs a warning. There may be other visible differences in the way that the PCRE2 library handles malformed UTF8, or content that happens to be using a different 8-bit encoding. I updated the PCRE auto-detection code in the makedefs script. It will try to use PCRE2, and if that is not installed, it will try to use PCRE. If we merge this back into earlier stable Postfix versions, then maybe PCRE should be the default, because breaking changes in a stable release are unwelcome. Wietse