Skip to content

Commit

Permalink
Issue #1353: Implement support for using the PCRE2 library.
Browse files Browse the repository at this point in the history
  • Loading branch information
Castaglia committed Nov 21, 2021
1 parent c3da86b commit e63cf01
Show file tree
Hide file tree
Showing 12 changed files with 698 additions and 56 deletions.
20 changes: 10 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,8 @@ jobs:
# for mod_sql_sqlite
apk add sqlite sqlite-dev
# NOTE: Alpine does not support mod_wrap, due to lack of tcpwrappers
# for PCRE support
apk add pcre-dev
# for PCRE2 support
apk add pcre2-dev
# for ftptop
apk add ncurses-dev
# for zlib support
Expand Down Expand Up @@ -154,8 +154,8 @@ jobs:
yum install -y sqlite-devel
# for mod_wrap
yum install -y libnsl2-devel https://pkgs.dyn.su/el8/extras/x86_64/tcp_wrappers-libs-7.6-77.el8.x86_64.rpm https://pkgs.dyn.su/el8/extras/x86_64/tcp_wrappers-devel-7.6-77.el8.x86_64.rpm
# for PCRE support
yum install -y pcre-devel
# for PCRE2 support
yum install -y pcre2-devel
# for ftptop
yum install -y ncurses-devel
# for zlib support
Expand Down Expand Up @@ -220,8 +220,8 @@ jobs:
apt-get install -y libsqlite3-dev sqlite3
# for mod_wrap
apt-get install -y libwrap0-dev
# for PCRE support
apt-get install -y libpcre3-dev
# for PCRE2 support
apt-get install -y libpcre2-dev libpcre2-posix0
# for ftptop
apt-get install -y ncurses-dev
# for zlib support
Expand Down Expand Up @@ -261,7 +261,7 @@ jobs:
env:
CC: ${{ matrix.compiler }}
run: |
./configure LIBS="-lodbc -lm -lsubunit -lrt -pthread" --enable-devel=coverage:fortify --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre --enable-redis --enable-tests --with-modules="${{ env.PROFTPD_MODULES }}"
./configure LIBS="-lodbc -lm -lsubunit -lrt -pthread" --enable-devel=coverage:fortify --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre2 --enable-redis --enable-tests --with-modules="${{ env.PROFTPD_MODULES }}"
make
- name: Run unit tests
Expand All @@ -277,7 +277,7 @@ jobs:
CC: ${{ matrix.compiler }}
run: |
make clean
./configure LIBS="-lodbc" --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre --enable-redis --with-modules="${{ env.PROFTPD_MODULES }}"
./configure LIBS="-lodbc" --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre2 --enable-redis --with-modules="${{ env.PROFTPD_MODULES }}"
make
make install
Expand Down Expand Up @@ -313,7 +313,7 @@ jobs:
CC: ${{ matrix.compiler }}
run: |
make clean
./configure LIBS="-lodbc -lm -lsubunit -lrt -pthread" --enable-devel=fortify --enable-ctrls --enable-dso --enable-facl --enable-memcache --enable-nls --enable-pcre --enable-tests --with-shared="${{ env.PROFTPD_MODULES }}"
./configure LIBS="-lodbc -lm -lsubunit -lrt -pthread" --enable-devel=fortify --enable-ctrls --enable-dso --enable-facl --enable-memcache --enable-nls --enable-pcre2 --enable-tests --with-shared="${{ env.PROFTPD_MODULES }}"
make
- name: Install with shared modules
Expand Down Expand Up @@ -349,7 +349,7 @@ jobs:
if: ${{ matrix.compiler == 'clang' && matrix.container == 'ubuntu:18.04' }}
run: |
make clean
./configure LIBS="-lm -lsubunit -lrt -pthread" --enable-devel --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre --enable-redis --enable-tests
./configure LIBS="-lm -lsubunit -lrt -pthread" --enable-devel --enable-ctrls --enable-facl --enable-memcache --enable-nls --enable-pcre2 --enable-redis --enable-tests
make
export ASAN_SYMBOLIZER_PATH=$(readlink -f $(which llvm-symbolizer-10))
make check-api
Expand Down
1 change: 1 addition & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
- Issue 1330 - Implement OpenSSH "Encrypt-Then-MAC" (ETM) algorithm extensions.
- Issue 1346 - Implement AllowForeignAddress class matching for passive data
transfers.
- Issue 1353 - Implement support for PCRE2.

1.3.8rc2 - Released 29-Aug-2021
--------------------------------
Expand Down
5 changes: 5 additions & 0 deletions RELEASE_NOTES
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ ChangeLog files.
+ Support SSH hostkey rotation via OpenSSH "hostkeys-00@openssh.com" and
"hostkeys-prove-00@openssh.com" extensions.

+ Support use of PCRE2, rather than PCRE, via the `--enable-pcre2` configure
option.

+ New Directives

Expand All @@ -23,6 +25,9 @@ ChangeLog files.

+ Changed Directives

RegexOptions
Engine PCRE2 (Issue #1353)

SFTPCiphers
"aes128-gcm@openssh.com", "aes256-gcm@openssh.com" (Bug #3759)

Expand Down
9 changes: 9 additions & 0 deletions config.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,12 @@
/* Define if you have the PCRE pcre_free_study function. */
#undef HAVE_PCRE_PCRE_FREE_STUDY

/* Define if you have the PCRE2 pcre2_jit_compile function. */
#undef HAVE_PCRE2_PCRE2_JIT_COMPILE

/* Define if you have the PCRE2 pcre2_regcomp function. */
#undef HAVE_PCRE2_PCRE2_REGCOMP

/* Define if you have the perm_copy_fd function. */
#undef HAVE_PERM_COPY_FD

Expand Down Expand Up @@ -1169,6 +1175,9 @@
/* Define if using PCRE support. */
#undef PR_USE_PCRE

/* Define if using PCRE2 support. */
#undef PR_USE_PCRE2

/* Define if sendfile support, if available, should be used. */
#undef PR_USE_SENDFILE

Expand Down

0 comments on commit e63cf01

Please sign in to comment.