config SMB_SERVER
	tristate "SMB3 server support (EXPERIMENTAL)"
	depends on INET
	depends on MULTIUSER
	depends on FILE_LOCKING
	select NLS
	select NLS_UTF8
	select CRYPTO
	select CRYPTO_MD4
	select CRYPTO_MD5
	select CRYPTO_HMAC
	select CRYPTO_ECB
	select CRYPTO_LIB_DES
	select CRYPTO_SHA256
	select CRYPTO_CMAC
	select CRYPTO_SHA512
	select CRYPTO_AEAD2
	select CRYPTO_CCM
	select CRYPTO_GCM
	select ASN1
	select OID_REGISTRY
	default n
	help
	  Choose Y here if you want to allow SMB3 compliant clients
	  to access files residing on this system using SMB3 protocol.
	  To compile the SMB3 server support as a module,
	  choose M here: the module will be called ksmbd.

	  You may choose to use a samba server instead, in which
	  case you can choose N here.

	  You also need to install user space programs which can be found
	  in ksmbd-tools, available from
	  https://github.com/cifsd-team/ksmbd-tools.
	  More detail about how to run the ksmbd kernel server is
	  available via README file
	  (https://github.com/cifsd-team/ksmbd-tools/blob/master/README).

	  ksmbd kernel server includes support for auto-negotiation,
	  Secure negotiate, Pre-authentication integrity, oplock/lease,
	  compound requests, multi-credit, packet signing, RDMA(smbdirect),
	  smb3 encryption, copy-offload, secure per-user session
	  establishment via NTLM or NTLMv2.

config SMB_SERVER_SMBDIRECT
	bool "Support for SMB Direct protocol"
	depends on SMB_SERVER=m && INFINIBAND && INFINIBAND_ADDR_TRANS || SMB_SERVER=y && INFINIBAND=y && INFINIBAND_ADDR_TRANS=y
	select SG_POOL
	default n

	help
	  Enables SMB Direct support for SMB 3.0, 3.02 and 3.1.1.

	  SMB Direct allows transferring SMB packets over RDMA. If unsure,
	  say N.

config SMB_SERVER_CHECK_CAP_NET_ADMIN
	bool "Enable check network administration capability"
	depends on SMB_SERVER
	default y

	help
	  Prevent unprivileged processes to start the ksmbd kernel server.

config SMB_SERVER_KERBEROS5
	bool "Support for Kerberos 5"
	depends on SMB_SERVER
	default n
