diff dstep/security/cssmcli.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 diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dstep/security/cssmcli.d	Sat Aug 01 15:03:28 2009 +0200
@@ -0,0 +1,118 @@
+/**
+ * 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.cssmcli;
+
+import dstep.security.cssmtype;
+
+struct CSSM_SPI_CL_FUNCS
+{
+	extern (C) int function (CSSM_DL_HANDLE DLHandle,
+					         /*const*/ char* DbName,
+					         /*const*/ CSSM_NET_ADDRESS* DbLocation,
+					         CSSM_DB_ACCESS_TYPE AccessRequest,
+					         /*const*/ CSSM_ACCESS_CREDENTIALS* AccessCred,
+					         /*/*const*/ void* OpenParameters,
+					         CSSM_DB_HANDLE* DbHandle) DbOpen;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle) DbClose;
+	extern (C) int function (CSSM_DL_HANDLE DLHandle,
+					         /*const*/ char* DbName,
+					         /*const*/ CSSM_NET_ADDRESS* DbLocation,
+					         /*const*/ CSSM_DBINFO* DBInfo,
+					         CSSM_DB_ACCESS_TYPE AccessRequest,
+					         /*const*/ CSSM_RESOURCE_CONTROL_CONTEXT* CredAndAclEntry,
+					         /*const*/ void* OpenParameters,
+					         CSSM_DB_HANDLE* DbHandle) DbCreate;
+	
+	extern (C) int function (CSSM_DL_HANDLE DLHandle,
+					         /*const*/ char* DbName,
+					         /*const*/ CSSM_NET_ADDRESS* DbLocation,
+					         /*const*/ CSSM_ACCESS_CREDENTIALS* AccessCred) DbDelete;	
+
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         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 (CSSM_DL_DB_HANDLE DLDBHandle,
+							 CSSM_DB_RECORDTYPE RelationID) DestroyRelation;
+							 
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         CSSM_DB_ACCESS_TYPE AccessRequest,
+					         /*const*/ CSSM_ACCESS_CREDENTIALS* AccessCred) Authenticate;	
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         /*const*/ CSSM_STRING* SelectionTag,
+					         uint* NumberOfAclInfos,
+					         CSSM_ACL_ENTRY_INFO_PTR* AclInfos) GetDbAcl;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         /*const*/ CSSM_ACCESS_CREDENTIALS* AccessCred,
+					         /*const*/ CSSM_ACL_EDIT* AclEdit) ChangeDbAcl;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+							 CSSM_ACL_OWNER_PROTOTYPE_PTR Owner) GetDbOwner;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         /*const*/ CSSM_ACCESS_CREDENTIALS* AccessCred,
+					         /*const*/ CSSM_ACL_OWNER_PROTOTYPE* NewOwner) ChangeDbOwner;
+	
+	extern (C) int function (CSSM_DL_HANDLE DLHandle,
+							 CSSM_NAME_LIST_PTR* NameList) GetDbNames;	
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle, char* *DbName) GetDbNameFromHandle;
+	extern (C) int function (CSSM_DL_HANDLE DLHandle, CSSM_NAME_LIST_PTR NameList) FreeNameList;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         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 (CSSM_DL_DB_HANDLE DLDBHandle,
+							 /*const*/ CSSM_DB_UNIQUE_RECORD* UniqueRecordIdentifier) DataDelete;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         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 (CSSM_DL_DB_HANDLE DLDBHandle,
+					         /*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 (CSSM_DL_DB_HANDLE DLDBHandle,
+					         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 (CSSM_DL_DB_HANDLE DLDBHandle, CSSM_HANDLE ResultsHandle) DataAbortQuery;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         /*const*/ CSSM_DB_UNIQUE_RECORD* UniqueRecord,
+					         CSSM_DB_RECORD_ATTRIBUTE_DATA_PTR Attributes,
+					         CSSM_DATA_PTR Data) DataGetFromUniqueRecordId;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+							 CSSM_DB_UNIQUE_RECORD_PTR UniqueRecord) FreeUniqueRecord;
+	
+	extern (C) int function (CSSM_DL_DB_HANDLE DLDBHandle,
+					         uint PassThroughId,
+					         /*const*/ void* InputParams,
+					         void** OutputParams) PassThrough;
+}
+
+alias CSSM_SPI_CL_FUNCS* CSSM_SPI_CL_FUNCS_PTR;
\ No newline at end of file