dart_smb2 library
Fast, stable SMB2/3 client for Dart — powered by libsmb2.
Two layers of abstraction:
- Smb2Client — synchronous FFI client for use inside your own isolates.
- Smb2Pool — async multi-worker pool with auto-reconnect and scope-based file helpers (Smb2Pool.withFile, Smb2Pool.streamFile, Smb2Pool.downloadToFile). The recommended entry point.
Classes
- Smb2Client
- SMB2/3 client powered by libsmb2 via Dart FFI.
- Smb2DirEntry
- A directory entry returned by Smb2Client.listDirectory.
- Smb2File
- A file opened inside Smb2Pool.withFile.
- Smb2Handle
- Opaque handle to an open file on a Smb2Client.
- Smb2Pool
- A pool of SMB2 worker isolates for non-blocking parallel operations.
- Smb2PoolHandle
- Opaque handle to an open file on a specific worker.
- Information about an SMB share returned by Smb2Client.listShares.
- SMB share type constants.
- Smb2Stat
- File or directory metadata returned by Smb2Client.stat and Smb2Client.listDirectory.
- Smb2StatVfs
- Filesystem statistics returned by Smb2Client.statvfs.
Enums
- Smb2ErrorType
- Semantic error categories mapped from POSIX errno values.
- Smb2FileType
- SMB2 file type.
- Smb2Version
- SMB protocol version to negotiate during connection.
Exceptions / Errors
- Smb2Exception
- Exception thrown when an SMB2 operation fails.