Sample Add-in Module Code
CSSM_DB_RECORDTYPE RecordType,
const CSSM_DB_RECORD_PARSING_FNTABLE_PTR FunctionTable);
CSSM_DB_RECORD_PARSING_FNTABLE_PTR DL_DbGetRecordParsingFunctions (CSSM_DL_HANDLE DLHandle,
const char* DbName,
CSSM_DB_RECORDTYPE RecordType);
void * DL_PassThrough (CSSM_DL_DB_HANDLE DLHandle, uint32 PassThroughId, const void * InputParams);
/* CSSM Wrapper functions */
CSSM_RETURN dl_RegisterServices ();
CSSM_RETURN dl_DeregisterServices ();
CSSM_RETURN dl_SetError (uint32 error);
void _MyAddIn_Init (shl_t hInstance, int loading);
CSSM_RETURN AddInAuthenticate(char* cssmCredentialPath, char* cssmSection); CSSM_RETURN dl_GetCSSMFunctionPointer (char *FunctionName,
void **FunctionPtr);
#else #define const
CSSM_DB_HANDLE DL_DbOpen (); CSSM_RETURN DL_DbClose (); CSSM_DB_HANDLE DL_DbCreate (); CSSM_RETURN DL_DbDelete (); char * DL_GetDbNameFromHandle ();
CSSM_DB_UNIQUE_RECORD_PTR DL_DataInsert ();
CSSM_RETURN DL_DataDelete ();
Appendix C | 89 |