2 * Copyright (c) 2000-2001 Apple Computer, Inc. All Rights Reserved.
4 * The contents of this file constitute Original Code as defined in and are
5 * subject to the Apple Public Source License Version 1.2 (the 'License').
6 * You may not use this file except in compliance with the License. Please obtain
7 * a copy of the License at http://www.apple.com/publicsource and read it before
10 * This Original Code and all software distributed under the License are
11 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
12 * OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
13 * LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
14 * PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. Please see the License for the
15 * specific language governing rights and limitations under the License.
20 * AppleTPSession.cpp - general session support and (mostly) unimplemented functions
23 #include "AppleTPSession.h"
25 AppleTPSession::AppleTPSession(
26 CSSM_MODULE_HANDLE theHandle
,
28 const CSSM_VERSION
&version
,
30 CSSM_SERVICE_TYPE subserviceType
,
31 CSSM_ATTACH_FLAGS attachFlags
,
32 const CSSM_UPCALLS
&upcalls
)
33 : TPPluginSession(theHandle
, plug
, version
, subserviceId
,
34 subserviceType
,attachFlags
, upcalls
)
36 /* TBD session stuff here...
37 mCspHand = CSSM_INVALID_HANDLE;
38 mCspDlHand = CSSM_INVALID_HANDLE;
42 AppleTPSession::~AppleTPSession()
45 if(mCspHand != CSSM_INVALID_HANDLE) {
46 CSSM_ModuleDetach(mCspHand);
48 if(mCspDlHand != CSSM_INVALID_HANDLE) {
49 CSSM_ModuleDetach(mCspDlHand);
54 void AppleTPSession::CertCreateTemplate(CSSM_CL_HANDLE CLHandle
,
55 uint32 NumberOfFields
,
56 const CSSM_FIELD CertFields
[],
57 CssmData
&CertTemplate
)
59 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
62 void AppleTPSession::CrlVerify(CSSM_CL_HANDLE CLHandle
,
63 CSSM_CSP_HANDLE CSPHandle
,
64 const CSSM_ENCODED_CRL
&CrlToBeVerified
,
65 const CSSM_CERTGROUP
&SignerCertGroup
,
66 const CSSM_TP_VERIFY_CONTEXT
&VerifyContext
,
67 CSSM_TP_VERIFY_CONTEXT_RESULT
&RevokerVerifyResult
)
69 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
72 void AppleTPSession::CertReclaimKey(const CSSM_CERTGROUP
&CertGroup
,
74 CSSM_LONG_HANDLE KeyCacheHandle
,
75 CSSM_CSP_HANDLE CSPHandle
,
76 const CSSM_RESOURCE_CONTROL_CONTEXT
*CredAndAclEntry
)
78 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
81 /*** CertGroupVerify, CertGroupConstruct in TPCertGroup.cpp ***/
83 void AppleTPSession::CertSign(CSSM_CL_HANDLE CLHandle
,
84 CSSM_CC_HANDLE CCHandle
,
85 const CssmData
&CertTemplateToBeSigned
,
86 const CSSM_CERTGROUP
&SignerCertGroup
,
87 const CSSM_TP_VERIFY_CONTEXT
&SignerVerifyContext
,
88 CSSM_TP_VERIFY_CONTEXT_RESULT
&SignerVerifyResult
,
91 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
94 void AppleTPSession::TupleGroupToCertGroup(CSSM_CL_HANDLE CLHandle
,
95 const CSSM_TUPLEGROUP
&TupleGroup
,
96 CSSM_CERTGROUP_PTR
&CertTemplates
)
98 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
101 void AppleTPSession::ReceiveConfirmation(const CssmData
&ReferenceIdentifier
,
102 CSSM_TP_CONFIRM_RESPONSE_PTR
&Responses
,
105 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
108 void AppleTPSession::PassThrough(CSSM_CL_HANDLE CLHandle
,
109 CSSM_CC_HANDLE CCHandle
,
110 const CSSM_DL_DB_LIST
*DBList
,
111 uint32 PassThroughId
,
112 const void *InputParams
,
115 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
118 void AppleTPSession::CertRemoveFromCrlTemplate(CSSM_CL_HANDLE CLHandle
,
119 CSSM_CSP_HANDLE CSPHandle
,
120 const CssmData
*OldCrlTemplate
,
121 const CSSM_CERTGROUP
&CertGroupToBeRemoved
,
122 const CSSM_CERTGROUP
&RevokerCertGroup
,
123 const CSSM_TP_VERIFY_CONTEXT
&RevokerVerifyContext
,
124 CSSM_TP_VERIFY_CONTEXT_RESULT
&RevokerVerifyResult
,
125 CssmData
&NewCrlTemplate
)
127 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
130 void AppleTPSession::CertRevoke(CSSM_CL_HANDLE CLHandle
,
131 CSSM_CSP_HANDLE CSPHandle
,
132 const CssmData
*OldCrlTemplate
,
133 const CSSM_CERTGROUP
&CertGroupToBeRevoked
,
134 const CSSM_CERTGROUP
&RevokerCertGroup
,
135 const CSSM_TP_VERIFY_CONTEXT
&RevokerVerifyContext
,
136 CSSM_TP_VERIFY_CONTEXT_RESULT
&RevokerVerifyResult
,
137 CSSM_TP_CERTCHANGE_REASON Reason
,
138 CssmData
&NewCrlTemplate
)
140 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
143 void AppleTPSession::CertReclaimAbort(CSSM_LONG_HANDLE KeyCacheHandle
)
145 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
148 void AppleTPSession::CrlCreateTemplate(CSSM_CL_HANDLE CLHandle
,
149 uint32 NumberOfFields
,
150 const CSSM_FIELD CrlFields
[],
151 CssmData
&NewCrlTemplate
)
153 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
156 void AppleTPSession::CertGroupToTupleGroup(CSSM_CL_HANDLE CLHandle
,
157 const CSSM_CERTGROUP
&CertGroup
,
158 CSSM_TUPLEGROUP_PTR
&TupleGroup
)
160 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
163 void AppleTPSession::FormRequest(const CSSM_TP_AUTHORITY_ID
*PreferredAuthority
,
164 CSSM_TP_FORM_TYPE FormType
,
167 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
170 void AppleTPSession::CrlSign(CSSM_CL_HANDLE CLHandle
,
171 CSSM_CC_HANDLE CCHandle
,
172 const CSSM_ENCODED_CRL
&CrlToBeSigned
,
173 const CSSM_CERTGROUP
&SignerCertGroup
,
174 const CSSM_TP_VERIFY_CONTEXT
&SignerVerifyContext
,
175 CSSM_TP_VERIFY_CONTEXT_RESULT
&SignerVerifyResult
,
178 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
181 void AppleTPSession::CertGroupPrune(CSSM_CL_HANDLE CLHandle
,
182 const CSSM_DL_DB_LIST
&DBList
,
183 const CSSM_CERTGROUP
&OrderedCertGroup
,
184 CSSM_CERTGROUP_PTR
&PrunedCertGroup
)
186 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
189 void AppleTPSession::ApplyCrlToDb(CSSM_CL_HANDLE CLHandle
,
190 CSSM_CSP_HANDLE CSPHandle
,
191 const CSSM_ENCODED_CRL
&CrlToBeApplied
,
192 const CSSM_CERTGROUP
&SignerCertGroup
,
193 const CSSM_TP_VERIFY_CONTEXT
*ApplyCrlVerifyContext
,
194 CSSM_TP_VERIFY_CONTEXT_RESULT
&ApplyCrlVerifyResult
)
196 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
199 void AppleTPSession::CertGetAllTemplateFields(CSSM_CL_HANDLE CLHandle
,
200 const CssmData
&CertTemplate
,
201 uint32
&NumberOfFields
,
202 CSSM_FIELD_PTR
&CertFields
)
204 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
207 void AppleTPSession::ConfirmCredResult(const CssmData
&ReferenceIdentifier
,
208 const CSSM_TP_CALLERAUTH_CONTEXT
*CallerAuthCredentials
,
209 const CSSM_TP_CONFIRM_RESPONSE
&Responses
,
210 const CSSM_TP_AUTHORITY_ID
*PreferredAuthority
)
212 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);
215 void AppleTPSession::FormSubmit(CSSM_TP_FORM_TYPE FormType
,
216 const CssmData
&Form
,
217 const CSSM_TP_AUTHORITY_ID
*ClearanceAuthority
,
218 const CSSM_TP_AUTHORITY_ID
*RepresentedAuthority
,
219 AccessCredentials
*Credentials
)
221 CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED
);