macros which call BIO_ctrl().
BIO_get_ktls_send() returns 1 if the BIO is using the Kernel TLS data-path for
-sending. Otherwise, it returns zero. It also returns negative values for failure.
+sending. Otherwise, it returns zero.
BIO_get_ktls_recv() returns 1 if the BIO is using the Kernel TLS data-path for
-receiving. Otherwise, it returns zero. It also returns negative values for failure.
+receiving. Otherwise, it returns zero.
BIO_get_conn_mode() returns the BIO connection mode. BIO_set_conn_mode() sets
the BIO connection mode.
=head1 HISTORY
-The BIO_get_ktls_send() and BIO_get_ktls_recv() functions were added in
-OpenSSL 3.0.
+The BIO_get_ktls_send() and BIO_get_ktls_recv() macros were added in
+OpenSSL 3.0. They were modified to never return -1 in OpenSSL 3.0.4.
The BIO_get_conn_mode(), BIO_set_conn_mode() and BIO_set_tfo() functions
were added in OpenSSL 3.1.
# ifndef OPENSSL_NO_KTLS
# define BIO_get_ktls_send(b) \
- BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL)
+ (BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
# define BIO_get_ktls_recv(b) \
- BIO_ctrl(b, BIO_CTRL_GET_KTLS_RECV, 0, NULL)
+ (BIO_ctrl(b, BIO_CTRL_GET_KTLS_RECV, 0, NULL) > 0)
# else
# define BIO_get_ktls_send(b) (0)
# define BIO_get_ktls_recv(b) (0)