config AFS_FS
	tristate "Andrew File System support (AFS)"
	depends on INET
	select AF_RXRPC
	select DNS_RESOLVER
	help
	  If you say Y here, you will get an experimental Andrew File System
	  driver. It currently only supports unsecured read-only AFS access.

	  See <file:Documentation/filesystems/afs.txt> for more information.

	  If unsure, say N.

config AFS_DEBUG
	bool "AFS dynamic debugging"
	depends on AFS_FS
	help
	  Say Y here to make runtime controllable debugging messages appear.

	  See <file:Documentation/filesystems/afs.txt> for more information.

	  If unsure, say N.

config AFS_FSCACHE
	bool "Provide AFS client caching support"
	depends on AFS_FS=m && FSCACHE || AFS_FS=y && FSCACHE=y
	help
	  Say Y here if you want AFS data to be cached locally on disk through
	  the generic filesystem cache manager

config AFS_DEBUG_CURSOR
	bool "AFS server cursor debugging"
	depends on AFS_FS
	help
	  Say Y here to cause the contents of a server cursor to be dumped to
	  the dmesg log if the server rotation algorithm fails to successfully
	  contact a server.

	  See <file:Documentation/filesystems/afs.txt> for more information.

	  If unsure, say N.
