fs/Kconfig: move affs out
[linux-2.6.git] / fs / Kconfig
1 #
2 # File system configuration
3 #
4
5 menu "File systems"
6
7 if BLOCK
8
9 source "fs/ext2/Kconfig"
10 source "fs/ext3/Kconfig"
11 source "fs/ext4/Kconfig"
12
13 config FS_XIP
14 # execute in place
15         bool
16         depends on EXT2_FS_XIP
17         default y
18
19 source "fs/jbd/Kconfig"
20 source "fs/jbd2/Kconfig"
21
22 config FS_MBCACHE
23 # Meta block cache for Extended Attributes (ext2/ext3/ext4)
24         tristate
25         default y if EXT2_FS=y && EXT2_FS_XATTR
26         default y if EXT3_FS=y && EXT3_FS_XATTR
27         default y if EXT4_FS=y && EXT4_FS_XATTR
28         default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
29
30 source "fs/reiserfs/Kconfig"
31 source "fs/jfs/Kconfig"
32
33 config FS_POSIX_ACL
34 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
35 #
36 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
37 #       Never use this symbol for ifdefs.
38 #
39         bool
40         default n
41
42 config FILE_LOCKING
43         bool "Enable POSIX file locking API" if EMBEDDED
44         default y
45         help
46           This option enables standard file locking support, required
47           for filesystems like NFS and for the flock() system
48           call. Disabling this option saves about 11k.
49
50 source "fs/xfs/Kconfig"
51 source "fs/gfs2/Kconfig"
52 source "fs/ocfs2/Kconfig"
53 source "fs/btrfs/Kconfig"
54
55 endif # BLOCK
56
57 source "fs/notify/Kconfig"
58
59 config QUOTA
60         bool "Quota support"
61         help
62           If you say Y here, you will be able to set per user limits for disk
63           usage (also called disk quotas). Currently, it works for the
64           ext2, ext3, and reiserfs file system. ext3 also supports journalled
65           quotas for which you don't need to run quotacheck(8) after an unclean
66           shutdown.
67           For further details, read the Quota mini-HOWTO, available from
68           <http://www.tldp.org/docs.html#howto>, or the documentation provided
69           with the quota tools. Probably the quota support is only useful for
70           multi user systems. If unsure, say N.
71
72 config QUOTA_NETLINK_INTERFACE
73         bool "Report quota messages through netlink interface"
74         depends on QUOTA && NET
75         help
76           If you say Y here, quota warnings (about exceeding softlimit, reaching
77           hardlimit, etc.) will be reported through netlink interface. If unsure,
78           say Y.
79
80 config PRINT_QUOTA_WARNING
81         bool "Print quota warnings to console (OBSOLETE)"
82         depends on QUOTA
83         default y
84         help
85           If you say Y here, quota warnings (about exceeding softlimit, reaching
86           hardlimit, etc.) will be printed to the process' controlling terminal.
87           Note that this behavior is currently deprecated and may go away in
88           future. Please use notification via netlink socket instead.
89
90 # Generic support for tree structured quota files. Seleted when needed.
91 config QUOTA_TREE
92          tristate
93
94 config QFMT_V1
95         tristate "Old quota format support"
96         depends on QUOTA
97         help
98           This quota format was (is) used by kernels earlier than 2.4.22. If
99           you have quota working and you don't want to convert to new quota
100           format say Y here.
101
102 config QFMT_V2
103         tristate "Quota format v2 support"
104         depends on QUOTA
105         select QUOTA_TREE
106         help
107           This quota format allows using quotas with 32-bit UIDs/GIDs. If you
108           need this functionality say Y here.
109
110 config QUOTACTL
111         bool
112         depends on XFS_QUOTA || QUOTA
113         default y
114
115 source "fs/autofs/Kconfig"
116 source "fs/autofs4/Kconfig"
117 source "fs/fuse/Kconfig"
118
119 config GENERIC_ACL
120         bool
121         select FS_POSIX_ACL
122
123 if BLOCK
124 menu "CD-ROM/DVD Filesystems"
125
126 source "fs/isofs/Kconfig"
127 source "fs/udf/Kconfig"
128
129 endmenu
130 endif # BLOCK
131
132 if BLOCK
133 menu "DOS/FAT/NT Filesystems"
134
135 source "fs/fat/Kconfig"
136 source "fs/ntfs/Kconfig"
137
138 endmenu
139 endif # BLOCK
140
141 menu "Pseudo filesystems"
142
143 source "fs/proc/Kconfig"
144 source "fs/sysfs/Kconfig"
145
146 config TMPFS
147         bool "Virtual memory file system support (former shm fs)"
148         help
149           Tmpfs is a file system which keeps all files in virtual memory.
150
151           Everything in tmpfs is temporary in the sense that no files will be
152           created on your hard drive. The files live in memory and swap
153           space. If you unmount a tmpfs instance, everything stored therein is
154           lost.
155
156           See <file:Documentation/filesystems/tmpfs.txt> for details.
157
158 config TMPFS_POSIX_ACL
159         bool "Tmpfs POSIX Access Control Lists"
160         depends on TMPFS
161         select GENERIC_ACL
162         help
163           POSIX Access Control Lists (ACLs) support permissions for users and
164           groups beyond the owner/group/world scheme.
165
166           To learn more about Access Control Lists, visit the POSIX ACLs for
167           Linux website <http://acl.bestbits.at/>.
168
169           If you don't know what Access Control Lists are, say N.
170
171 config HUGETLBFS
172         bool "HugeTLB file system support"
173         depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
174                    (S390 && 64BIT) || BROKEN
175         help
176           hugetlbfs is a filesystem backing for HugeTLB pages, based on
177           ramfs. For architectures that support it, say Y here and read
178           <file:Documentation/vm/hugetlbpage.txt> for details.
179
180           If unsure, say N.
181
182 config HUGETLB_PAGE
183         def_bool HUGETLBFS
184
185 source "fs/configfs/Kconfig"
186
187 endmenu
188
189 menuconfig MISC_FILESYSTEMS
190         bool "Miscellaneous filesystems"
191         default y
192         ---help---
193           Say Y here to get to see options for various miscellaneous
194           filesystems, such as filesystems that came from other
195           operating systems.
196
197           This option alone does not add any kernel code.
198
199           If you say N, all options in this submenu will be skipped and
200           disabled; if unsure, say Y here.
201
202 if MISC_FILESYSTEMS
203
204 source "fs/adfs/Kconfig"
205 source "fs/affs/Kconfig"
206
207 config ECRYPT_FS
208         tristate "eCrypt filesystem layer support (EXPERIMENTAL)"
209         depends on EXPERIMENTAL && KEYS && CRYPTO && NET
210         help
211           Encrypted filesystem that operates on the VFS layer.  See
212           <file:Documentation/filesystems/ecryptfs.txt> to learn more about
213           eCryptfs.  Userspace components are required and can be
214           obtained from <http://ecryptfs.sf.net>.
215
216           To compile this file system support as a module, choose M here: the
217           module will be called ecryptfs.
218
219 config HFS_FS
220         tristate "Apple Macintosh file system support (EXPERIMENTAL)"
221         depends on BLOCK && EXPERIMENTAL
222         select NLS
223         help
224           If you say Y here, you will be able to mount Macintosh-formatted
225           floppy disks and hard drive partitions with full read-write access.
226           Please read <file:Documentation/filesystems/hfs.txt> to learn about
227           the available mount options.
228
229           To compile this file system support as a module, choose M here: the
230           module will be called hfs.
231
232 config HFSPLUS_FS
233         tristate "Apple Extended HFS file system support"
234         depends on BLOCK
235         select NLS
236         select NLS_UTF8
237         help
238           If you say Y here, you will be able to mount extended format
239           Macintosh-formatted hard drive partitions with full read-write access.
240
241           This file system is often called HFS+ and was introduced with
242           MacOS 8. It includes all Mac specific filesystem data such as
243           data forks and creator codes, but it also has several UNIX
244           style features such as file ownership and permissions.
245
246 config BEFS_FS
247         tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
248         depends on BLOCK && EXPERIMENTAL
249         select NLS
250         help
251           The BeOS File System (BeFS) is the native file system of Be, Inc's
252           BeOS. Notable features include support for arbitrary attributes
253           on files and directories, and database-like indices on selected
254           attributes. (Also note that this driver doesn't make those features
255           available at this time). It is a 64 bit filesystem, so it supports
256           extremely large volumes and files.
257
258           If you use this filesystem, you should also say Y to at least one
259           of the NLS (native language support) options below.
260
261           If you don't know what this is about, say N.
262
263           To compile this as a module, choose M here: the module will be
264           called befs.
265
266 config BEFS_DEBUG
267         bool "Debug BeFS"
268         depends on BEFS_FS
269         help
270           If you say Y here, you can use the 'debug' mount option to enable
271           debugging output from the driver.
272
273 config BFS_FS
274         tristate "BFS file system support (EXPERIMENTAL)"
275         depends on BLOCK && EXPERIMENTAL
276         help
277           Boot File System (BFS) is a file system used under SCO UnixWare to
278           allow the bootloader access to the kernel image and other important
279           files during the boot process.  It is usually mounted under /stand
280           and corresponds to the slice marked as "STAND" in the UnixWare
281           partition.  You should say Y if you want to read or write the files
282           on your /stand slice from within Linux.  You then also need to say Y
283           to "UnixWare slices support", below.  More information about the BFS
284           file system is contained in the file
285           <file:Documentation/filesystems/bfs.txt>.
286
287           If you don't know what this is about, say N.
288
289           To compile this as a module, choose M here: the module will be called
290           bfs.  Note that the file system of your root partition (the one
291           containing the directory /) cannot be compiled as a module.
292
293
294
295 config EFS_FS
296         tristate "EFS file system support (read only) (EXPERIMENTAL)"
297         depends on BLOCK && EXPERIMENTAL
298         help
299           EFS is an older file system used for non-ISO9660 CD-ROMs and hard
300           disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
301           uses the XFS file system for hard disk partitions however).
302
303           This implementation only offers read-only access. If you don't know
304           what all this is about, it's safe to say N. For more information
305           about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
306
307           To compile the EFS file system support as a module, choose M here: the
308           module will be called efs.
309
310 source "fs/jffs2/Kconfig"
311 # UBIFS File system configuration
312 source "fs/ubifs/Kconfig"
313
314 config CRAMFS
315         tristate "Compressed ROM file system support (cramfs)"
316         depends on BLOCK
317         select ZLIB_INFLATE
318         help
319           Saying Y here includes support for CramFs (Compressed ROM File
320           System).  CramFs is designed to be a simple, small, and compressed
321           file system for ROM based embedded systems.  CramFs is read-only,
322           limited to 256MB file systems (with 16MB files), and doesn't support
323           16/32 bits uid/gid, hard links and timestamps.
324
325           See <file:Documentation/filesystems/cramfs.txt> and
326           <file:fs/cramfs/README> for further information.
327
328           To compile this as a module, choose M here: the module will be called
329           cramfs.  Note that the root file system (the one containing the
330           directory /) cannot be compiled as a module.
331
332           If unsure, say N.
333
334 config SQUASHFS
335         tristate "SquashFS 4.0 - Squashed file system support"
336         depends on BLOCK
337         select ZLIB_INFLATE
338         help
339           Saying Y here includes support for SquashFS 4.0 (a Compressed
340           Read-Only File System).  Squashfs is a highly compressed read-only
341           filesystem for Linux.  It uses zlib compression to compress both
342           files, inodes and directories.  Inodes in the system are very small
343           and all blocks are packed to minimise data overhead. Block sizes
344           greater than 4K are supported up to a maximum of 1 Mbytes (default
345           block size 128K).  SquashFS 4.0 supports 64 bit filesystems and files
346           (larger than 4GB), full uid/gid information, hard links and
347           timestamps.  
348
349           Squashfs is intended for general read-only filesystem use, for
350           archival use (i.e. in cases where a .tar.gz file may be used), and in
351           embedded systems where low overhead is needed.  Further information
352           and tools are available from http://squashfs.sourceforge.net.
353
354           If you want to compile this as a module ( = code which can be
355           inserted in and removed from the running kernel whenever you want),
356           say M here and read <file:Documentation/modules.txt>.  The module
357           will be called squashfs.  Note that the root file system (the one
358           containing the directory /) cannot be compiled as a module.
359
360           If unsure, say N.
361
362 config SQUASHFS_EMBEDDED
363
364         bool "Additional option for memory-constrained systems" 
365         depends on SQUASHFS
366         default n
367         help
368           Saying Y here allows you to specify cache size.
369
370           If unsure, say N.
371
372 config SQUASHFS_FRAGMENT_CACHE_SIZE
373         int "Number of fragments cached" if SQUASHFS_EMBEDDED
374         depends on SQUASHFS
375         default "3"
376         help
377           By default SquashFS caches the last 3 fragments read from
378           the filesystem.  Increasing this amount may mean SquashFS
379           has to re-read fragments less often from disk, at the expense
380           of extra system memory.  Decreasing this amount will mean
381           SquashFS uses less memory at the expense of extra reads from disk.
382
383           Note there must be at least one cached fragment.  Anything
384           much more than three will probably not make much difference.
385
386 config VXFS_FS
387         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
388         depends on BLOCK
389         help
390           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
391           file system format.  VERITAS VxFS(TM) is the standard file system
392           of SCO UnixWare (and possibly others) and optionally available
393           for Sunsoft Solaris, HP-UX and many other operating systems.
394           Currently only readonly access is supported.
395
396           NOTE: the file system type as used by mount(1), mount(2) and
397           fstab(5) is 'vxfs' as it describes the file system format, not
398           the actual driver.
399
400           To compile this as a module, choose M here: the module will be
401           called freevxfs.  If unsure, say N.
402
403 config MINIX_FS
404         tristate "Minix file system support"
405         depends on BLOCK
406         help
407           Minix is a simple operating system used in many classes about OS's.
408           The minix file system (method to organize files on a hard disk
409           partition or a floppy disk) was the original file system for Linux,
410           but has been superseded by the second extended file system ext2fs.
411           You don't want to use the minix file system on your hard disk
412           because of certain built-in restrictions, but it is sometimes found
413           on older Linux floppy disks.  This option will enlarge your kernel
414           by about 28 KB. If unsure, say N.
415
416           To compile this file system support as a module, choose M here: the
417           module will be called minix.  Note that the file system of your root
418           partition (the one containing the directory /) cannot be compiled as
419           a module.
420
421 config OMFS_FS
422         tristate "SonicBlue Optimized MPEG File System support"
423         depends on BLOCK
424         select CRC_ITU_T
425         help
426           This is the proprietary file system used by the Rio Karma music
427           player and ReplayTV DVR.  Despite the name, this filesystem is not
428           more efficient than a standard FS for MPEG files, in fact likely
429           the opposite is true.  Say Y if you have either of these devices
430           and wish to mount its disk.
431
432           To compile this file system support as a module, choose M here: the
433           module will be called omfs.  If unsure, say N.
434
435 config HPFS_FS
436         tristate "OS/2 HPFS file system support"
437         depends on BLOCK
438         help
439           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
440           is the file system used for organizing files on OS/2 hard disk
441           partitions. Say Y if you want to be able to read files from and
442           write files to an OS/2 HPFS partition on your hard drive. OS/2
443           floppies however are in regular MSDOS format, so you don't need this
444           option in order to be able to read them. Read
445           <file:Documentation/filesystems/hpfs.txt>.
446
447           To compile this file system support as a module, choose M here: the
448           module will be called hpfs.  If unsure, say N.
449
450
451 config QNX4FS_FS
452         tristate "QNX4 file system support (read only)"
453         depends on BLOCK
454         help
455           This is the file system used by the real-time operating systems
456           QNX 4 and QNX 6 (the latter is also called QNX RTP).
457           Further information is available at <http://www.qnx.com/>.
458           Say Y if you intend to mount QNX hard disks or floppies.
459           Unless you say Y to "QNX4FS read-write support" below, you will
460           only be able to read these file systems.
461
462           To compile this file system support as a module, choose M here: the
463           module will be called qnx4.
464
465           If you don't know whether you need it, then you don't need it:
466           answer N.
467
468 config QNX4FS_RW
469         bool "QNX4FS write support (DANGEROUS)"
470         depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
471         help
472           Say Y if you want to test write support for QNX4 file systems.
473
474           It's currently broken, so for now:
475           answer N.
476
477 config ROMFS_FS
478         tristate "ROM file system support"
479         depends on BLOCK
480         ---help---
481           This is a very small read-only file system mainly intended for
482           initial ram disks of installation disks, but it could be used for
483           other read-only media as well.  Read
484           <file:Documentation/filesystems/romfs.txt> for details.
485
486           To compile this file system support as a module, choose M here: the
487           module will be called romfs.  Note that the file system of your
488           root partition (the one containing the directory /) cannot be a
489           module.
490
491           If you don't know whether you need it, then you don't need it:
492           answer N.
493
494
495 config SYSV_FS
496         tristate "System V/Xenix/V7/Coherent file system support"
497         depends on BLOCK
498         help
499           SCO, Xenix and Coherent are commercial Unix systems for Intel
500           machines, and Version 7 was used on the DEC PDP-11. Saying Y
501           here would allow you to read from their floppies and hard disk
502           partitions.
503
504           If you have floppies or hard disk partitions like that, it is likely
505           that they contain binaries from those other Unix systems; in order
506           to run these binaries, you will want to install linux-abi which is
507           a set of kernel modules that lets you run SCO, Xenix, Wyse,
508           UnixWare, Dell Unix and System V programs under Linux.  It is
509           available via FTP (user: ftp) from
510           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
511           NOTE: that will work only for binaries from Intel-based systems;
512           PDP ones will have to wait until somebody ports Linux to -11 ;-)
513
514           If you only intend to mount files from some other Unix over the
515           network using NFS, you don't need the System V file system support
516           (but you need NFS file system support obviously).
517
518           Note that this option is generally not needed for floppies, since a
519           good portable way to transport files and directories between unixes
520           (and even other operating systems) is given by the tar program ("man
521           tar" or preferably "info tar").  Note also that this option has
522           nothing whatsoever to do with the option "System V IPC". Read about
523           the System V file system in
524           <file:Documentation/filesystems/sysv-fs.txt>.
525           Saying Y here will enlarge your kernel by about 27 KB.
526
527           To compile this as a module, choose M here: the module will be called
528           sysv.
529
530           If you haven't heard about all of this before, it's safe to say N.
531
532
533 config UFS_FS
534         tristate "UFS file system support (read only)"
535         depends on BLOCK
536         help
537           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
538           OpenBSD and NeXTstep) use a file system called UFS. Some System V
539           Unixes can create and mount hard disk partitions and diskettes using
540           this file system as well. Saying Y here will allow you to read from
541           these partitions; if you also want to write to them, say Y to the
542           experimental "UFS file system write support", below. Please read the
543           file <file:Documentation/filesystems/ufs.txt> for more information.
544
545           The recently released UFS2 variant (used in FreeBSD 5.x) is
546           READ-ONLY supported.
547
548           Note that this option is generally not needed for floppies, since a
549           good portable way to transport files and directories between unixes
550           (and even other operating systems) is given by the tar program ("man
551           tar" or preferably "info tar").
552
553           When accessing NeXTstep files, you may need to convert them from the
554           NeXT character set to the Latin1 character set; use the program
555           recode ("info recode") for this purpose.
556
557           To compile the UFS file system support as a module, choose M here: the
558           module will be called ufs.
559
560           If you haven't heard about all of this before, it's safe to say N.
561
562 config UFS_FS_WRITE
563         bool "UFS file system write support (DANGEROUS)"
564         depends on UFS_FS && EXPERIMENTAL
565         help
566           Say Y here if you want to try writing to UFS partitions. This is
567           experimental, so you should back up your UFS partitions beforehand.
568
569 config UFS_DEBUG
570         bool "UFS debugging"
571         depends on UFS_FS
572         help
573           If you are experiencing any problems with the UFS filesystem, say
574           Y here.  This will result in _many_ additional debugging messages to be
575           written to the system log.
576
577 endif # MISC_FILESYSTEMS
578
579 menuconfig NETWORK_FILESYSTEMS
580         bool "Network File Systems"
581         default y
582         depends on NET
583         ---help---
584           Say Y here to get to see options for network filesystems and
585           filesystem-related networking code, such as NFS daemon and
586           RPCSEC security modules.
587
588           This option alone does not add any kernel code.
589
590           If you say N, all options in this submenu will be skipped and
591           disabled; if unsure, say Y here.
592
593 if NETWORK_FILESYSTEMS
594
595 config NFS_FS
596         tristate "NFS client support"
597         depends on INET
598         select LOCKD
599         select SUNRPC
600         select NFS_ACL_SUPPORT if NFS_V3_ACL
601         help
602           Choose Y here if you want to access files residing on other
603           computers using Sun's Network File System protocol.  To compile
604           this file system support as a module, choose M here: the module
605           will be called nfs.
606
607           To mount file systems exported by NFS servers, you also need to
608           install the user space mount.nfs command which can be found in
609           the Linux nfs-utils package, available from http://linux-nfs.org/.
610           Information about using the mount command is available in the
611           mount(8) man page.  More detail about the Linux NFS client
612           implementation is available via the nfs(5) man page.
613
614           Below you can choose which versions of the NFS protocol are
615           available in the kernel to mount NFS servers.  Support for NFS
616           version 2 (RFC 1094) is always available when NFS_FS is selected.
617
618           To configure a system which mounts its root file system via NFS
619           at boot time, say Y here, select "Kernel level IP
620           autoconfiguration" in the NETWORK menu, and select "Root file
621           system on NFS" below.  You cannot compile this file system as a
622           module in this case.
623
624           If unsure, say N.
625
626 config NFS_V3
627         bool "NFS client support for NFS version 3"
628         depends on NFS_FS
629         help
630           This option enables support for version 3 of the NFS protocol
631           (RFC 1813) in the kernel's NFS client.
632
633           If unsure, say Y.
634
635 config NFS_V3_ACL
636         bool "NFS client support for the NFSv3 ACL protocol extension"
637         depends on NFS_V3
638         help
639           Some NFS servers support an auxiliary NFSv3 ACL protocol that
640           Sun added to Solaris but never became an official part of the
641           NFS version 3 protocol.  This protocol extension allows
642           applications on NFS clients to manipulate POSIX Access Control
643           Lists on files residing on NFS servers.  NFS servers enforce
644           ACLs on local files whether this protocol is available or not.
645
646           Choose Y here if your NFS server supports the Solaris NFSv3 ACL
647           protocol extension and you want your NFS client to allow
648           applications to access and modify ACLs on files on the server.
649
650           Most NFS servers don't support the Solaris NFSv3 ACL protocol
651           extension.  You can choose N here or specify the "noacl" mount
652           option to prevent your NFS client from trying to use the NFSv3
653           ACL protocol.
654
655           If unsure, say N.
656
657 config NFS_V4
658         bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
659         depends on NFS_FS && EXPERIMENTAL
660         select RPCSEC_GSS_KRB5
661         help
662           This option enables support for version 4 of the NFS protocol
663           (RFC 3530) in the kernel's NFS client.
664
665           To mount NFS servers using NFSv4, you also need to install user
666           space programs which can be found in the Linux nfs-utils package,
667           available from http://linux-nfs.org/.
668
669           If unsure, say N.
670
671 config ROOT_NFS
672         bool "Root file system on NFS"
673         depends on NFS_FS=y && IP_PNP
674         help
675           If you want your system to mount its root file system via NFS,
676           choose Y here.  This is common practice for managing systems
677           without local permanent storage.  For details, read
678           <file:Documentation/filesystems/nfsroot.txt>.
679
680           Most people say N here.
681
682 config NFSD
683         tristate "NFS server support"
684         depends on INET
685         select LOCKD
686         select SUNRPC
687         select EXPORTFS
688         select NFS_ACL_SUPPORT if NFSD_V2_ACL
689         help
690           Choose Y here if you want to allow other computers to access
691           files residing on this system using Sun's Network File System
692           protocol.  To compile the NFS server support as a module,
693           choose M here: the module will be called nfsd.
694
695           You may choose to use a user-space NFS server instead, in which
696           case you can choose N here.
697
698           To export local file systems using NFS, you also need to install
699           user space programs which can be found in the Linux nfs-utils
700           package, available from http://linux-nfs.org/.  More detail about
701           the Linux NFS server implementation is available via the
702           exports(5) man page.
703
704           Below you can choose which versions of the NFS protocol are
705           available to clients mounting the NFS server on this system.
706           Support for NFS version 2 (RFC 1094) is always available when
707           CONFIG_NFSD is selected.
708
709           If unsure, say N.
710
711 config NFSD_V2_ACL
712         bool
713         depends on NFSD
714
715 config NFSD_V3
716         bool "NFS server support for NFS version 3"
717         depends on NFSD
718         help
719           This option enables support in your system's NFS server for
720           version 3 of the NFS protocol (RFC 1813).
721
722           If unsure, say Y.
723
724 config NFSD_V3_ACL
725         bool "NFS server support for the NFSv3 ACL protocol extension"
726         depends on NFSD_V3
727         select NFSD_V2_ACL
728         help
729           Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
730           never became an official part of the NFS version 3 protocol.
731           This protocol extension allows applications on NFS clients to
732           manipulate POSIX Access Control Lists on files residing on NFS
733           servers.  NFS servers enforce POSIX ACLs on local files whether
734           this protocol is available or not.
735
736           This option enables support in your system's NFS server for the
737           NFSv3 ACL protocol extension allowing NFS clients to manipulate
738           POSIX ACLs on files exported by your system's NFS server.  NFS
739           clients which support the Solaris NFSv3 ACL protocol can then
740           access and modify ACLs on your NFS server.
741
742           To store ACLs on your NFS server, you also need to enable ACL-
743           related CONFIG options for your local file systems of choice.
744
745           If unsure, say N.
746
747 config NFSD_V4
748         bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
749         depends on NFSD && PROC_FS && EXPERIMENTAL
750         select NFSD_V3
751         select FS_POSIX_ACL
752         select RPCSEC_GSS_KRB5
753         help
754           This option enables support in your system's NFS server for
755           version 4 of the NFS protocol (RFC 3530).
756
757           To export files using NFSv4, you need to install additional user
758           space programs which can be found in the Linux nfs-utils package,
759           available from http://linux-nfs.org/.
760
761           If unsure, say N.
762
763 config LOCKD
764         tristate
765
766 config LOCKD_V4
767         bool
768         depends on NFSD_V3 || NFS_V3
769         default y
770
771 config EXPORTFS
772         tristate
773
774 config NFS_ACL_SUPPORT
775         tristate
776         select FS_POSIX_ACL
777
778 config NFS_COMMON
779         bool
780         depends on NFSD || NFS_FS
781         default y
782
783 config SUNRPC
784         tristate
785
786 config SUNRPC_GSS
787         tristate
788
789 config SUNRPC_XPRT_RDMA
790         tristate
791         depends on SUNRPC && INFINIBAND && EXPERIMENTAL
792         default SUNRPC && INFINIBAND
793         help
794           This option enables an RPC client transport capability that
795           allows the NFS client to mount servers via an RDMA-enabled
796           transport.
797
798           To compile RPC client RDMA transport support as a module,
799           choose M here: the module will be called xprtrdma.
800
801           If unsure, say N.
802
803 config SUNRPC_REGISTER_V4
804         bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
805         depends on SUNRPC && EXPERIMENTAL
806         default n
807         help
808           Sun added support for registering RPC services at an IPv6
809           address by creating two new versions of the rpcbind protocol
810           (RFC 1833).
811
812           This option enables support in the kernel RPC server for
813           registering kernel RPC services via version 4 of the rpcbind
814           protocol.  If you enable this option, you must run a portmapper
815           daemon that supports rpcbind protocol version 4.
816
817           Serving NFS over IPv6 from knfsd (the kernel's NFS server)
818           requires that you enable this option and use a portmapper that
819           supports rpcbind version 4.
820
821           If unsure, say N to get traditional behavior (register kernel
822           RPC services using only rpcbind version 2).  Distributions
823           using the legacy Linux portmapper daemon must say N here.
824
825 config RPCSEC_GSS_KRB5
826         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
827         depends on SUNRPC && EXPERIMENTAL
828         select SUNRPC_GSS
829         select CRYPTO
830         select CRYPTO_MD5
831         select CRYPTO_DES
832         select CRYPTO_CBC
833         help
834           Choose Y here to enable Secure RPC using the Kerberos version 5
835           GSS-API mechanism (RFC 1964).
836
837           Secure RPC calls with Kerberos require an auxiliary user-space
838           daemon which may be found in the Linux nfs-utils package
839           available from http://linux-nfs.org/.  In addition, user-space
840           Kerberos support should be installed.
841
842           If unsure, say N.
843
844 config RPCSEC_GSS_SPKM3
845         tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
846         depends on SUNRPC && EXPERIMENTAL
847         select SUNRPC_GSS
848         select CRYPTO
849         select CRYPTO_MD5
850         select CRYPTO_DES
851         select CRYPTO_CAST5
852         select CRYPTO_CBC
853         help
854           Choose Y here to enable Secure RPC using the SPKM3 public key
855           GSS-API mechansim (RFC 2025).
856
857           Secure RPC calls with SPKM3 require an auxiliary userspace
858           daemon which may be found in the Linux nfs-utils package
859           available from http://linux-nfs.org/.
860
861           If unsure, say N.
862
863 config SMB_FS
864         tristate "SMB file system support (OBSOLETE, please use CIFS)"
865         depends on INET
866         select NLS
867         help
868           SMB (Server Message Block) is the protocol Windows for Workgroups
869           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
870           files and printers over local networks.  Saying Y here allows you to
871           mount their file systems (often called "shares" in this context) and
872           access them just like any other Unix directory.  Currently, this
873           works only if the Windows machines use TCP/IP as the underlying
874           transport protocol, and not NetBEUI.  For details, read
875           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
876           available from <http://www.tldp.org/docs.html#howto>.
877
878           Note: if you just want your box to act as an SMB *server* and make
879           files and printing services available to Windows clients (which need
880           to have a TCP/IP stack), you don't need to say Y here; you can use
881           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
882           for that.
883
884           General information about how to connect Linux, Windows machines and
885           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
886
887           To compile the SMB support as a module, choose M here:
888           the module will be called smbfs.  Most people say N, however.
889
890 config SMB_NLS_DEFAULT
891         bool "Use a default NLS"
892         depends on SMB_FS
893         help
894           Enabling this will make smbfs use nls translations by default. You
895           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
896           settings and you need to give the default nls for the SMB server as
897           CONFIG_SMB_NLS_REMOTE.
898
899           The nls settings can be changed at mount time, if your smbmount
900           supports that, using the codepage and iocharset parameters.
901
902           smbmount from samba 2.2.0 or later supports this.
903
904 config SMB_NLS_REMOTE
905         string "Default Remote NLS Option"
906         depends on SMB_NLS_DEFAULT
907         default "cp437"
908         help
909           This setting allows you to specify a default value for which
910           codepage the server uses. If this field is left blank no
911           translations will be done by default. The local codepage/charset
912           default to CONFIG_NLS_DEFAULT.
913
914           The nls settings can be changed at mount time, if your smbmount
915           supports that, using the codepage and iocharset parameters.
916
917           smbmount from samba 2.2.0 or later supports this.
918
919 source "fs/cifs/Kconfig"
920
921 config NCP_FS
922         tristate "NCP file system support (to mount NetWare volumes)"
923         depends on IPX!=n || INET
924         help
925           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
926           used by Novell NetWare clients to talk to file servers.  It is to
927           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
928           to mount NetWare file server volumes and to access them just like
929           any other Unix directory.  For details, please read the file
930           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
931           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
932
933           You do not have to say Y here if you want your Linux box to act as a
934           file *server* for Novell NetWare clients.
935
936           General information about how to connect Linux, Windows machines and
937           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
938
939           To compile this as a module, choose M here: the module will be called
940           ncpfs.  Say N unless you are connected to a Novell network.
941
942 source "fs/ncpfs/Kconfig"
943
944 config CODA_FS
945         tristate "Coda file system support (advanced network fs)"
946         depends on INET
947         help
948           Coda is an advanced network file system, similar to NFS in that it
949           enables you to mount file systems of a remote server and access them
950           with regular Unix commands as if they were sitting on your hard
951           disk.  Coda has several advantages over NFS: support for
952           disconnected operation (e.g. for laptops), read/write server
953           replication, security model for authentication and encryption,
954           persistent client caches and write back caching.
955
956           If you say Y here, your Linux box will be able to act as a Coda
957           *client*.  You will need user level code as well, both for the
958           client and server.  Servers are currently user level, i.e. they need
959           no kernel support.  Please read
960           <file:Documentation/filesystems/coda.txt> and check out the Coda
961           home page <http://www.coda.cs.cmu.edu/>.
962
963           To compile the coda client support as a module, choose M here: the
964           module will be called coda.
965
966 config AFS_FS
967         tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
968         depends on INET && EXPERIMENTAL
969         select AF_RXRPC
970         help
971           If you say Y here, you will get an experimental Andrew File System
972           driver. It currently only supports unsecured read-only AFS access.
973
974           See <file:Documentation/filesystems/afs.txt> for more information.
975
976           If unsure, say N.
977
978 config AFS_DEBUG
979         bool "AFS dynamic debugging"
980         depends on AFS_FS
981         help
982           Say Y here to make runtime controllable debugging messages appear.
983
984           See <file:Documentation/filesystems/afs.txt> for more information.
985
986           If unsure, say N.
987
988 config 9P_FS
989         tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
990         depends on INET && NET_9P && EXPERIMENTAL
991         help
992           If you say Y here, you will get experimental support for
993           Plan 9 resource sharing via the 9P2000 protocol.
994
995           See <http://v9fs.sf.net> for more information.
996
997           If unsure, say N.
998
999 endif # NETWORK_FILESYSTEMS
1000
1001 if BLOCK
1002 menu "Partition Types"
1003
1004 source "fs/partitions/Kconfig"
1005
1006 endmenu
1007 endif
1008
1009 source "fs/nls/Kconfig"
1010 source "fs/dlm/Kconfig"
1011
1012 endmenu