/ OSX / libsecurity_cdsa_client / lib / clclient.cpp
clclient.cpp
 1  /*
 2   * Copyright (c) 2000-2002,2011,2014 Apple Inc. All Rights Reserved.
 3   * 
 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
 8   * using this file.
 9   * 
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.
16   */
17  
18  
19  //
20  // clclient - client interface to CSSM CLs and their operations
21  //
22  #include <security_cdsa_client/clclient.h>
23  
24  using namespace CssmClient;
25  
26  
27  //
28  // Manage CL attachments
29  //
30  CLImpl::CLImpl(const Guid &guid) : AttachmentImpl(guid, CSSM_SERVICE_CL)
31  {
32  }
33  
34  CLImpl::CLImpl(const Module &module) : AttachmentImpl(module, CSSM_SERVICE_CL)
35  {
36  }
37  
38  CLImpl::~CLImpl()
39  try
40  {
41  }
42  catch(...) {
43      return;
44  }
45  
46  
47  //
48  // A BuildCertGroup
49  //
50  BuildCertGroup::BuildCertGroup(CSSM_CERT_TYPE ctype, CSSM_CERT_ENCODING encoding,
51      CSSM_CERTGROUP_TYPE type, Allocator &alloc)
52      : certificates(NumCerts, GroupList.CertList)
53  {
54      clearPod();
55      CertType = ctype;
56      CertEncoding = encoding;
57      CertGroupType = type;
58  }