Sample Add-in Module Code
DLFunctionTable.Authenticate | = DL_Authenticate; |
DLFunctionTable.DbOpen | = DL_DbOpen; |
DLFunctionTable.DbClose | = DL_DbClose; |
DLFunctionTable.DbCreate | = DL_DbCreate; |
DLFunctionTable.DbDelete | = DL_DbDelete; |
DLFunctionTable.DbImport | = DL_DbImport; |
DLFunctionTable.DbExport | = DL_DbExport; |
DLFunctionTable.DbSetRecordParsingFunctions = | |
DL_DbSetRecordParsingFunctions; |
|
DLFunctionTable.DbGetRecordParsingFunctions = | |
DL_DbGetRecordParsingFunctions; |
|
DLFunctionTable.GetDbNameFromHandle = DL_GetDbNameFromHandle; | |
DLFunctionTable.DataInsert | = DL_DataInsert; |
DLFunctionTable.DataDelete | = DL_DataDelete; |
DLFunctionTable.DataGetFirst | = DL_DataGetFirst; |
DLFunctionTable.DataGetNext | = DL_DataGetNext; |
DLFunctionTable.DataAbortQuery = DL_DataAbortQuery;
DLFunctionTable.FreeUniqueRecord = DL_FreeUniqueRecord;
DLFunctionTable.PassThrough = DL_PassThrough;
/* Register with CSSM and retrieve memory management function pointers */
return ((REGISTER_FUNC_PTR)cssmRegister)(&my_addin_guid, &DLRegInfo, &DLMemoryFunctions, NULL);
}
CSSM_RETURN dl_DeregisterServices ()
{ return ((DE_REGISTER_FUNC_PTR)cssmDeregister)(&my_addin_guid); }
* Name: DL_Initialize
Appendix C | 95 |