CBFS Storage 2022 Changelog

This document provides high-level information about new features, fixes, and functionality changes between minor versions releases of CBFS Storage. The information provided here is also available as an RSS feed.

For more details or if you have any questions please contact support@callback.com

Version: 22.0.8517
Date: April 27, 2023

  • [NEW] Improved the network redirector code to recognize links to drives (e.g., subst'ed drives).
  • [FIX] The Helper DLL prevented the system from rebooting.
  • [FIX] Improved the installation procedure in situations where the driver was busy and could not be updated immediately during the call to Install().
  • [FIX] The OpenVault method could return "The file name, directory name or volume label syntax is incorrect" error.

Version: 22.0.8444
Date: February 13, 2023

  • [FIX] If an error occured in one of the methods, in some cases, it was not reported via OnError, and an exception (where applicable) didn't contain an error message.

Version: 22.0.8426
Date: January 26, 2023

  • [FIX] Fixed a memory leak that made DriverVerifier crash when it was enabled for the driver
  • Minor documentation updates

Version: 22.0.8400
Date: December 31, 2022

  • [NEW] Initial release of version 2022
  • [IMPORTANT] CBDisk has been removed
  • [IMPORTANT] CBDrive has been renamed to CBVaultDrive
  • [IMPORTANT] CBMemDrive has been renamed to CBMemoryDriver
  • [IMPORTANT] The Initialize method will fail with an error if the kernel-mode driver is not installed OR if the version of the driver is lower than the version of the user-mode library.
  • [IMPORTANT] Replaced the UseJournaling property and AlwaysJournalMetadata configuration setting with the JournalingMode parameter in the OpenVault and CreateVault methods.
  • [NEW] Added the StorageGUID property to CBVaultDrive and CBMemoryDrive
  • [NEW] Added the FileAccess event and FireFileAccessEvent configuration setting
  • [IMPORTANT] The password cache now supports expiration time (time-to-live) of passwords. The FilePasswordNeeded event and the CacheFilePassword method got the corresponding parameters.
  • [NEW] The CacheFilePassword method got an extra RemoveFromCache parameter.
  • [IMPORTANT] The DefaultFilePassword property has been split to DefaultFileCreatePassword and DefaultFileAccessPassword
  • [NEW] The FileBeforeCopy and FileAfterCopy events have been added to track progress of file export/import methods (CopyToVault and CopyFromVault).
  • [NEW] The Progress event now reports the filename being copied by CopyToVault and CopyFromVault

Version: 20.0.8181
Date: May 26, 2022

  • [FIX] The IsCorrupted property returned true, when called on a closed vault.
  • [FIX] In callback mode, setting VaultSizeMin didn't account for the fact that the backend could already have space of this size.
  • [FIX] [CBDrive] [Windows]: Icon-related functions could fail to work with confusing errors.

Version: 20.0.8128
Date: April 3, 2022

  • [NEW] Added support for x64 operations on Windows 11/ARM64 systems. Now, the installation methods executed in x64 mode can install the drivers and the helper DLL to such as system.
  • [FIX] BSOD could occur in rare cases if the user-mode application was terminated.
  • [FIX] Driver Verifier reported allocation of memory in non-paged pool without Nx flag. Workardound added.

Version: 20.0.8031
Date: December 27, 2021

  • [NEW] GetModuleVersion now requests the version from the running filesystem driver, if one is available. This helps to obtain the version of the running driver in the period between the driver update and system restart.
  • [FIX] The helper DLL is now activated only in "explorer.exe", which should reduce the chance that it misses notifications after the host process quits.
  • [FIX] [Python] Unicode event parameters were not converted right on platforms other than Windows.

Version: 20.0.7982
Date: November 8, 2021

  • [FIX] A sporadic C++ exception could happen upon deletion of the component or application shutdown due to a compiler quirk.

Version: 20.0.7979
Date: November 5, 2021

  • [NEW] Process tracking library improved, so the loaded driver should cause a slightly lower effect on system operations.

Version: 20.0.7922
Date: September 9, 2021

  • [NEW] Preliminary support for Windows 11.
  • [FIX] Improved compatibility with CD-ROM devices when they are installed in the system.
  • [NEW] Node.js edition (Beta).

Version: 20.0.7895
Date: August 13, 2021

  • [NEW] Added the AlwaysJournalMetadata configuration setting (enabled by default) which enables or disables journaling of the filesystem structure even when the main data journaling is disabled.
  • [FIX] The automatic compact procedure did not start unless at least one of VaultSizeMin or VaultSizeMax properties was set to a non-zero value.
  • [FIX] GetFileSize and GetFileMetadataSize methods did not return correct results for values larger than 0x7FFFFFFF bytes. This did not affect any internal operations or file integrity.

Version: 20.0.7836
Date: June 15, 2021

  • [NEW] [Windows]: Added the CBMemDrive component.
  • [NEW] [Windows]: Moved the CBDisk component into the product.
  • [NEW] To components/classes that create a virtual disk, added the VolumeGuidName configuration setting that returns the volume's GUID-based name of the created virtual disk.
  • [NEW] [CBDrive] [Windows]: Added support for the "net view" command to be able to show the share, created from the network mounting point, in the list.
  • [FIX] [Linux]: Failed to initialize the iconv library when it was configured in the system in a specific way.
  • [FIX] Free space was reported wrong if the UseJournaling property was set to False and MaxVaultSize > 0.
  • [FIX] [CBDrive] [Windows]: On some systems, the OS mounted a filesystem with access permissions that made it impossible for the regular user to open it.
  • [IMPORTANT] [CBDrive] [Windows]: Hardware acceleration of primitive cryptographic operations has been temporarily disabled until further notice.

Version: 20.0.7685
Date: January 15, 2021

  • [FIX] On some Windows 7 versions, MountMedia could fail due to a Windows timing issue (mounting is finalized by the OS after it returns execution from the mounting function to the caller). A workaround has been implemented.

Version: 20.0.7671
Date: January 1, 2021

  • [FIX] [CBDrive] [Windows]: Old PnP Bus driver could crash on deinstallation due to the recent changes in Windows. Upgrading the driver to the included version addresses the problem.

Version: 20.0.7649
Date: December 10, 2020

  • [NEW] [CBDrive] [Windows]: Added STGMP_AUTOCREATE_DRIVE_LETTER flag to the AddMountingPoint method
  • [FIX] The functions that validate server name and share name, passed to the AddMountingPoint method, have been improved to accept Unicode characters and other allowed characters.
  • [FIX] The Flush method of the CBFSStorageStream class should not do anything in read-only streams.
  • [FIX] If the OnVaultFlush event failed, an Access Violation error could happen.
  • [FIX] [CBDrive] [Windows]: PNP Bus driver could not be used after installation until the system is rebooted.
  • [FIX] [CBDrive] [Windows]: Kernel-mode logging didn't work when enabled via the registry.
  • [FIX] [CBDrive] [Windows]: BSOD could occur on x86 systems when SSE processor commands were used in encryption. Disabled SSE on x86 platform.
  • [FIX] [CBDrive] [Windows]: Icons were not displayed on x86 systems.
  • [FIX] [CBDrive] [Windows]: In the Java Edition, callback mode didn't work.

Version: 20.0.7502
Date: July 17, 2020

  • [NEW] Added STGMP_AUTOCREATE_DRIVE_LETTER flag to the AddMountingPoint method.
  • [IMPORTANT] When a non-zero LUID is passed to the AddMountingPoint method, STGMP_LOCAL flag is assumed.
  • [FIX] A race condition could happen in the Close method of CBVault leading to a crash.
  • [FIX] Error 87 sometimes happened in CBDrive during file and directory enumeration.
  • [FIX] Recursive search using the FindFirst method didn't work in CBDrive.

Version: 20.0.7453
Date: May 28, 2020

  • [NEW] Virtual disks can be bind-mounted to Docker container images.
  • [NEW] RAD Studio 10.4 support in Delphi and C++Builder editions.
  • [FIX] Encrypted vaults could be unopenable when transferred between CBDrive and CBVault.

Version: 20.0.7438
Date: May 13, 2020

  • [FIX] The InSize parameter of the OnDataDecompress event was getting the incorrect value.
  • [FIX] [CBDrive]: Setting the FilesystemName property worked but reported a false error.
  • [FIX] [CBDrive]: Regression - deletion of the mounting point by index didn't work.
  • [FIX] [CBDrive]: Setting the Logo property to empty string after opening the vault caused an Access Violation.

Version: 20.0.7437
Date: May 12, 2020

  • [NEW] Added PageCacheSize config setting to control the size of the page cache.
  • [FIX] FilesystemName could not be changed in CBDrive.
  • [FIX] In the non-Unicode versions of some APIs (Delphi, C++ Builder, C++), the events which include changeable string parameters could randomly fail.

Version: 20.0.7416
Date: April 21, 2020

  • [FIX] When the CBFSSTORAGE_FOM_CREATE_ALWAYS flag was used in the OpenFile method call and the file existed, an error occured instead of the the file being truncated.

Download Changelog