CSM_NOTIFY_CALLBACK

The CSSM_NOTIFY_CALLBACK is used by the application to provide a function pointer to a callback routine. It is typically supplied in the CSSM_ModuleAttach API when the application developer wishes something to be called in response to a particular event happening. It is defined as follows:

typedef CSSM_RETURN (CSSMAPI *CSSM_NOTIFY_CALLBACK)(CSSM_MODULE_HANDLE 
                                      uint32 Application,ModuleHandle,
                                      uint32 Reason,
                                      Void * Param);

Definitions:

ModuleHandle
The handle of the attached service provider module.
Application
Input data to identify the callback.
Reason
The reason for the notification (see Table 1).
Param
Any additional information about the event.
Table 1. Notification Reasons
Reason Description
CSSM_NOTIFY_SURRENDER The service provider module is temporarily surrendering control of the process.
CSSM_NOTIFY_COMPLETE An asynchronous operation has completed.
CSSM_NOTIFY_DEVICE_REMOVED A device, such as a token, has been removed.
CSSM_NOTIFY_DEVICE_INSERTED A device, such as a token, has been inserted.