Mercurial > projects > dstep
comparison dstep/security/emmspi.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 |
comparison
equal
deleted
inserted
replaced
10:27e00625790b | 11:07194b026fa4 |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Jul 22, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.security.emmspi; | |
8 | |
9 import dstep.security.cssmtype; | |
10 import dstep.security.cssmspi; | |
11 import dstep.security.emmtype; | |
12 | |
13 alias CSSM_MANAGER_REGISTRATION_INFO* CSSM_MANAGER_REGISTRATION_INFO_PTR; | |
14 alias CSSM_STATE_FUNCS* CSSM_STATE_FUNCS_PTR; | |
15 | |
16 enum | |
17 { | |
18 CSSM_HINT_NONE = 0, | |
19 CSSM_HINT_ADDRESS_APP = 1 << 0, | |
20 CSSM_HINT_ADDRESS_SP = 1 << 1 | |
21 } | |
22 | |
23 struct CSSM_STATE_FUNCS | |
24 { | |
25 extern (C) int function (CSSM_MODULE_HANDLE hAddIn, | |
26 CSSM_SERVICE_MASK AddinType, | |
27 void* *SPFunctions, | |
28 CSSM_GUID_PTR Guid, | |
29 CSSM_BOOL* Serialized) cssm_GetAttachFunctions; | |
30 | |
31 extern (C) int function (CSSM_MODULE_HANDLE hAddIn) cssm_ReleaseAttachFunctions; | |
32 | |
33 extern (C) int function (CSSM_MODULE_HANDLE hAddIn, | |
34 CSSM_UPCALLS_PTR UpcallTable) cssm_GetAppMemoryFunctions; | |
35 | |
36 extern (C) int function (CSSM_MODULE_HANDLE hAddin, | |
37 CSSM_PROC_ADDR SrcAddress, | |
38 CSSM_PROC_ADDR DestAddress, | |
39 CSSM_PRIVILEGE InPriv, | |
40 CSSM_PRIVILEGE* OutPriv, | |
41 CSSM_BITMASK Hints, | |
42 CSSM_BOOL* IsOK) cssm_IsFuncCallValid; | |
43 | |
44 extern (C) int function (/*const*/ CSSM_GUID* GUID) cssm_DeregisterManagerServices; | |
45 extern (C) int function (/*const*/ CSSM_MANAGER_EVENT_NOTIFICATION* EventDescription) cssm_DeliverModuleManagerEvent; | |
46 } | |
47 | |
48 struct CSSM_MANAGER_REGISTRATION_INFO | |
49 { | |
50 extern (C) int function (uint VerMajor, uint VerMinor) Initialize; | |
51 extern (C) int function () Terminate; | |
52 extern (C) int function (CSSM_STATE_FUNCS_PTR CssmStateCallTable) RegisterDispatchTable; | |
53 extern (C) int function () DeregisterDispatchTable; | |
54 extern (C) int function (/*const*/ CSSM_MANAGER_EVENT_NOTIFICATION* EventDescription) EventNotifyManager; | |
55 extern (C) int function (CSSM_FUNC_NAME_ADDR_PTR FuncNameAddrPtr, | |
56 uint NumOfFuncNameAddr) RefreshFunctionTable; | |
57 } | |
58 | |
59 extern (C) | |
60 { | |
61 int ModuleManagerAuthenticate (uint KeyHierarchy, CSSM_GUID* CssmGuid, CSSM_GUID* AppGuid, CSSM_MANAGER_REGISTRATION_INFO_PTR FunctionTable); | |
62 } |