Skip to content

Commit e4dc16c

Browse files
authored
Merge branch 'curl:master' into master
2 parents 2667700 + d57cfc1 commit e4dc16c

11 files changed

Lines changed: 255 additions & 106 deletions

File tree

.github/workflows/http3-linux.yml

Lines changed: 57 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,16 @@ env:
4545
OPENSSL_VERSION: 3.5.2
4646
# handled in renovate.json
4747
QUICTLS_VERSION: 3.3.0
48+
# renovate: datasource=github-tags depName=libressl/portable versioning=semver registryUrl=https://github.com
49+
LIBRESSL_VERSION: 4.1.0
4850
# renovate: datasource=github-tags depName=gnutls/gnutls versioning=semver registryUrl=https://github.com
4951
GNUTLS_VERSION: 3.8.10
5052
# renovate: datasource=github-tags depName=wolfSSL/wolfssl versioning=semver extractVersion=^v?(?<version>.+)-stable$ registryUrl=https://github.com
5153
WOLFSSL_VERSION: 5.8.2
5254
# renovate: datasource=github-tags depName=ngtcp2/nghttp3 versioning=semver registryUrl=https://github.com
5355
NGHTTP3_VERSION: 1.11.0
5456
# renovate: datasource=github-tags depName=ngtcp2/ngtcp2 versioning=semver registryUrl=https://github.com
55-
NGTCP2_VERSION: 1.14.0
57+
NGTCP2_VERSION: 1.15.0
5658
# renovate: datasource=github-tags depName=nghttp2/nghttp2 versioning=semver registryUrl=https://github.com
5759
NGHTTP2_VERSION: 1.66.0
5860
# renovate: datasource=github-tags depName=cloudflare/quiche versioning=semver registryUrl=https://github.com
@@ -73,6 +75,15 @@ jobs:
7375
path: ~/openssl/build
7476
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.OPENSSL_VERSION }}
7577

78+
- name: 'cache libressl'
79+
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
80+
id: cache-libressl
81+
env:
82+
cache-name: cache-libressl
83+
with:
84+
path: ~/libressl/build
85+
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.LIBRESSL_VERSION }}
86+
7687
- name: 'cache quictls'
7788
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
7889
id: cache-quictls-no-deprecated
@@ -116,7 +127,7 @@ jobs:
116127
cache-name: cache-ngtcp2
117128
with:
118129
path: ~/ngtcp2/build
119-
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.NGTCP2_VERSION }}-${{ env.OPENSSL_VERSION }}-${{ env.QUICTLS_VERSION }}-${{ env.GNUTLS_VERSION }}-${{ env.WOLFSSL_VERSION }}
130+
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.NGTCP2_VERSION }}-${{ env.OPENSSL_VERSION }}-${{ env.LIBRESSL_VERSION }}-${{ env.QUICTLS_VERSION }}-${{ env.GNUTLS_VERSION }}-${{ env.WOLFSSL_VERSION }}
120131

