We have a solution to move all cold data (Unused for a long time) from expensive storage to cloud to save storage cost on CIFS server. All files which are moved to cloud are marked as offline (The file attribute FILE_ATTRIBUTE_OFFLINE set on files).
When users access those files from Windows CIFS client, Windows OS recognizes the FILE_ATTRIBUTE_OFFLINE attribute and does not recall files from cloud to create thumbnail or preview while browsing the files unless users explicitly open a file object.
In MacOS, The FILE_ATTRIBUTE_OFFLINE attribute is not honoured and recall all files to create thumbnail and preview while browsing files in Finder by QuickLookSatellite, which is very expensive to the customers.
We implemented kauth API to block downloads from thumbnail processes and also Network Kernel Extension API to track all SMB calls for informing our server about MAC OS is the client.
But from MAC 10.15 Release notes[1], figured out that both kauth and NKE are deprecated on MAC OS 10.15 and above.
Is there any alternative (to Kauth and NKE) or interface to access an offline attribute from SMBClient to kernel and user space?
Alternatively, can we leverage any API or system attribute that is used by Apple’s iCloud for not downloading files on browsing?
- The Network Kernel Extension API is now deprecated. (49284108)
- The kauth API has been deprecated. (50419013)
Thanks in advance.