Files
markbase/vendor/smb2/Cargo.toml
Warren 7eb528d35f
Some checks failed
Test / build (push) Has been cancelled
Test / test (push) Has been cancelled
SMB Server Phase 2: VFS backend build fix + integration test
- Add VfsFile: Send supertrait for Mutex compatibility
- Fix SmbServerCommand: struct → Subcommand enum with Start variant
- Fix tracing_subscriber::init() → try_init() to avoid panic when
  logger already initialized
- Fix CLI subcommand name: smb-server → smb-start (flatten naming)
- Add #[command(name = "smb-start")] for CLI disambiguation
- Fix unused variable warnings (smb_fs.rs, smb_server_backend.rs)
- Remove unused VfsFile imports (webdav.rs, scp_handler.rs)
- Integration test: Docker smbclient verified (list, upload, read)
2026-06-20 19:42:29 +08:00

82 lines
2.1 KiB
TOML

[package]
name = "smb2"
version = "0.11.3"
edition = "2021"
rust-version = "1.85"
license = "MIT OR Apache-2.0"
description = "Pure-Rust SMB2/3 client library with pipelined I/O"
repository = "https://github.com/vdavid/smb2"
keywords = ["smb", "smb2", "smb3", "cifs", "network"]
categories = ["network-programming", "filesystem"]
readme = "README.md"
documentation = "https://docs.rs/smb2"
exclude = [
".github/",
"AGENTS.md",
"docs/",
"justfile",
"deny.toml",
"clippy.toml",
"rustfmt.toml",
"related-repos/",
]
[package.metadata.docs.rs]
all-features = true
[dependencies]
# Logging facade -- application picks the backend (env_logger, tracing, etc.)
log = "0.4"
# Async runtime agnostic
async-trait = "0.1"
# `FuturesUnordered` for pipelined concurrent `execute` calls.
futures-util = { version = "0.3", default-features = false, features = ["std", "async-await"] }
# Error handling
thiserror = "2"
# Enum conversion derives
num_enum = "0.7"
# Async runtime -- transport layer needs net, io-util, time, sync
tokio = { version = "1", features = ["net", "io-util", "time", "sync", "rt"] }
# Crypto -- signing, encryption, key derivation
hmac = "0.13"
sha2 = "0.11"
aes = "0.9"
aes-gcm = "=0.11.0-rc.4"
ccm = "=0.6.0-rc.3"
cmac = "=0.8.0-rc.5"
digest = "0.11"
# NTLM authentication (MS-NLMP)
md-5 = "0.11"
md4 = "0.11"
# Kerberos key derivation (AES string-to-key)
pbkdf2 = "0.13"
sha1 = "0.11"
# Cryptographically secure random
getrandom = "0.4"
# Compression
lz4_flex = "0.13"
# Optional: `Serialize` derives on diagnostics types. Off by default.
serde = { version = "1", optional = true, features = ["derive"] }
[features]
testing = [] # Enables smb2::testing module for Docker-based test servers
fuzzing = [] # Exposes parser entry points for `fuzz/` targets; not for applications
serde = ["dep:serde"] # `Serialize` impls on `Diagnostics` types and the protocol enums they embed.
[dev-dependencies]
tokio = { version = "1", features = ["rt-multi-thread", "macros", "time", "net", "io-util"] }
proptest = "1"
env_logger = "0.11"
serde_json = "1" # JSON round-trip tests for the `serde` feature