121132
- name: 'cache nghttp2'
122133
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
@@ -130,6 +141,7 @@ jobs:
130141
- id: settings
131142
if: >-
132143
${{ steps.cache-openssl-http3.outputs.cache-hit != 'true' ||
144+
steps.cache-libressl.outputs.cache-hit != 'true' ||
133145
steps.cache-quictls-no-deprecated.outputs.cache-hit != 'true' ||
134146
steps.cache-gnutls.outputs.cache-hit != 'true' ||
135147
steps.cache-wolfssl.outputs.cache-hit != 'true' ||
@@ -165,6 +177,17 @@ jobs:
165177
make
166178
make -j1 install_sw
167179
180+
- name: 'build libressl'
181+
if: ${{ steps.cache-libressl.outputs.cache-hit != 'true' }}
182+
run: |
183+
cd ~
184+
curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \
185+
--location "https://github.com/libressl/portable/releases/download/v${LIBRESSL_VERSION}/libressl-${LIBRESSL_VERSION}.tar.gz" | tar -xz
186+
cd "libressl-${LIBRESSL_VERSION}"
187+
cmake -B . -G Ninja -DLIBRESSL_APPS=OFF -DLIBRESSL_TESTS=OFF -DCMAKE_INSTALL_PREFIX=/home/runner/libressl/build
188+
cmake --build .
189+
cmake --install .
190+
168191
- name: 'build quictls'
169192
if: ${{ steps.cache-quictls-no-deprecated.outputs.cache-hit != 'true' }}
170193
run: |
@@ -215,14 +238,18 @@ jobs:
215238
216239
- name: 'build ngtcp2'
217240
if: ${{ steps.cache-ngtcp2.outputs.cache-hit != 'true' }}
218-
# building twice to get crypto libs for ossl and quictls installed
241+
# building 3 times to get crypto libs for ossl, libressl and quictls installed
219242
run: |
220243
cd ~
221244
git clone --quiet --depth=1 -b "v${NGTCP2_VERSION}" https://github.com/ngtcp2/ngtcp2
222245
cd ngtcp2
223246
autoreconf -fi
224247
./configure --disable-dependency-tracking --prefix="$PWD"/build \
225-
PKG_CONFIG_PATH=/home/runner/quictls/build/lib/pkgconfig --enable-lib-only --with-quictls
248+
PKG_CONFIG_PATH=/home/runner/libressl/build/lib/pkgconfig --enable-lib-only --with-openssl
249+
make install
250+
make clean
251+
./configure --disable-dependency-tracking --prefix="$PWD"/build \
252+
PKG_CONFIG_PATH=/home/runner/quictls/build/lib/pkgconfig --enable-lib-only --with-openssl
226253
make install
227254
make clean
228255
./configure --disable-dependency-tracking --prefix="$PWD"/build \
@@ -271,6 +298,21 @@ jobs:
271298
-DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON
272299
-DCMAKE_UNITY_BUILD=ON
273300
301+
- name: 'libressl'
302+
install_steps: skipall
303+
PKG_CONFIG_PATH: /home/runner/libressl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig
304+
configure: >-
305+
LDFLAGS=-Wl,-rpath,/home/runner/libressl/build/lib
306+
--with-ngtcp2 --disable-ntlm
307+
--with-openssl=/home/runner/libressl/build --enable-ssls-export
308+
--enable-unity
309+
310+
- name: 'libressl'
311+
PKG_CONFIG_PATH: /home/runner/libressl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig
312+
generate: >-
313+
-DOPENSSL_ROOT_DIR=/home/runner/libressl/build
314+
-DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON
315+
274316
- name: 'quictls'
275317
install_steps: skipall
276318
PKG_CONFIG_PATH: /home/runner/quictls/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig
@@ -376,6 +418,16 @@ jobs:
376418
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.OPENSSL_VERSION }}
377419
fail-on-cache-miss: true
378420

421+
- name: 'cache libressl'
422+
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
423+
id: cache-libressl
424+
env:
425+
cache-name: cache-libressl
426+
with:
427+
path: ~/libressl/build
428+
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.LIBRESSL_VERSION }}
429+
fail-on-cache-miss: true
430+
379431
- name: 'cache quictls'
380432
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
381433
id: cache-quictls-no-deprecated
@@ -425,7 +477,7 @@ jobs:
425477
cache-name: cache-ngtcp2
426478
with:
427479
path: ~/ngtcp2/build
428-
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.NGTCP2_VERSION }}-${{ env.OPENSSL_VERSION }}-${{ env.QUICTLS_VERSION }}-${{ env.GNUTLS_VERSION }}-${{ env.WOLFSSL_VERSION }}
480+
key: ${{ runner.os }}-http3-build-${{ env.cache-name }}-${{ env.NGTCP2_VERSION }}-${{ env.OPENSSL_VERSION }}-${{ env.LIBRESSL_VERSION }}-${{ env.QUICTLS_VERSION }}-${{ env.GNUTLS_VERSION }}-${{ env.WOLFSSL_VERSION }}
429481
fail-on-cache-miss: true
430482

431483
- name: 'cache nghttp2'

