Thanks for your answer. Our app supports macOS 10.10 onwards, while the file provider is from macOS 11.0, so any solution is there for an older OS version without using ES or KAUTH framework. Historically, file sync services basically worked in one of three ways: Use Kauth to detect the open() call until the file was downloaded. This had the advantage of being relatively easy and the disadvantage of requiring a KEXT and using kauth. Note that the ES auth timeout means that it does NOT work for this use case and, yes, that's intentional. Use a VFS driver, typically using FUSE. This is marginally safer than #1 (since the file system is self-isolated) but quite complex (though FUSE helps) and requires a KEXT. Use a loopback SMB server. An SMB server is run on the machine which the machine mounts. The SMB server then handles I/O requests using a mix of its own local file cache and downloading data from the network. Looking at those architectures, I have a comment here: Working on an app
Topic:
App & System Services
SubTopic:
Core OS
Tags: