The cfapi.h header documentation provided by Microsoft Learn does not explain how CF_CALLBACK_TYPE_VALIDATE_DATA is called by the provider, and when testing this callback is not called in the latest Windows 11 Insider Beta of 22623.1037.
The methods implemented by the provider are:
CF_CALLBACK_REGISTRATION FakeCloudProvider::s_MirrorCallbackTable[] =
{
{ CF_CALLBACK_TYPE_FETCH_DATA, FakeCloudProvider::OnFetchData },
{ CF_CALLBACK_TYPE_CANCEL_FETCH_DATA, FakeCloudProvider::OnCancelFetchData },
{ CF_CALLBACK_TYPE_NOTIFY_RENAME_COMPLETION, FakeCloudProvider::OnRenameCompletion },
{ CF_CALLBACK_TYPE_NOTIFY_DELETE_COMPLETION, FakeCloudProvider::OnDeleteCompletion },
{ CF_CALLBACK_TYPE_VALIDATE_DATA, FakeCloudProvider::OnValidateData },
CF_CALLBACK_REGISTRATION_END
};
The method FakeCloudProvider::OnValidateData:
void CALLBACK FakeCloudProvider::OnValidateData(
_In_ CONST CF_CALLBACK_INFO* callbackInfo,
_In_ CONST CF_CALLBACK_PARAMETERS* callbackParameters)
{
printf("Callback Validate Data Issued\n");
}
I have tried hydrating a placeholder, dehydrating a placeholder, opening the file on the system, and opening a Pinned file on the system, all without this method being called, along with Restarting the Cloud Provider. I am using the Microsoft Cloud Mirror Sample.
Is there any way I can find information regarding this feature? Thanks In Advance!
Github Issue: https://github.com/microsoft/Windows-classic-samples/issues/280