CMake/FindNGTCP2.cmake

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,20 @@
2626
# This module accepts optional COMPONENTS to control the crypto library (these are
2727
# mutually exclusive):
2828
#
29-
# - quictls: Use `libngtcp2_crypto_quictls`. (choose this for LibreSSL)
30-
# - BoringSSL: Use `libngtcp2_crypto_boringssl`. (choose this for AWS-LC)
31-
# - wolfSSL: Use `libngtcp2_crypto_wolfssl`.
29+
# - BoringSSL: Use `libngtcp2_crypto_boringssl`. (also for AWS-LC)
3230
# - GnuTLS: Use `libngtcp2_crypto_gnutls`.
31+
# - LibreSSL: Use `libngtcp2_crypto_libressl`. (requires ngtcp2 1.15.0+)
3332
# - ossl: Use `libngtcp2_crypto_ossl`.
33+
# - quictls: Use `libngtcp2_crypto_quictls`. (also for LibreSSL with ngtcp2 <1.15.0)
34+
# - wolfSSL: Use `libngtcp2_crypto_wolfssl`.
3435
#
3536
# Input variables:
3637
#
3738
# - `NGTCP2_INCLUDE_DIR`: The ngtcp2 include directory.
3839
# - `NGTCP2_LIBRARY`: Path to `ngtcp2` library.
3940
# - `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Path to `ngtcp2_crypto_boringssl` library.
4041
# - `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Path to `ngtcp2_crypto_gnutls` library.
42+
# - `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Path to `ngtcp2_crypto_libressl` library.
4143
# - `NGTCP2_CRYPTO_OSSL_LIBRARY`: Path to `ngtcp2_crypto_ossl` library.
4244
# - `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Path to `ngtcp2_crypto_quictls` library.
4345
# - `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Path to `ngtcp2_crypto_wolfssl` library.
@@ -55,7 +57,7 @@
5557
if(NGTCP2_FIND_COMPONENTS)
5658
set(_ngtcp2_crypto_backend "")
5759
foreach(_component IN LISTS NGTCP2_FIND_COMPONENTS)
58-
if(_component MATCHES "^(BoringSSL|GnuTLS|ossl|quictls|wolfSSL)")
60+
if(_component MATCHES "^(BoringSSL|GnuTLS|LibreSSL|ossl|quictls|wolfSSL)")
5961
if(_ngtcp2_crypto_backend)
6062
message(FATAL_ERROR "NGTCP2: Only one crypto library can be selected")
6163
endif()
@@ -74,11 +76,13 @@ if(_ngtcp2_crypto_backend)
7476
list(APPEND NGTCP2_PC_REQUIRES "lib${_crypto_library_lower}")
7577
endif()
7678

79+
set(_tried_pkgconfig FALSE)
7780
if(CURL_USE_PKGCONFIG AND
7881
NOT DEFINED NGTCP2_INCLUDE_DIR AND
7982
NOT DEFINED NGTCP2_LIBRARY)
8083
find_package(PkgConfig QUIET)
8184
pkg_check_modules(NGTCP2 ${NGTCP2_PC_REQUIRES})
85+
set(_tried_pkgconfig TRUE)
8286
endif()
8387

8488
if(NGTCP2_FOUND)
@@ -125,4 +129,9 @@ else()
125129
endif()
126130

127131
mark_as_advanced(NGTCP2_INCLUDE_DIR NGTCP2_LIBRARY NGTCP2_CRYPTO_LIBRARY)
132+
133+
if(NOT NGTCP2_FOUND AND _tried_pkgconfig) # reset variables to allow another round of detection
134+
unset(NGTCP2_INCLUDE_DIR CACHE)
135+
unset(NGTCP2_LIBRARY CACHE)
136+
endif()
128137
endif()

CMakeLists.txt

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1100,20 +1100,23 @@ if(USE_NGTCP2)
11001100
message(FATAL_ERROR "MultiSSL cannot be enabled with HTTP/3 and vice versa.")
11011101
elseif(USE_OPENSSL OR USE_WOLFSSL)
11021102
if(USE_WOLFSSL)
1103-
find_package(NGTCP2 REQUIRED "wolfSSL")
1103+
find_package(NGTCP2 REQUIRED COMPONENTS "wolfSSL")
11041104
elseif(HAVE_BORINGSSL OR HAVE_AWSLC)
1105-
find_package(NGTCP2 REQUIRED "BoringSSL")
1105+
find_package(NGTCP2 REQUIRED COMPONENTS "BoringSSL")
11061106
elseif(OPENSSL_VERSION VERSION_GREATER_EQUAL 3.5.0 AND NOT USE_OPENSSL_QUIC)
1107-
find_package(NGTCP2 REQUIRED "ossl")
1107+
find_package(NGTCP2 REQUIRED COMPONENTS "ossl")
11081108
if(NGTCP2_VERSION VERSION_LESS 1.12.0)
11091109
message(FATAL_ERROR "ngtcp2 1.12.0 or upper required for OpenSSL")
11101110
endif()
11111111
set(OPENSSL_QUIC_API2 1)
1112-
else()
1113-
find_package(NGTCP2 REQUIRED "quictls")
1114-
if(NOT HAVE_LIBRESSL)
1115-
set(_openssl "quictls")
1112+
elseif(HAVE_LIBRESSL)
1113+
find_package(NGTCP2 COMPONENTS "LibreSSL")
1114+
if(NOT NGTCP2_FOUND)
1115+
find_package(NGTCP2 REQUIRED COMPONENTS "quictls") # for ngtcp2 <1.15.0
11161116
endif()
1117+
else()
1118+
find_package(NGTCP2 REQUIRED COMPONENTS "quictls")
1119+
set(_openssl "quictls")
11171120
endif()
11181121
curl_openssl_check_quic()
11191122
elseif(USE_GNUTLS)

