1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 29098c24fSAlexey Dobriyanconfig SUNRPC 39098c24fSAlexey Dobriyan tristate 42813893fSIulia Manda depends on MULTIUSER 59098c24fSAlexey Dobriyan 69098c24fSAlexey Dobriyanconfig SUNRPC_GSS 79098c24fSAlexey Dobriyan tristate 8f783288fSChuck Lever select OID_REGISTRY 92813893fSIulia Manda depends on MULTIUSER 109098c24fSAlexey Dobriyan 119e00abc3STrond Myklebustconfig SUNRPC_BACKCHANNEL 129e00abc3STrond Myklebust bool 139e00abc3STrond Myklebust depends on SUNRPC 149e00abc3STrond Myklebust 15a564b8f0SMel Gormanconfig SUNRPC_SWAP 16a564b8f0SMel Gorman bool 17a564b8f0SMel Gorman depends on SUNRPC 18a564b8f0SMel Gorman 199098c24fSAlexey Dobriyanconfig RPCSEC_GSS_KRB5 20e3b2854fSTrond Myklebust tristate "Secure RPC: Kerberos V mechanism" 21df486a25STrond Myklebust depends on SUNRPC && CRYPTO 22df486a25STrond Myklebust default y 239098c24fSAlexey Dobriyan select SUNRPC_GSS 24dfe9a123SChuck Lever select CRYPTO_SKCIPHER 25dfe9a123SChuck Lever select CRYPTO_HASH 269098c24fSAlexey Dobriyan help 279098c24fSAlexey Dobriyan Choose Y here to enable Secure RPC using the Kerberos version 5 289098c24fSAlexey Dobriyan GSS-API mechanism (RFC 1964). 299098c24fSAlexey Dobriyan 309098c24fSAlexey Dobriyan Secure RPC calls with Kerberos require an auxiliary user-space 319098c24fSAlexey Dobriyan daemon which may be found in the Linux nfs-utils package 329098c24fSAlexey Dobriyan available from http://linux-nfs.org/. In addition, user-space 339098c24fSAlexey Dobriyan Kerberos support should be installed. 349098c24fSAlexey Dobriyan 35df486a25STrond Myklebust If unsure, say Y. 36e27d359eSTrond Myklebust 37dfe9a123SChuck Leverconfig RPCSEC_GSS_KRB5_SIMPLIFIED 38dfe9a123SChuck Lever bool 39fe9a2705SChuck Lever depends on RPCSEC_GSS_KRB5 40fe9a2705SChuck Lever 41dfe9a123SChuck Leverconfig RPCSEC_GSS_KRB5_CRYPTOSYSTEM 42dfe9a123SChuck Lever bool 43dfe9a123SChuck Lever depends on RPCSEC_GSS_KRB5 44dfe9a123SChuck Lever 45dfe9a123SChuck Leverconfig RPCSEC_GSS_KRB5_ENCTYPES_DES 46dfe9a123SChuck Lever bool "Enable Kerberos enctypes based on DES (deprecated)" 47dfe9a123SChuck Lever depends on RPCSEC_GSS_KRB5 48dfe9a123SChuck Lever depends on CRYPTO_CBC && CRYPTO_CTS && CRYPTO_ECB 49dfe9a123SChuck Lever depends on CRYPTO_HMAC && CRYPTO_MD5 && CRYPTO_SHA1 50dfe9a123SChuck Lever depends on CRYPTO_DES 51dfe9a123SChuck Lever default n 52dfe9a123SChuck Lever select RPCSEC_GSS_KRB5_SIMPLIFIED 53dfe9a123SChuck Lever help 54dfe9a123SChuck Lever Choose Y to enable the use of deprecated Kerberos 5 55dfe9a123SChuck Lever encryption types that utilize Data Encryption Standard 56dfe9a123SChuck Lever (DES) based ciphers. These include des-cbc-md5, 57dfe9a123SChuck Lever des-cbc-crc, and des-cbc-md4, which were deprecated by 58dfe9a123SChuck Lever RFC 6649, and des3-cbc-sha1, which was deprecated by RFC 59dfe9a123SChuck Lever 8429. 60dfe9a123SChuck Lever 61dfe9a123SChuck Lever These encryption types are known to be insecure, therefore 62dfe9a123SChuck Lever the default setting of this option is N. Support for these 63dfe9a123SChuck Lever encryption types is available only for compatibility with 64dfe9a123SChuck Lever legacy NFS client and server implementations. 65dfe9a123SChuck Lever 66dfe9a123SChuck Lever Removal of support is planned for a subsequent kernel 67dfe9a123SChuck Lever release. 68dfe9a123SChuck Lever 69dfe9a123SChuck Leverconfig RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1 70dfe9a123SChuck Lever bool "Enable Kerberos enctypes based on AES and SHA-1" 71dfe9a123SChuck Lever depends on RPCSEC_GSS_KRB5 72dfe9a123SChuck Lever depends on CRYPTO_CBC && CRYPTO_CTS 73dfe9a123SChuck Lever depends on CRYPTO_HMAC && CRYPTO_SHA1 74dfe9a123SChuck Lever depends on CRYPTO_AES 75dfe9a123SChuck Lever default y 76dfe9a123SChuck Lever select RPCSEC_GSS_KRB5_CRYPTOSYSTEM 77dfe9a123SChuck Lever help 78dfe9a123SChuck Lever Choose Y to enable the use of Kerberos 5 encryption types 79dfe9a123SChuck Lever that utilize Advanced Encryption Standard (AES) ciphers and 80dfe9a123SChuck Lever SHA-1 digests. These include aes128-cts-hmac-sha1-96 and 81dfe9a123SChuck Lever aes256-cts-hmac-sha1-96. 82fe9a2705SChuck Lever 83*a40cf753SChuck Leverconfig RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2 84*a40cf753SChuck Lever bool "Enable Kerberos enctypes based on AES and SHA-2" 85*a40cf753SChuck Lever depends on RPCSEC_GSS_KRB5 86*a40cf753SChuck Lever depends on CRYPTO_CBC && CRYPTO_CTS 87*a40cf753SChuck Lever depends on CRYPTO_HMAC && CRYPTO_SHA256 && CRYPTO_SHA512 88*a40cf753SChuck Lever depends on CRYPTO_AES 89*a40cf753SChuck Lever default n 90*a40cf753SChuck Lever select RPCSEC_GSS_KRB5_CRYPTOSYSTEM 91*a40cf753SChuck Lever help 92*a40cf753SChuck Lever Choose Y to enable the use of Kerberos 5 encryption types 93*a40cf753SChuck Lever that utilize Advanced Encryption Standard (AES) ciphers and 94*a40cf753SChuck Lever SHA-2 digests. These include aes128-cts-hmac-sha256-128 and 95*a40cf753SChuck Lever aes256-cts-hmac-sha384-192. 96*a40cf753SChuck Lever 97e27d359eSTrond Myklebustconfig SUNRPC_DEBUG 98e27d359eSTrond Myklebust bool "RPC: Enable dprintk debugging" 99e27d359eSTrond Myklebust depends on SUNRPC && SYSCTL 100b4b9d2ccSJeff Layton select DEBUG_FS 101e27d359eSTrond Myklebust help 102e27d359eSTrond Myklebust This option enables a sysctl-based debugging interface 103e27d359eSTrond Myklebust that is be used by the 'rpcdebug' utility to turn on or off 104e27d359eSTrond Myklebust logging of different aspects of the kernel RPC activity. 105e27d359eSTrond Myklebust 106e27d359eSTrond Myklebust Disabling this option will make your kernel slightly smaller, 107e27d359eSTrond Myklebust but makes troubleshooting NFS issues significantly harder. 108e27d359eSTrond Myklebust 109e27d359eSTrond Myklebust If unsure, say Y. 1102e8c12e1SJeff Layton 111ffe1f0dfSChuck Leverconfig SUNRPC_XPRT_RDMA 112ffe1f0dfSChuck Lever tristate "RPC-over-RDMA transport" 113533d1daeSArnd Bergmann depends on SUNRPC && INFINIBAND && INFINIBAND_ADDR_TRANS 1142e8c12e1SJeff Layton default SUNRPC && INFINIBAND 115f13193f5SChuck Lever select SG_POOL 1162e8c12e1SJeff Layton help 117ffe1f0dfSChuck Lever This option allows the NFS client and server to use RDMA 118ffe1f0dfSChuck Lever transports (InfiniBand, iWARP, or RoCE). 1192e8c12e1SJeff Layton 120ffe1f0dfSChuck Lever To compile this support as a module, choose M. The module 121ffe1f0dfSChuck Lever will be called rpcrdma.ko. 1222e8c12e1SJeff Layton 123ffe1f0dfSChuck Lever If unsure, or you know there is no RDMA capability on your 124ffe1f0dfSChuck Lever hardware platform, say N. 125