1/*
2 * Copyright (c) 2004 Apple Computer, Inc. All Rights Reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24
25/*
26 * AppleDotMacTPSession.cpp - general session support and (mostly) unimplemented functions
27 */
28
29#include "AppleDotMacTPSession.h"
30
31AppleDotMacTPSession::AppleDotMacTPSession(
32	CSSM_MODULE_HANDLE theHandle,
33	CssmPlugin &plug,
34	const CSSM_VERSION &version,
35	uint32 subserviceId,
36	CSSM_SERVICE_TYPE subserviceType,
37	CSSM_ATTACH_FLAGS attachFlags,
38	const CSSM_UPCALLS &upcalls)
39		: TPPluginSession(theHandle, plug, version, subserviceId,
40							subserviceType,attachFlags, upcalls)
41{
42}
43
44AppleDotMacTPSession::~AppleDotMacTPSession()
45{
46}
47
48void AppleDotMacTPSession::CertCreateTemplate(CSSM_CL_HANDLE CLHandle,
49		uint32 NumberOfFields,
50		const CSSM_FIELD CertFields[],
51		CssmData &CertTemplate)
52{
53	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
54}
55
56void AppleDotMacTPSession::CrlVerify(CSSM_CL_HANDLE CLHandle,
57		CSSM_CSP_HANDLE CSPHandle,
58		const CSSM_ENCODED_CRL &CrlToBeVerified,
59		const CSSM_CERTGROUP &SignerCertGroup,
60		const CSSM_TP_VERIFY_CONTEXT *VerifyContext,
61		CSSM_TP_VERIFY_CONTEXT_RESULT *RevokerVerifyResult)
62{
63	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
64}
65
66void AppleDotMacTPSession::CertReclaimKey(const CSSM_CERTGROUP &CertGroup,
67		uint32 CertIndex,
68		CSSM_LONG_HANDLE KeyCacheHandle,
69		CSSM_CSP_HANDLE CSPHandle,
70		const CSSM_RESOURCE_CONTROL_CONTEXT *CredAndAclEntry)
71{
72	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
73}
74
75void AppleDotMacTPSession::CertGroupConstruct(CSSM_CL_HANDLE clHand,
76		CSSM_CSP_HANDLE cspHand,
77		const CSSM_DL_DB_LIST &DBList,
78		const void *ConstructParams,
79		const CSSM_CERTGROUP &CertGroupFrag,
80		CSSM_CERTGROUP_PTR &CertGroup)
81{
82	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
83}
84
85void AppleDotMacTPSession::CertGroupVerify(CSSM_CL_HANDLE clHand,
86		CSSM_CSP_HANDLE cspHand,
87		const CSSM_CERTGROUP &CertGroupToBeVerified,
88		const CSSM_TP_VERIFY_CONTEXT *VerifyContext,
89		CSSM_TP_VERIFY_CONTEXT_RESULT_PTR VerifyContextResult)
90{
91	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
92}
93
94void AppleDotMacTPSession::CertSign(CSSM_CL_HANDLE CLHandle,
95		CSSM_CC_HANDLE CCHandle,
96		const CssmData &CertTemplateToBeSigned,
97		const CSSM_CERTGROUP &SignerCertGroup,
98		const CSSM_TP_VERIFY_CONTEXT *SignerVerifyContext,
99		CSSM_TP_VERIFY_CONTEXT_RESULT *SignerVerifyResult,
100		CssmData &SignedCert)
101{
102	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
103}
104
105void AppleDotMacTPSession::TupleGroupToCertGroup(CSSM_CL_HANDLE CLHandle,
106		const CSSM_TUPLEGROUP &TupleGroup,
107		CSSM_CERTGROUP_PTR &CertTemplates)
108{
109	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
110}
111
112void AppleDotMacTPSession::ReceiveConfirmation(const CssmData &ReferenceIdentifier,
113		CSSM_TP_CONFIRM_RESPONSE_PTR &Responses,
114		sint32 &ElapsedTime)
115{
116	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
117}
118
119void AppleDotMacTPSession::PassThrough(CSSM_CL_HANDLE CLHandle,
120		CSSM_CC_HANDLE CCHandle,
121		const CSSM_DL_DB_LIST *DBList,
122		uint32 PassThroughId,
123		const void *InputParams,
124		void **OutputParams)
125{
126	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
127}
128
129void AppleDotMacTPSession::CertRemoveFromCrlTemplate(CSSM_CL_HANDLE CLHandle,
130		CSSM_CSP_HANDLE CSPHandle,
131		const CssmData *OldCrlTemplate,
132		const CSSM_CERTGROUP &CertGroupToBeRemoved,
133		const CSSM_CERTGROUP &RevokerCertGroup,
134		const CSSM_TP_VERIFY_CONTEXT &RevokerVerifyContext,
135		CSSM_TP_VERIFY_CONTEXT_RESULT &RevokerVerifyResult,
136		CssmData &NewCrlTemplate)
137{
138	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
139}
140
141void AppleDotMacTPSession::CertRevoke(CSSM_CL_HANDLE CLHandle,
142		CSSM_CSP_HANDLE CSPHandle,
143		const CssmData *OldCrlTemplate,
144		const CSSM_CERTGROUP &CertGroupToBeRevoked,
145		const CSSM_CERTGROUP &RevokerCertGroup,
146		const CSSM_TP_VERIFY_CONTEXT &RevokerVerifyContext,
147		CSSM_TP_VERIFY_CONTEXT_RESULT &RevokerVerifyResult,
148		CSSM_TP_CERTCHANGE_REASON Reason,
149		CssmData &NewCrlTemplate)
150{
151	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
152}
153
154void AppleDotMacTPSession::CertReclaimAbort(CSSM_LONG_HANDLE KeyCacheHandle)
155{
156	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
157}
158
159void AppleDotMacTPSession::CrlCreateTemplate(CSSM_CL_HANDLE CLHandle,
160		uint32 NumberOfFields,
161		const CSSM_FIELD CrlFields[],
162		CssmData &NewCrlTemplate)
163{
164	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
165}
166
167void AppleDotMacTPSession::CertGroupToTupleGroup(CSSM_CL_HANDLE CLHandle,
168		const CSSM_CERTGROUP &CertGroup,
169		CSSM_TUPLEGROUP_PTR &TupleGroup)
170{
171	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
172}
173
174void AppleDotMacTPSession::FormRequest(const CSSM_TP_AUTHORITY_ID *PreferredAuthority,
175		CSSM_TP_FORM_TYPE FormType,
176		CssmData &BlankForm)
177{
178	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
179}
180
181void AppleDotMacTPSession::CrlSign(CSSM_CL_HANDLE CLHandle,
182		CSSM_CC_HANDLE CCHandle,
183		const CSSM_ENCODED_CRL &CrlToBeSigned,
184		const CSSM_CERTGROUP &SignerCertGroup,
185		const CSSM_TP_VERIFY_CONTEXT *SignerVerifyContext,
186		CSSM_TP_VERIFY_CONTEXT_RESULT *SignerVerifyResult,
187		CssmData &SignedCrl)
188{
189	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
190}
191
192void AppleDotMacTPSession::CertGroupPrune(CSSM_CL_HANDLE CLHandle,
193		const CSSM_DL_DB_LIST &DBList,
194		const CSSM_CERTGROUP &OrderedCertGroup,
195		CSSM_CERTGROUP_PTR &PrunedCertGroup)
196{
197	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
198}
199
200void AppleDotMacTPSession::ApplyCrlToDb(CSSM_CL_HANDLE CLHandle,
201		CSSM_CSP_HANDLE CSPHandle,
202		const CSSM_ENCODED_CRL &CrlToBeApplied,
203		const CSSM_CERTGROUP &SignerCertGroup,
204		const CSSM_TP_VERIFY_CONTEXT *ApplyCrlVerifyContext,
205		CSSM_TP_VERIFY_CONTEXT_RESULT &ApplyCrlVerifyResult)
206{
207	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
208}
209
210void AppleDotMacTPSession::CertGetAllTemplateFields(CSSM_CL_HANDLE CLHandle,
211		const CssmData &CertTemplate,
212		uint32 &NumberOfFields,
213		CSSM_FIELD_PTR &CertFields)
214{
215	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
216}
217
218void AppleDotMacTPSession::ConfirmCredResult(const CssmData &ReferenceIdentifier,
219		const CSSM_TP_CALLERAUTH_CONTEXT *CallerAuthCredentials,
220		const CSSM_TP_CONFIRM_RESPONSE &Responses,
221		const CSSM_TP_AUTHORITY_ID *PreferredAuthority)
222{
223	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
224}
225
226void AppleDotMacTPSession::FormSubmit(CSSM_TP_FORM_TYPE FormType,
227		const CssmData &Form,
228		const CSSM_TP_AUTHORITY_ID *ClearanceAuthority,
229		const CSSM_TP_AUTHORITY_ID *RepresentedAuthority,
230		AccessCredentials *Credentials)
231{
232	CssmError::throwMe(CSSM_ERRCODE_FUNCTION_NOT_IMPLEMENTED);
233}
234
235