configure.ac

Lines changed: 73 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3241,7 +3241,66 @@ if test X"$want_tcp2" != Xno; then
32413241
fi
32423242
fi
32433243

3244-
if test "x$USE_NGTCP2" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a \
3244+
if test "x$USE_NGTCP2" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a "$HAVE_LIBRESSL" = "1"; then
3245+
dnl backup the pre-ngtcp2_crypto_libressl variables
3246+
CLEANLDFLAGS="$LDFLAGS"
3247+
CLEANLDFLAGSPC="$LDFLAGSPC"
3248+
CLEANCPPFLAGS="$CPPFLAGS"
3249+
CLEANLIBS="$LIBS"
3250+
3251+
CURL_CHECK_PKGCONFIG(libngtcp2_crypto_libressl, $want_tcp2_path)
3252+
3253+
if test "$PKGCONFIG" != "no"; then
3254+
LIB_NGTCP2_CRYPTO_LIBRESSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
3255+
$PKGCONFIG --libs-only-l libngtcp2_crypto_libressl`
3256+
AC_MSG_NOTICE([-l is $LIB_NGTCP2_CRYPTO_LIBRESSL])
3257+
3258+
CPP_NGTCP2_CRYPTO_LIBRESSL=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
3259+
$PKGCONFIG --cflags-only-I libngtcp2_crypto_libressl`
3260+
AC_MSG_NOTICE([-I is $CPP_NGTCP2_CRYPTO_LIBRESSL])
3261+
3262+
LD_NGTCP2_CRYPTO_LIBRESSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
3263+
$PKGCONFIG --libs-only-L libngtcp2_crypto_libressl`
3264+
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_LIBRESSL])
3265+
3266+
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_LIBRESSL"
3267+
LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_LIBRESSL"
3268+
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_LIBRESSL"
3269+
LIBS="$LIB_NGTCP2_CRYPTO_LIBRESSL $LIBS"
3270+
3271+
if test "x$cross_compiling" != "xyes"; then
3272+
DIR_NGTCP2_CRYPTO_LIBRESSL=`echo $LD_NGTCP2_CRYPTO_LIBRESSL | $SED -e 's/^-L//'`
3273+
fi
3274+
AC_CHECK_LIB(ngtcp2_crypto_libressl, ngtcp2_crypto_recv_client_initial_cb,
3275+
[
3276+
AC_CHECK_HEADERS(ngtcp2/ngtcp2_crypto.h,
3277+
USE_NGTCP2=1
3278+
CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_LIBRESSL"
3279+
export CURL_LIBRARY_PATH
3280+
AC_MSG_NOTICE([Added $DIR_NGTCP2_CRYPTO_LIBRESSL to CURL_LIBRARY_PATH])
3281+
LIBCURL_PC_REQUIRES_PRIVATE="$LIBCURL_PC_REQUIRES_PRIVATE libngtcp2_crypto_libressl"
3282+
)
3283+
],
3284+
dnl not found, revert back to clean variables
3285+
LDFLAGS=$CLEANLDFLAGS
3286+
LDFLAGSPC=$CLEANLDFLAGSPC
3287+
CPPFLAGS=$CLEANCPPFLAGS
3288+
LIBS=$CLEANLIBS
3289+
)
3290+
3291+
else
3292+
dnl no ngtcp2_crypto_libressl pkg-config found, deal with it
3293+
if test X"$want_tcp2" != Xdefault; then
3294+
dnl To avoid link errors, we do not allow --with-ngtcp2 without
3295+
dnl a pkgconfig file
3296+
AC_MSG_WARN([--with-ngtcp2 was specified but could not find ngtcp2_crypto_libressl pkg-config file.])
3297+
dnl Pretend to be quictls to fall back to using ngtcp2_crypto_quictls
3298+
fi
3299+
HAVE_LIBRESSL=0
3300+
fi
3301+
fi
3302+
3303+
if test "x$USE_NGTCP2" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a "$HAVE_LIBRESSL" != "1" -a \
32453304
"x$OPENSSL_IS_BORINGSSL" != "x1" -a "x$OPENSSL_QUIC_API2" != "x1"; then
32463305
dnl backup the pre-ngtcp2_crypto_quictls variables
32473306
CLEANLDFLAGS="$LDFLAGS"
@@ -3310,33 +3369,33 @@ if test "x$USE_NGTCP2" = "x1" -a "x$OPENSSL_ENABLED" = "x1" -a \
33103369
CURL_CHECK_PKGCONFIG(libngtcp2_crypto_ossl, $want_tcp2_path)
33113370

33123371
if test "$PKGCONFIG" != "no"; then
3313-
LIB_NGTCP2_CRYPTO_QUICTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path])
3372+
LIB_NGTCP2_CRYPTO_OSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
33143373
$PKGCONFIG --libs-only-l libngtcp2_crypto_ossl`
3315-
AC_MSG_NOTICE([-l is $LIB_NGTCP2_CRYPTO_QUICTLS])
3374+
AC_MSG_NOTICE([-l is $LIB_NGTCP2_CRYPTO_OSSL])
33163375

