fs/smb/client/Kconfig
Source file repositories/reference/linux-study-clean/fs/smb/client/Kconfig
File Facts
- System
- Linux kernel
- Corpus path
fs/smb/client/Kconfig- Extension
[no extension]- Size
- 8468 bytes
- Lines
- 233
- Domain
- Core OS
- Bucket
- VFS And Filesystem Core
- Inferred role
- Core OS: build/configuration rule
- Status
- atlas-only
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
# SPDX-License-Identifier: GPL-2.0-only
config CIFS
tristate "SMB3 and CIFS support (advanced network filesystem)"
depends on INET
select NLS
select NLS_UCS2_UTILS
select CRYPTO
select CRYPTO_AEAD2
select CRYPTO_CCM
select CRYPTO_GCM
select CRYPTO_AES
select CRYPTO_LIB_AES_CBC_MACS
select CRYPTO_LIB_ARC4
select CRYPTO_LIB_MD5
select CRYPTO_LIB_SHA256
select CRYPTO_LIB_SHA512
select KEYS
select DNS_RESOLVER
select ASN1
select OID_REGISTRY
select NETFS_SUPPORT
help
This is the client VFS module for the SMB3 family of network file
protocols (including the most recent, most secure dialect SMB3.1.1).
This module also includes support for earlier dialects such as
SMB2.1, SMB2 and even the old Common Internet File System (CIFS)
protocol. CIFS was the successor to the original network filesystem
protocol, Server Message Block (SMB ie SMB1), the native file sharing
mechanism for most early PC operating systems.
The SMB3.1.1 protocol is supported by most modern operating systems
and NAS appliances (e.g. Samba, Windows 11, Windows Server 2022,
MacOS) and even in the cloud (e.g. Microsoft Azure) and also by the
Linux kernel server, ksmbd. Support for the older CIFS protocol was
included in Windows NT4, 2000 and XP (and later). Use of dialects
older than SMB2.1 is often discouraged on public networks.
This module also provides limited support for OS/2 and Windows ME
and similar very old servers.
This module provides an advanced network file system client for
mounting to SMB3 (and CIFS) compliant servers. It includes support
for DFS (hierarchical name space), secure per-user session
establishment via Kerberos or NTLMv2, RDMA (smbdirect), advanced
security features, per-share encryption, packet-signing, snapshots,
directory leases, safe distributed caching (leases), multichannel,
Unicode and other internationalization improvements.
In general, the default dialects, SMB3 and later, enable better
performance, security and features, than would be possible with CIFS.
If you need to mount to Samba, Azure, ksmbd, Macs or Windows from this
machine, say Y.
config CIFS_STATS2
bool "Extended statistics"
depends on CIFS
default y
help
Enabling this option will allow more detailed statistics on SMB
request timing to be displayed in /proc/fs/cifs/DebugData and also
allow optional logging of slow responses to dmesg (depending on the
value of /proc/fs/cifs/cifsFYI). See Documentation/admin-guide/cifs/usage.rst
for more details. These additional statistics may have a minor effect
on performance and memory utilization.
If unsure, say Y.
config CIFS_ALLOW_INSECURE_LEGACY
bool "Support legacy servers which use less secure dialects"
depends on CIFS
Annotation
- Atlas domain: Core OS / VFS And Filesystem Core.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.