You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* configure.ac: --enable-dtls13 auto-enables --enable-dtls and TLS 1.3,
with a targeted error if either is explicitly --disabled, plus a
post-finalization sanity check that errors out if a later
prerequisite test forces ENABLED_TLS13 back to "no" while
ENABLED_DTLS13 is yes.
* src/internal.c, src/wolfio.c, wolfssl/wolfio.h: new WOLFSSL_DTLS_ONLY
compile-time flag elides the EmbedReceive / EmbedSend default
callbacks. The DTLS_MAJOR runtime check stays in SetSSL_CTX so a
TLS-method ctx in a DTLS-only build doesn't get datagram callbacks
by default, and WriteSEQ keeps its ssl->options.dtls branch. A
#error in settings.h refuses WOLFSSL_DTLS_ONLY without WOLFSSL_DTLS.
* wolfcrypt/src/aes.c: add HAVE_AES_DECRYPT to the inv_col_mul
definition gate to match its only caller; without it the function is
emitted dead under WOLFSSL_AES_DIRECT && NO_AES_DECRYPT and
-Werror=unused-function fails the build.
* .github/workflows/os-check.yml: matrix entry for a minimal DTLS 1.3
client-only build.
Copy file name to clipboardExpand all lines: configure.ac
+24-2Lines changed: 24 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -5736,9 +5736,26 @@ AC_ARG_ENABLE([dtls13],
5736
5736
)
5737
5737
if test "x$ENABLED_DTLS13" = "xyes"
5738
5738
then
5739
-
if test "x$ENABLED_DTLS" != "xyes" || test "x$ENABLED_TLS13" != "xyes"
5739
+
# DTLSv1.3 implies TLS 1.3 and DTLS; auto-enable, but don't
5740
+
# override explicit --disable.
5741
+
if test "x$enable_tls13" = "xno" || test "x$ENABLED_TLS13" = "xno"
5740
5742
then
5741
-
AC_MSG_ERROR([You need to enable both DTLS and TLSv1.3 to use DTLSv1.3])
5743
+
AC_MSG_ERROR([--enable-dtls13 requires TLS 1.3, but TLS 1.3 is disabled])
5744
+
fi
5745
+
if test "x$ENABLED_TLS13" != "xyes"
5746
+
then
5747
+
AC_MSG_NOTICE([DTLSv1.3 is enabled, enabling TLS 1.3])
5748
+
ENABLED_TLS13=yes
5749
+
fi
5750
+
if test "x$enable_dtls" = "xno"
5751
+
then
5752
+
AC_MSG_ERROR([--enable-dtls13 requires DTLS, but --disable-dtls was given])
5753
+
fi
5754
+
if test "x$ENABLED_DTLS" != "xyes"
5755
+
then
5756
+
AC_MSG_NOTICE([DTLSv1.3 is enabled, enabling DTLS])
5757
+
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_DTLS"
5758
+
ENABLED_DTLS=yes
5742
5759
fi
5743
5760
if test "x$ENABLED_SEND_HRR_COOKIE" = "xundefined"
5744
5761
then
@@ -8347,6 +8364,11 @@ then
8347
8364
# disable TLS 1.3
8348
8365
ENABLED_TLS13=no
8349
8366
fi
8367
+
# DTLSv1.3 cannot survive a downgrade of TLS 1.3.
8368
+
if test "x$ENABLED_DTLS13" = "xyes" && test "x$ENABLED_TLS13" = "xno"
8369
+
then
8370
+
AC_MSG_ERROR([--enable-dtls13 requires TLS 1.3, but TLS 1.3 was disabled by an earlier prerequisite check (no key-exchange or signature algorithms reachable). Enable at least one of ECC, RSA+DH, Curve25519+Ed25519, Curve448+Ed448, PSK, or ML-KEM.])
8371
+
fi
8350
8372
if test "$ENABLED_TLS13" = "yes" && (test "x$ENABLED_ECC" = "xyes" || \
0 commit comments