Kconfig 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. config SUNRPC
  3. tristate
  4. depends on MULTIUSER
  5. config SUNRPC_GSS
  6. tristate
  7. select OID_REGISTRY
  8. depends on MULTIUSER
  9. config SUNRPC_BACKCHANNEL
  10. bool
  11. depends on SUNRPC
  12. config SUNRPC_SWAP
  13. bool
  14. depends on SUNRPC
  15. config RPCSEC_GSS_KRB5
  16. tristate "Secure RPC: Kerberos V mechanism"
  17. depends on SUNRPC && CRYPTO
  18. default y
  19. select SUNRPC_GSS
  20. select CRYPTO_SKCIPHER
  21. select CRYPTO_HASH
  22. help
  23. Choose Y here to enable Secure RPC using the Kerberos version 5
  24. GSS-API mechanism (RFC 1964).
  25. Secure RPC calls with Kerberos require an auxiliary user-space
  26. daemon which may be found in the Linux nfs-utils package
  27. available from http://linux-nfs.org/. In addition, user-space
  28. Kerberos support should be installed.
  29. If unsure, say Y.
  30. config RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA1
  31. bool "Enable Kerberos enctypes based on AES and SHA-1"
  32. depends on RPCSEC_GSS_KRB5
  33. depends on CRYPTO_CBC && CRYPTO_CTS
  34. depends on CRYPTO_HMAC && CRYPTO_SHA1
  35. depends on CRYPTO_AES
  36. default y
  37. help
  38. Choose Y to enable the use of Kerberos 5 encryption types
  39. that utilize Advanced Encryption Standard (AES) ciphers and
  40. SHA-1 digests. These include aes128-cts-hmac-sha1-96 and
  41. aes256-cts-hmac-sha1-96.
  42. config RPCSEC_GSS_KRB5_ENCTYPES_CAMELLIA
  43. bool "Enable Kerberos encryption types based on Camellia and CMAC"
  44. depends on RPCSEC_GSS_KRB5
  45. depends on CRYPTO_CBC && CRYPTO_CTS && CRYPTO_CAMELLIA
  46. depends on CRYPTO_CMAC
  47. default n
  48. help
  49. Choose Y to enable the use of Kerberos 5 encryption types
  50. that utilize Camellia ciphers (RFC 3713) and CMAC digests
  51. (NIST Special Publication 800-38B). These include
  52. camellia128-cts-cmac and camellia256-cts-cmac.
  53. config RPCSEC_GSS_KRB5_ENCTYPES_AES_SHA2
  54. bool "Enable Kerberos enctypes based on AES and SHA-2"
  55. depends on RPCSEC_GSS_KRB5
  56. depends on CRYPTO_CBC && CRYPTO_CTS
  57. depends on CRYPTO_HMAC && CRYPTO_SHA256 && CRYPTO_SHA512
  58. depends on CRYPTO_AES
  59. default n
  60. help
  61. Choose Y to enable the use of Kerberos 5 encryption types
  62. that utilize Advanced Encryption Standard (AES) ciphers and
  63. SHA-2 digests. These include aes128-cts-hmac-sha256-128 and
  64. aes256-cts-hmac-sha384-192.
  65. config RPCSEC_GSS_KRB5_KUNIT_TEST
  66. tristate "KUnit tests for RPCSEC GSS Kerberos" if !KUNIT_ALL_TESTS
  67. depends on RPCSEC_GSS_KRB5 && KUNIT
  68. default KUNIT_ALL_TESTS
  69. help
  70. This builds the KUnit tests for RPCSEC GSS Kerberos 5.
  71. KUnit tests run during boot and output the results to the debug
  72. log in TAP format (https://testanything.org/). Only useful for
  73. kernel devs running KUnit test harness and are not for inclusion
  74. into a production build.
  75. For more information on KUnit and unit tests in general, refer
  76. to the KUnit documentation in Documentation/dev-tools/kunit/.
  77. config SUNRPC_DEBUG
  78. bool "RPC: Enable dprintk debugging"
  79. depends on SUNRPC && SYSCTL
  80. select DEBUG_FS
  81. help
  82. This option enables a sysctl-based debugging interface
  83. that is be used by the 'rpcdebug' utility to turn on or off
  84. logging of different aspects of the kernel RPC activity.
  85. Disabling this option will make your kernel slightly smaller,
  86. but makes troubleshooting NFS issues significantly harder.
  87. If unsure, say Y.
  88. config SUNRPC_DEBUG_TRACE
  89. bool "RPC: Send dfprintk() output to the trace buffer"
  90. depends on SUNRPC_DEBUG && TRACING
  91. default n
  92. help
  93. dprintk() output can be voluminous, which can overwhelm the
  94. kernel's logging facility as it must be sent to the console.
  95. This option causes dprintk() output to go to the trace buffer
  96. instead of the kernel log.
  97. This will cause warnings about trace_printk() being used to be
  98. logged at boot time, so say N unless you are debugging a problem
  99. with sunrpc-based clients or services.
  100. config SUNRPC_XPRT_RDMA
  101. tristate "RPC-over-RDMA transport"
  102. depends on SUNRPC && INFINIBAND && INFINIBAND_ADDR_TRANS
  103. default SUNRPC && INFINIBAND
  104. select SG_POOL
  105. help
  106. This option allows the NFS client and server to use RDMA
  107. transports (InfiniBand, iWARP, or RoCE).
  108. To compile this support as a module, choose M. The module
  109. will be called rpcrdma.ko.
  110. If unsure, or you know there is no RDMA capability on your
  111. hardware platform, say N.