162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# TLS configuration
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ciconfig TLS
662306a36Sopenharmony_ci	tristate "Transport Layer Security support"
762306a36Sopenharmony_ci	depends on INET
862306a36Sopenharmony_ci	select CRYPTO
962306a36Sopenharmony_ci	select CRYPTO_AES
1062306a36Sopenharmony_ci	select CRYPTO_GCM
1162306a36Sopenharmony_ci	select STREAM_PARSER
1262306a36Sopenharmony_ci	select NET_SOCK_MSG
1362306a36Sopenharmony_ci	default n
1462306a36Sopenharmony_ci	help
1562306a36Sopenharmony_ci	Enable kernel support for TLS protocol. This allows symmetric
1662306a36Sopenharmony_ci	encryption handling of the TLS protocol to be done in-kernel.
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci	If unsure, say N.
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciconfig TLS_DEVICE
2162306a36Sopenharmony_ci	bool "Transport Layer Security HW offload"
2262306a36Sopenharmony_ci	depends on TLS
2362306a36Sopenharmony_ci	select SOCK_VALIDATE_XMIT
2462306a36Sopenharmony_ci	select SOCK_RX_QUEUE_MAPPING
2562306a36Sopenharmony_ci	default n
2662306a36Sopenharmony_ci	help
2762306a36Sopenharmony_ci	Enable kernel support for HW offload of the TLS protocol.
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci	If unsure, say N.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ciconfig TLS_TOE
3262306a36Sopenharmony_ci	bool "Transport Layer Security TCP stack bypass"
3362306a36Sopenharmony_ci	depends on TLS
3462306a36Sopenharmony_ci	default n
3562306a36Sopenharmony_ci	help
3662306a36Sopenharmony_ci	Enable kernel support for legacy HW offload of the TLS protocol,
3762306a36Sopenharmony_ci	which is incompatible with the Linux networking stack semantics.
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci	If unsure, say N.
40