Feature #20668
openkeep-smb service exporting file shares that can be mounted on Windows
Description
Extremely speculative.
To provide high performance remote file system service to Windows, we could implement a bridge that supports SMB file shares.
SMB is notoriously complicated. We do not have the resources to write a whole SMB stack. Ideally, we'd like to connect an SMB protocol implementation to our golang filesystem interface (used by keep-web).
However, Samba, the open source SMB server, has a VFS layer:
https://wiki.samba.org/index.php/Writing_a_Samba_VFS_Module
So in principal, we could create a plugin for Samba that exports Arvados projects and collections, similar to how WebDAV/S3/FUSE filesystems currently work.
We can use Go to build shared objects that are callable from C:
https://github.com/vladimirvivien/go-cshared-examples
The complexity would probably be comparable to what we've done before with the FUSE mount.