• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  // Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights
2  // reserved. Use of this source code is governed by a BSD-style license that
3  // can be found in the LICENSE file.
4  //
5  // ---------------------------------------------------------------------------
6  //
7  // This file was generated by the CEF translator tool. If making changes by
8  // hand only do so within the body of existing method and function
9  // implementations. See the translator.README.txt file in the tools directory
10  // for more information.
11  //
12  // $hash=cac3e88ea15965e3a7786500606845b0b6157212$
13  //
14  
15  #include "libcef_dll/cpptoc/x509certificate_cpptoc.h"
16  #include <algorithm>
17  #include "libcef_dll/cpptoc/binary_value_cpptoc.h"
18  #include "libcef_dll/cpptoc/x509cert_principal_cpptoc.h"
19  #include "libcef_dll/shutdown_checker.h"
20  
21  namespace {
22  
23  // MEMBER FUNCTIONS - Body may be edited by hand.
24  
25  cef_x509cert_principal_t* CEF_CALLBACK
x509certificate_get_subject(struct _cef_x509certificate_t * self)26  x509certificate_get_subject(struct _cef_x509certificate_t* self) {
27    shutdown_checker::AssertNotShutdown();
28  
29    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
30  
31    DCHECK(self);
32    if (!self)
33      return NULL;
34  
35    // Execute
36    CefRefPtr<CefX509CertPrincipal> _retval =
37        CefX509CertificateCppToC::Get(self)->GetSubject();
38  
39    // Return type: refptr_same
40    return CefX509CertPrincipalCppToC::Wrap(_retval);
41  }
42  
43  cef_x509cert_principal_t* CEF_CALLBACK
x509certificate_get_issuer(struct _cef_x509certificate_t * self)44  x509certificate_get_issuer(struct _cef_x509certificate_t* self) {
45    shutdown_checker::AssertNotShutdown();
46  
47    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
48  
49    DCHECK(self);
50    if (!self)
51      return NULL;
52  
53    // Execute
54    CefRefPtr<CefX509CertPrincipal> _retval =
55        CefX509CertificateCppToC::Get(self)->GetIssuer();
56  
57    // Return type: refptr_same
58    return CefX509CertPrincipalCppToC::Wrap(_retval);
59  }
60  
61  cef_binary_value_t* CEF_CALLBACK
x509certificate_get_serial_number(struct _cef_x509certificate_t * self)62  x509certificate_get_serial_number(struct _cef_x509certificate_t* self) {
63    shutdown_checker::AssertNotShutdown();
64  
65    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
66  
67    DCHECK(self);
68    if (!self)
69      return NULL;
70  
71    // Execute
72    CefRefPtr<CefBinaryValue> _retval =
73        CefX509CertificateCppToC::Get(self)->GetSerialNumber();
74  
75    // Return type: refptr_same
76    return CefBinaryValueCppToC::Wrap(_retval);
77  }
78  
79  cef_time_t CEF_CALLBACK
x509certificate_get_valid_start(struct _cef_x509certificate_t * self)80  x509certificate_get_valid_start(struct _cef_x509certificate_t* self) {
81    shutdown_checker::AssertNotShutdown();
82  
83    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
84  
85    DCHECK(self);
86    if (!self)
87      return CefTime();
88  
89    // Execute
90    cef_time_t _retval = CefX509CertificateCppToC::Get(self)->GetValidStart();
91  
92    // Return type: simple
93    return _retval;
94  }
95  
96  cef_time_t CEF_CALLBACK
x509certificate_get_valid_expiry(struct _cef_x509certificate_t * self)97  x509certificate_get_valid_expiry(struct _cef_x509certificate_t* self) {
98    shutdown_checker::AssertNotShutdown();
99  
100    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
101  
102    DCHECK(self);
103    if (!self)
104      return CefTime();
105  
106    // Execute
107    cef_time_t _retval = CefX509CertificateCppToC::Get(self)->GetValidExpiry();
108  
109    // Return type: simple
110    return _retval;
111  }
112  
113  cef_binary_value_t* CEF_CALLBACK
x509certificate_get_derencoded(struct _cef_x509certificate_t * self)114  x509certificate_get_derencoded(struct _cef_x509certificate_t* self) {
115    shutdown_checker::AssertNotShutdown();
116  
117    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
118  
119    DCHECK(self);
120    if (!self)
121      return NULL;
122  
123    // Execute
124    CefRefPtr<CefBinaryValue> _retval =
125        CefX509CertificateCppToC::Get(self)->GetDEREncoded();
126  
127    // Return type: refptr_same
128    return CefBinaryValueCppToC::Wrap(_retval);
129  }
130  
131  cef_binary_value_t* CEF_CALLBACK
x509certificate_get_pemencoded(struct _cef_x509certificate_t * self)132  x509certificate_get_pemencoded(struct _cef_x509certificate_t* self) {
133    shutdown_checker::AssertNotShutdown();
134  
135    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
136  
137    DCHECK(self);
138    if (!self)
139      return NULL;
140  
141    // Execute
142    CefRefPtr<CefBinaryValue> _retval =
143        CefX509CertificateCppToC::Get(self)->GetPEMEncoded();
144  
145    // Return type: refptr_same
146    return CefBinaryValueCppToC::Wrap(_retval);
147  }
148  
149  size_t CEF_CALLBACK
x509certificate_get_issuer_chain_size(struct _cef_x509certificate_t * self)150  x509certificate_get_issuer_chain_size(struct _cef_x509certificate_t* self) {
151    shutdown_checker::AssertNotShutdown();
152  
153    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
154  
155    DCHECK(self);
156    if (!self)
157      return 0;
158  
159    // Execute
160    size_t _retval = CefX509CertificateCppToC::Get(self)->GetIssuerChainSize();
161  
162    // Return type: simple
163    return _retval;
164  }
165  
166  void CEF_CALLBACK
x509certificate_get_derencoded_issuer_chain(struct _cef_x509certificate_t * self,size_t * chainCount,cef_binary_value_t ** chain)167  x509certificate_get_derencoded_issuer_chain(struct _cef_x509certificate_t* self,
168                                              size_t* chainCount,
169                                              cef_binary_value_t** chain) {
170    shutdown_checker::AssertNotShutdown();
171  
172    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
173  
174    DCHECK(self);
175    if (!self)
176      return;
177    // Verify param: chain; type: refptr_vec_same_byref
178    DCHECK(chainCount && (*chainCount == 0 || chain));
179    if (!chainCount || (*chainCount > 0 && !chain))
180      return;
181  
182    // Translate param: chain; type: refptr_vec_same_byref
183    std::vector<CefRefPtr<CefBinaryValue>> chainList;
184    if (chainCount && *chainCount > 0 && chain) {
185      for (size_t i = 0; i < *chainCount; ++i) {
186        chainList.push_back(CefBinaryValueCppToC::Unwrap(chain[i]));
187      }
188    }
189  
190    // Execute
191    CefX509CertificateCppToC::Get(self)->GetDEREncodedIssuerChain(chainList);
192  
193    // Restore param: chain; type: refptr_vec_same_byref
194    if (chainCount && chain) {
195      *chainCount = std::min(chainList.size(), *chainCount);
196      if (*chainCount > 0) {
197        for (size_t i = 0; i < *chainCount; ++i) {
198          chain[i] = CefBinaryValueCppToC::Wrap(chainList[i]);
199        }
200      }
201    }
202  }
203  
204  void CEF_CALLBACK
x509certificate_get_pemencoded_issuer_chain(struct _cef_x509certificate_t * self,size_t * chainCount,cef_binary_value_t ** chain)205  x509certificate_get_pemencoded_issuer_chain(struct _cef_x509certificate_t* self,
206                                              size_t* chainCount,
207                                              cef_binary_value_t** chain) {
208    shutdown_checker::AssertNotShutdown();
209  
210    // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
211  
212    DCHECK(self);
213    if (!self)
214      return;
215    // Verify param: chain; type: refptr_vec_same_byref
216    DCHECK(chainCount && (*chainCount == 0 || chain));
217    if (!chainCount || (*chainCount > 0 && !chain))
218      return;
219  
220    // Translate param: chain; type: refptr_vec_same_byref
221    std::vector<CefRefPtr<CefBinaryValue>> chainList;
222    if (chainCount && *chainCount > 0 && chain) {
223      for (size_t i = 0; i < *chainCount; ++i) {
224        chainList.push_back(CefBinaryValueCppToC::Unwrap(chain[i]));
225      }
226    }
227  
228    // Execute
229    CefX509CertificateCppToC::Get(self)->GetPEMEncodedIssuerChain(chainList);
230  
231    // Restore param: chain; type: refptr_vec_same_byref
232    if (chainCount && chain) {
233      *chainCount = std::min(chainList.size(), *chainCount);
234      if (*chainCount > 0) {
235        for (size_t i = 0; i < *chainCount; ++i) {
236          chain[i] = CefBinaryValueCppToC::Wrap(chainList[i]);
237        }
238      }
239    }
240  }
241  
242  }  // namespace
243  
244  // CONSTRUCTOR - Do not edit by hand.
245  
CefX509CertificateCppToC()246  CefX509CertificateCppToC::CefX509CertificateCppToC() {
247    GetStruct()->get_subject = x509certificate_get_subject;
248    GetStruct()->get_issuer = x509certificate_get_issuer;
249    GetStruct()->get_serial_number = x509certificate_get_serial_number;
250    GetStruct()->get_valid_start = x509certificate_get_valid_start;
251    GetStruct()->get_valid_expiry = x509certificate_get_valid_expiry;
252    GetStruct()->get_derencoded = x509certificate_get_derencoded;
253    GetStruct()->get_pemencoded = x509certificate_get_pemencoded;
254    GetStruct()->get_issuer_chain_size = x509certificate_get_issuer_chain_size;
255    GetStruct()->get_derencoded_issuer_chain =
256        x509certificate_get_derencoded_issuer_chain;
257    GetStruct()->get_pemencoded_issuer_chain =
258        x509certificate_get_pemencoded_issuer_chain;
259  }
260  
261  // DESTRUCTOR - Do not edit by hand.
262  
~CefX509CertificateCppToC()263  CefX509CertificateCppToC::~CefX509CertificateCppToC() {
264    shutdown_checker::AssertNotShutdown();
265  }
266  
267  template <>
268  CefRefPtr<CefX509Certificate> CefCppToCRefCounted<
269      CefX509CertificateCppToC,
270      CefX509Certificate,
UnwrapDerived(CefWrapperType type,cef_x509certificate_t * s)271      cef_x509certificate_t>::UnwrapDerived(CefWrapperType type,
272                                            cef_x509certificate_t* s) {
273    NOTREACHED() << "Unexpected class type: " << type;
274    return nullptr;
275  }
276  
277  template <>
278  CefWrapperType CefCppToCRefCounted<CefX509CertificateCppToC,
279                                     CefX509Certificate,
280                                     cef_x509certificate_t>::kWrapperType =
281      WT_X509CERTIFICATE;
282