CBFS Connect
The leading SDK for creating and managing virtual filesystems from almost any type of storage.
DownloadHighlights include a new NFS server component and new features in the CBFS component [learn more].
Create and Manage Virtual Filesystems
CBFS Connect allows you to present any data source as a fully featured filesystem - be it local or remote files, dynamically-generated content, cloud storage, database records, or anything in-between. Without writing a single line of driver code, you will be able to expose your data as just another drive with folders and files, making it easy for users to view and interact with, and giving other applications the ability to access and manipulate it via standard file APIs.
Kernel programming is hard, and as Apple states in its macOS documentation pages, it should be avoided if at all possible. CBFS Connect provides a safer and more flexible approach to kernel development, allowing for improved security and stability while still offering the benefits of kernel-level access to the file system. With over 20 years of experience and trusted by hundreds of leading technology companies, we understand the kernel so you don't have to.
CBFS Connect acts as an intermediary between the file system and user mode code. Instead of executing code directly in the kernel, Connect proxies filesystem actions into callback events. You implement handlers for these events, which execute in a separate process.
By isolating the user mode code from the kernel, CBFS Connect reduces the risk of security vulnerabilities that could be exploited by attackers. In addition, because the user mode code is not executing code directly in the kernel, it is less likely to cause system crashes or other stability issues.
A virtual filesystem created with CBFS Connect has many advantages over filesystem-like and partial feature implementations. With capabilities similar to NTFS, virtual filesystems enable file locking and partial file updates. Easily enable transparent encryption and file access auditing by implementing the read/write events. Large files are available in blocks for efficient copy/move, or for streaming without having to download an entire file first. CBFS Connect is low-overhead, so applications using it can remain always connected or started/stopped like removable storage.
NEW: Local NFS Component
The new NFS component implements a local cross-platform NFS 4.1 server, providing a simple way to mount a drive and serve files locally without a kernel mode driver. The NFS component is available for all supported platforms but is particularly useful in macOS, where kernel mode driver installation can be challenging.
Comprehensive Features for Maximum Flexibility
Tested And Proven
The development of CBFS Connect is backed by decades of kernel experience, and the product is rigorously tested with hundreds of our internal tests as well as the tests developed by Microsoft for filesystem implementations. Callback Technologies components are trusted by leading technology companies around the world.
Create Robust Filesystem Implementations
CBFS Connect's performant, event-driven architecture allows your application to manage every aspect of your virtual filesystem's operation. You will quickly get from "idea" to "implemented" thanks to its consistent API and extensive documentation.
Leverage Any Data Source
You have full control over the contents of your virtual filesystem, so you can use any data source your application has access to. It can be local or remote, a database or REST service, static or dynamically-generated, or something else entirely.
Local NFS Component
The cross-platform NFS component provides a simple way to serve files to local clients on Windows, Linux, and macOS without the need for a kernel mode driver. The local NFS server is compatible with any NFS 4.1 client.
Enforce Custom Access Restrictions
Only your application knows the real location of your data, so you can create and enforce your own permission schemas specifying which users and third-party applications can access, view, or modify it.
Advanced Functionality
Support for many advanced features including named streams, directory change notifications, reparse points, fsctl requests, hard links, quotas, file IDs, short file names, Plug-n-Play, custom disk icons, and more!
Flexible Mounting Options
Includes support for network mounting points, session-local mounting points, and UNC paths. Mount disks as fixed or removable. Multiple mounting points per disk are supported.
Granular Control
Fine grained user access control supports advanced security requirements. Optimize for specific implementations with per-file and per-handle context objects, and in-memory or disk caching options.
Utilize NTFS Security Features
CBFS Connect supports all standard NTFS security mechanisms, allowing you to easily secure the contents of your virtual filesystem.
FUSE-Like Cross Platform Support
The cross-platform FUSE component brings a FUSE-like API to all supported platforms, which makes writing virtual filesystem apps for multiple OSs consistent and simple.
Docker Container Support
Create virtual drives within Docker containers. The driver is installed exclusively on the host and does not need to be part of the container initialization.
Transparent Encryption and Auditing
The extensible design of CBFS Connect makes it easy to add transparent file encryption and auditing of file operations, using the technologies of your choice.
Synchronous I/O Operations
Optimize back-end operations by updating only the parts of files which have been modified.
Supported Platforms
.NET
.NET Framework & Cross-platform Components
A .NET component layer managing our high-performance, shared codebase.
Cross-platform support for Windows, Linux, macOS and anywhere .NET Standard is supported.
Native libraries are also available for individual platforms.
- Support for .NET 8, .NET 7, .NET 6, .NET 5, .NET Core 3.1, and earlier.
- Seamless integration with Visual Studio.
- Extensive sample applications written in C#.
- Comprehensive integrated product documentation.
C++
C++ Class Libraries (Windows / Linux / macOS)
C++ classes packaged in 32-bit & 64-bit Windows DLLs, and C++ libraries built for Linux & macOS. The edition of choice for C++ development.
- C++ classes built atop our high-performance shared codebase.
- Extensive C++ sample applications.
- Comprehensive HTML product documentation.
- Seamless integration with popular development environments, including Visual Studio.
- Precompiled binaries for x86/x64 and ARM.
Delphi
Native Delphi Components
Native Delphi components wrapping our high-performance, shared codebase. The natural choice for Delphi programming.
- Delphi VCL components built atop our high-performance shared codebase.
- Extensive Delphi sample applications.
- Comprehensive integrated product documentation.
- Support for all Delphi versions between Delphi 6 and RAD Studio 12.
Java
Powerful Java Classes
Powerful Java Classes, based on the same high-performance codebase as our native editions. The edition of choice for cross-platform Java development.
- Java Classes built atop our high-performance shared codebase.
- Extensive sample applications written in Java.
- Includes comprehensive JavaDocs.
- Seamless integration with popular development environments, including IntelliJ and Eclipse.
- Support for JDK version 1.7 and up.
Python
Python Modules
Python 3 modules available for Windows, Linux, and macOS.
- Support for Python 3.
- Extensive console sample applications.
- Easy installation using PIP.
- Comprehensive HTML documentation.
Qt
Qt Class Libraries
High-performance Qt classes packaged in 32-bit & 64-bit Windows DLLs; and C++ libraries that can be compiled against Linux, macOS, FreeBSD, and more. The edition of choice for Qt development on any platform.
- 32-bit & 64-bit C++ class libraries (Windows DLLs).
- C++ Libraries for Unix (Linux, FreeBSD, etc.).
- Support for Qt 4.8 and Qt 5.
- Qt GUI sample applications and comprehensive HTML documentation.
- Seamless integration with Qt Creator.
Go
Go Packages
High-performance Go packages based on the same C++ codebase as our other editions. The edition of choice for Go development on any platform.
- High-performance, C++-based Go modules.
- 32-bit & 64-bit C++ class libraries (Windows DLLs).
- Supports Go 1.13 and later.
- Comprehensive HTML product documentation.
Rust
Rust Packages
Rust Crates built on top of 32-bit & 64-bit shared libraries for Windows, Linux, and macOS.
- Rust packages built on our high-performance shared codebase.
- Extensive sample applications.
- Comprehensive HTML product documentation.
- Support for x86/x64 and ARM.
Included Samples
The following samples are installed with the product. Please download the trial to get started.
Download Trial
30-Day Fully-Functional Trial
Get started today and see why developers worldwide
choose Callback Technologies components.
Order Online
CBFS Connect
The leading SDK for creating and managing virtual filesystems from almost any type of storage.