3317-
CPP_NGTCP2_CRYPTO_QUICTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
3376+
CPP_NGTCP2_CRYPTO_OSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
33183377
$PKGCONFIG --cflags-only-I libngtcp2_crypto_ossl`
3319-
AC_MSG_NOTICE([-I is $CPP_NGTCP2_CRYPTO_QUICTLS])
3378+
AC_MSG_NOTICE([-I is $CPP_NGTCP2_CRYPTO_OSSL])
33203379

3321-
LD_NGTCP2_CRYPTO_QUICTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path])
3380+
LD_NGTCP2_CRYPTO_OSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
33223381
$PKGCONFIG --libs-only-L libngtcp2_crypto_ossl`
3323-
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_QUICTLS])
3382+
AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_OSSL])
33243383

3325-
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_QUICTLS"
3326-
LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_QUICTLS"
3327-
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_QUICTLS"
3328-
LIBS="$LIB_NGTCP2_CRYPTO_QUICTLS $LIBS"
3384+
LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_OSSL"
3385+
LDFLAGSPC="$LDFLAGSPC $LD_NGTCP2_CRYPTO_OSSL"
3386+
CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_OSSL"
3387+
LIBS="$LIB_NGTCP2_CRYPTO_OSSL $LIBS"
33293388

33303389
if test "x$cross_compiling" != "xyes"; then
3331-
DIR_NGTCP2_CRYPTO_QUICTLS=`echo $LD_NGTCP2_CRYPTO_QUICTLS | $SED -e 's/^-L//'`
3390+
DIR_NGTCP2_CRYPTO_OSSL=`echo $LD_NGTCP2_CRYPTO_OSSL | $SED -e 's/^-L//'`
33323391
fi
33333392
AC_CHECK_LIB(ngtcp2_crypto_ossl, ngtcp2_crypto_recv_client_initial_cb,
33343393
[
33353394
AC_CHECK_HEADERS(ngtcp2/ngtcp2_crypto.h,
33363395
USE_NGTCP2=1
3337-
CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_QUICTLS"
3396+
CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_OSSL"
33383397
export CURL_LIBRARY_PATH
3339-
AC_MSG_NOTICE([Added $DIR_NGTCP2_CRYPTO_QUICTLS to CURL_LIBRARY_PATH])
3398+
AC_MSG_NOTICE([Added $DIR_NGTCP2_CRYPTO_OSSL to CURL_LIBRARY_PATH])
33403399
LIBCURL_PC_REQUIRES_PRIVATE="$LIBCURL_PC_REQUIRES_PRIVATE libngtcp2_crypto_ossl"
33413400
AC_DEFINE(OPENSSL_QUIC_API2, 1, [openssl with new QUIC API])
33423401
)

docs/INSTALL-CMAKE.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -434,10 +434,11 @@ Details via CMake
434434
- `NGHTTP3_LIBRARY`: Path to `nghttp3` library.
435435
- `NGTCP2_INCLUDE_DIR`: The ngtcp2 include directory.
436436
- `NGTCP2_LIBRARY`: Path to `ngtcp2` library.
437-
- `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Path to `ngtcp2_crypto_boringssl` library.
437+
- `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Path to `ngtcp2_crypto_boringssl` library. (also for AWS-LC)
438438
- `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Path to `ngtcp2_crypto_gnutls` library.
439+
- `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Path to `ngtcp2_crypto_libressl` library. (requires ngtcp2 1.15.0+)
439440
- `NGTCP2_CRYPTO_OSSL_LIBRARY`: Path to `ngtcp2_crypto_ossl` library.
440-
- `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Path to `ngtcp2_crypto_quictls` library.
441+
- `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Path to `ngtcp2_crypto_quictls` library. (also for LibreSSL with ngtcp2 <1.15.0)
441442
- `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Path to `ngtcp2_crypto_wolfssl` library.
442443
- `NETTLE_INCLUDE_DIR`: The nettle include directory.
443444
- `NETTLE_LIBRARY`: Path to `nettle` library.

0 commit comments

Comments
 (0)