Mercurial > projects > dstep
view dstep/security/mds.d @ 11:07194b026fa4
Added bindings to a couple of frameworks, new license + some other things
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sat, 01 Aug 2009 15:03:28 +0200 |
parents | |
children |
line wrap: on
line source
/** * Copyright: Copyright (c) 2009 Jacob Carlborg. * Authors: Jacob Carlborg * Version: Initial created: Jul 22, 2009 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) */ module dstep.security.mds; import dstep.security.cssmtype; alias int MDS_HANDLE; alias CSSM_DL_DB_HANDLE MDS_DB_HANDLE; alias MDS_FUNCS* MDS_FUNCS_PTR; struct MDS_FUNCS { extern (C) int function (MDS_HANDLE MdsHandle, /*const*/ char *DbName, /*const*/ CSSM_NET_ADDRESS *DbLocation, CSSM_DB_ACCESS_TYPE AccessRequest, /*const*/ CSSM_ACCESS_CREDENTIALS *AccessCred, /*const*/ void *OpenParameters, CSSM_DB_HANDLE *hMds) DbOpen; extern (C) int function (MDS_DB_HANDLE MdsDbHandle) DbClose; extern (C) int function (MDS_HANDLE MdsHandle, CSSM_NAME_LIST_PTR *NameList) GetDbNames; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, char **DbName) GetDbNameFromHandle; extern (C) int function (MDS_HANDLE MdsHandle, CSSM_NAME_LIST_PTR NameList) FreeNameList; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_DB_RECORDTYPE RecordType, /*const*/ CSSM_DB_RECORD_ATTRIBUTE_DATA *Attributes, /*const*/ CSSM_DATA *Data, CSSM_DB_UNIQUE_RECORD_PTR *UniqueId) DataInsert; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, /*const*/ CSSM_DB_UNIQUE_RECORD *UniqueRecordIdentifier) DataDelete; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_DB_RECORDTYPE RecordType, CSSM_DB_UNIQUE_RECORD_PTR UniqueRecordIdentifier, /*const*/ CSSM_DB_RECORD_ATTRIBUTE_DATA *AttributesToBeModified, /*const*/ CSSM_DATA *DataToBeModified, CSSM_DB_MODIFY_MODE ModifyMode) DataModify; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, /*const*/ CSSM_QUERY *Query, CSSM_HANDLE_PTR ResultsHandle, CSSM_DB_RECORD_ATTRIBUTE_DATA_PTR Attributes, CSSM_DATA_PTR Data, CSSM_DB_UNIQUE_RECORD_PTR *UniqueId) DataGetFirst; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_HANDLE ResultsHandle, CSSM_DB_RECORD_ATTRIBUTE_DATA_PTR Attributes, CSSM_DATA_PTR Data, CSSM_DB_UNIQUE_RECORD_PTR *UniqueId) DataGetNext; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_HANDLE ResultsHandle) DataAbortQuery; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, /*const*/ CSSM_DB_UNIQUE_RECORD *UniqueRecord, CSSM_DB_RECORD_ATTRIBUTE_DATA_PTR Attributes, CSSM_DATA_PTR Data) DataGetFromUniqueRecordId; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_DB_UNIQUE_RECORD_PTR UniqueRecord) FreeUniqueRecord; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_DB_RECORDTYPE RelationID, /*const*/ char *RelationName, uint NumberOfAttributes, /*const*/ CSSM_DB_SCHEMA_ATTRIBUTE_INFO *pAttributeInfo, uint NumberOfIndexes, /*const*/ CSSM_DB_SCHEMA_INDEX_INFO *pIndexInfo) CreateRelation; extern (C) int function (MDS_DB_HANDLE MdsDbHandle, CSSM_DB_RECORDTYPE RelationID) DestroyRelation; } extern (C) { int MDS_Initialize (CSSM_GUID* pCallerGuid, CSSM_MEMORY_FUNCS* pMemoryFunctions, MDS_FUNCS_PTR pDlFunctions, MDS_HANDLE* hMds); int MDS_Terminate (int MdsHandle); int MDS_Install (int MdsHandle); int MDS_Uninstall (int MdsHandle); }