]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/man3/X509_dup.pod
Cross-linked the man(1) pages of kdf & pkeyutl.
[thirdparty/openssl.git] / doc / man3 / X509_dup.pod
CommitLineData
12ce9ea2
RS
1=pod
2
3=head1 NAME
4
5DECLARE_ASN1_FUNCTIONS,
6IMPLEMENT_ASN1_FUNCTIONS,
7ASN1_ITEM,
8ACCESS_DESCRIPTION_free,
9ACCESS_DESCRIPTION_new,
fa743582
RS
10ADMISSIONS_free,
11ADMISSIONS_new,
12ADMISSION_SYNTAX_free,
13ADMISSION_SYNTAX_new,
12ce9ea2
RS
14ASIdOrRange_free,
15ASIdOrRange_new,
16ASIdentifierChoice_free,
17ASIdentifierChoice_new,
18ASIdentifiers_free,
19ASIdentifiers_new,
20ASRange_free,
21ASRange_new,
22AUTHORITY_INFO_ACCESS_free,
23AUTHORITY_INFO_ACCESS_new,
24AUTHORITY_KEYID_free,
25AUTHORITY_KEYID_new,
26BASIC_CONSTRAINTS_free,
27BASIC_CONSTRAINTS_new,
28CERTIFICATEPOLICIES_free,
29CERTIFICATEPOLICIES_new,
30CMS_ContentInfo_free,
31CMS_ContentInfo_new,
32CMS_ContentInfo_print_ctx,
33CMS_ReceiptRequest_free,
34CMS_ReceiptRequest_new,
35CRL_DIST_POINTS_free,
36CRL_DIST_POINTS_new,
37DIRECTORYSTRING_free,
38DIRECTORYSTRING_new,
39DISPLAYTEXT_free,
40DISPLAYTEXT_new,
41DIST_POINT_NAME_free,
42DIST_POINT_NAME_new,
43DIST_POINT_free,
44DIST_POINT_new,
45DSAparams_dup,
9ba6f347
KY
46ECPARAMETERS_free,
47ECPARAMETERS_new,
48ECPKPARAMETERS_free,
49ECPKPARAMETERS_new,
12ce9ea2
RS
50EDIPARTYNAME_free,
51EDIPARTYNAME_new,
52ESS_CERT_ID_dup,
53ESS_CERT_ID_free,
54ESS_CERT_ID_new,
55ESS_ISSUER_SERIAL_dup,
56ESS_ISSUER_SERIAL_free,
57ESS_ISSUER_SERIAL_new,
58ESS_SIGNING_CERT_dup,
59ESS_SIGNING_CERT_free,
60ESS_SIGNING_CERT_new,
61EXTENDED_KEY_USAGE_free,
62EXTENDED_KEY_USAGE_new,
63GENERAL_NAMES_free,
64GENERAL_NAMES_new,
65GENERAL_NAME_dup,
66GENERAL_NAME_free,
67GENERAL_NAME_new,
68GENERAL_SUBTREE_free,
69GENERAL_SUBTREE_new,
70IPAddressChoice_free,
71IPAddressChoice_new,
72IPAddressFamily_free,
73IPAddressFamily_new,
74IPAddressOrRange_free,
75IPAddressOrRange_new,
76IPAddressRange_free,
77IPAddressRange_new,
78ISSUING_DIST_POINT_free,
79ISSUING_DIST_POINT_new,
80NAME_CONSTRAINTS_free,
81NAME_CONSTRAINTS_new,
fa743582
RS
82NAMING_AUTHORITY_free,
83NAMING_AUTHORITY_new,
12ce9ea2
RS
84NETSCAPE_CERT_SEQUENCE_free,
85NETSCAPE_CERT_SEQUENCE_new,
86NETSCAPE_SPKAC_free,
87NETSCAPE_SPKAC_new,
88NETSCAPE_SPKI_free,
89NETSCAPE_SPKI_new,
90NOTICEREF_free,
91NOTICEREF_new,
92OCSP_BASICRESP_free,
93OCSP_BASICRESP_new,
94OCSP_CERTID_dup,
95OCSP_CERTID_new,
96OCSP_CERTSTATUS_free,
97OCSP_CERTSTATUS_new,
98OCSP_CRLID_free,
99OCSP_CRLID_new,
100OCSP_ONEREQ_free,
101OCSP_ONEREQ_new,
102OCSP_REQINFO_free,
103OCSP_REQINFO_new,
104OCSP_RESPBYTES_free,
105OCSP_RESPBYTES_new,
106OCSP_RESPDATA_free,
107OCSP_RESPDATA_new,
108OCSP_RESPID_free,
109OCSP_RESPID_new,
110OCSP_RESPONSE_new,
111OCSP_REVOKEDINFO_free,
112OCSP_REVOKEDINFO_new,
113OCSP_SERVICELOC_free,
114OCSP_SERVICELOC_new,
115OCSP_SIGNATURE_free,
116OCSP_SIGNATURE_new,
117OCSP_SINGLERESP_free,
118OCSP_SINGLERESP_new,
8869ad4a
AK
119OSSL_CMP_ITAV_free,
120OSSL_CMP_MSG_dup,
121OSSL_CMP_MSG_it,
122OSSL_CMP_MSG_free,
123OSSL_CMP_PKIHEADER_free,
124OSSL_CMP_PKIHEADER_it,
125OSSL_CMP_PKIHEADER_new,
126OSSL_CMP_PKISI_free,
127OSSL_CMP_PKISTATUS_it,
2a3b52ea 128OSSL_CRMF_CERTID_free,
8869ad4a 129OSSL_CRMF_CERTID_it,
2a3b52ea
DO
130OSSL_CRMF_CERTID_new,
131OSSL_CRMF_CERTTEMPLATE_free,
8869ad4a 132OSSL_CRMF_CERTTEMPLATE_it,
2a3b52ea
DO
133OSSL_CRMF_CERTTEMPLATE_new,
134OSSL_CRMF_ENCRYPTEDVALUE_free,
8869ad4a 135OSSL_CRMF_ENCRYPTEDVALUE_it,
2a3b52ea 136OSSL_CRMF_ENCRYPTEDVALUE_new,
8869ad4a
AK
137OSSL_CRMF_MSGS_free,
138OSSL_CRMF_MSGS_it,
139OSSL_CRMF_MSGS_new,
2a3b52ea 140OSSL_CRMF_MSG_free,
8869ad4a 141OSSL_CRMF_MSG_it,
2a3b52ea
DO
142OSSL_CRMF_MSG_new,
143OSSL_CRMF_PBMPARAMETER_free,
8869ad4a 144OSSL_CRMF_PBMPARAMETER_it,
2a3b52ea
DO
145OSSL_CRMF_PBMPARAMETER_new,
146OSSL_CRMF_PKIPUBLICATIONINFO_free,
8869ad4a 147OSSL_CRMF_PKIPUBLICATIONINFO_it,
2a3b52ea 148OSSL_CRMF_PKIPUBLICATIONINFO_new,
8869ad4a
AK
149OSSL_CRMF_SINGLEPUBINFO_free,
150OSSL_CRMF_SINGLEPUBINFO_it,
151OSSL_CRMF_SINGLEPUBINFO_new,
12ce9ea2
RS
152OTHERNAME_free,
153OTHERNAME_new,
154PBE2PARAM_free,
155PBE2PARAM_new,
156PBEPARAM_free,
157PBEPARAM_new,
158PBKDF2PARAM_free,
159PBKDF2PARAM_new,
160PKCS12_BAGS_free,
161PKCS12_BAGS_new,
162PKCS12_MAC_DATA_free,
163PKCS12_MAC_DATA_new,
164PKCS12_SAFEBAG_free,
165PKCS12_SAFEBAG_new,
166PKCS12_free,
167PKCS12_new,
168PKCS7_DIGEST_free,
169PKCS7_DIGEST_new,
170PKCS7_ENCRYPT_free,
171PKCS7_ENCRYPT_new,
172PKCS7_ENC_CONTENT_free,
173PKCS7_ENC_CONTENT_new,
174PKCS7_ENVELOPE_free,
175PKCS7_ENVELOPE_new,
176PKCS7_ISSUER_AND_SERIAL_free,
177PKCS7_ISSUER_AND_SERIAL_new,
178PKCS7_RECIP_INFO_free,
179PKCS7_RECIP_INFO_new,
180PKCS7_SIGNED_free,
181PKCS7_SIGNED_new,
182PKCS7_SIGNER_INFO_free,
183PKCS7_SIGNER_INFO_new,
184PKCS7_SIGN_ENVELOPE_free,
185PKCS7_SIGN_ENVELOPE_new,
186PKCS7_dup,
187PKCS7_free,
188PKCS7_new,
189PKCS7_print_ctx,
190PKCS8_PRIV_KEY_INFO_free,
191PKCS8_PRIV_KEY_INFO_new,
192PKEY_USAGE_PERIOD_free,
193PKEY_USAGE_PERIOD_new,
194POLICYINFO_free,
195POLICYINFO_new,
196POLICYQUALINFO_free,
197POLICYQUALINFO_new,
198POLICY_CONSTRAINTS_free,
199POLICY_CONSTRAINTS_new,
200POLICY_MAPPING_free,
201POLICY_MAPPING_new,
fa743582
RS
202PROFESSION_INFO_free,
203PROFESSION_INFO_new,
204PROFESSION_INFOS_free,
205PROFESSION_INFOS_new,
12ce9ea2
RS
206PROXY_CERT_INFO_EXTENSION_free,
207PROXY_CERT_INFO_EXTENSION_new,
208PROXY_POLICY_free,
209PROXY_POLICY_new,
210RSAPrivateKey_dup,
211RSAPublicKey_dup,
212RSA_OAEP_PARAMS_free,
213RSA_OAEP_PARAMS_new,
214RSA_PSS_PARAMS_free,
215RSA_PSS_PARAMS_new,
00606b06
HK
216SCRYPT_PARAMS_free,
217SCRYPT_PARAMS_new,
12ce9ea2
RS
218SXNETID_free,
219SXNETID_new,
220SXNET_free,
221SXNET_new,
222TLS_FEATURE_free,
223TLS_FEATURE_new,
224TS_ACCURACY_dup,
225TS_ACCURACY_free,
226TS_ACCURACY_new,
227TS_MSG_IMPRINT_dup,
228TS_MSG_IMPRINT_free,
229TS_MSG_IMPRINT_new,
230TS_REQ_dup,
231TS_REQ_free,
232TS_REQ_new,
233TS_RESP_dup,
234TS_RESP_free,
235TS_RESP_new,
236TS_STATUS_INFO_dup,
237TS_STATUS_INFO_free,
238TS_STATUS_INFO_new,
239TS_TST_INFO_dup,
240TS_TST_INFO_free,
241TS_TST_INFO_new,
242USERNOTICE_free,
243USERNOTICE_new,
244X509_ALGOR_free,
245X509_ALGOR_new,
246X509_ATTRIBUTE_dup,
247X509_ATTRIBUTE_free,
248X509_ATTRIBUTE_new,
249X509_CERT_AUX_free,
250X509_CERT_AUX_new,
251X509_CINF_free,
252X509_CINF_new,
253X509_CRL_INFO_free,
254X509_CRL_INFO_new,
12ce9ea2
RS
255X509_CRL_dup,
256X509_CRL_free,
257X509_CRL_new,
258X509_EXTENSION_dup,
259X509_EXTENSION_free,
260X509_EXTENSION_new,
261X509_NAME_ENTRY_dup,
262X509_NAME_ENTRY_free,
263X509_NAME_ENTRY_new,
264X509_NAME_dup,
265X509_NAME_free,
266X509_NAME_new,
267X509_REQ_INFO_free,
268X509_REQ_INFO_new,
269X509_REQ_dup,
270X509_REQ_free,
271X509_REQ_new,
272X509_REVOKED_dup,
273X509_REVOKED_free,
274X509_REVOKED_new,
275X509_SIG_free,
276X509_SIG_new,
277X509_VAL_free,
278X509_VAL_new,
279X509_dup,
280- ASN1 object utilities
281
282=head1 SYNOPSIS
283
b97fdb57
RL
284=for comment generic
285
12ce9ea2
RS
286 #include <openssl/asn1t.h>
287
91da5e77
RS
288 DECLARE_ASN1_FUNCTIONS(type)
289 IMPLEMENT_ASN1_FUNCTIONS(stname)
12ce9ea2
RS
290
291 typedef struct ASN1_ITEM_st ASN1_ITEM;
292
293 extern const ASN1_ITEM TYPE_it;
294 TYPE *TYPE_new(void);
9fdcc21f 295 TYPE *TYPE_dup(const TYPE *a);
12ce9ea2
RS
296 void TYPE_free(TYPE *a);
297 int TYPE_print_ctx(BIO *out, TYPE *a, int indent, const ASN1_PCTX *pctx);
298
12ce9ea2
RS
299=head1 DESCRIPTION
300
301In the description below, I<TYPE> is used
302as a placeholder for any of the OpenSSL datatypes, such as I<X509>.
303
304The OpenSSL ASN1 parsing library templates are like a data-driven bytecode
305interpreter.
306Every ASN1 object as a global variable, TYPE_it, that describes the item
307such as its fields. (On systems which cannot export variables from shared
308libraries, the global is instead a function which returns a pointer to a
309static variable.
310
311The macro DECLARE_ASN1_FUNCTIONS() is typically used in header files
312to generate the function declarations.
313
314The macro IMPLEMENT_ASN1_FUNCTIONS() is used once in a source file
315to generate the function bodies.
316
317
318TYPE_new() allocates an empty object of the indicated type.
319The object returned must be released by calling TYPE_free().
320
9fdcc21f 321TYPE_dup() copies an existing object, leaving it untouched.
12ce9ea2
RS
322
323TYPE_free() releases the object and all pointers and sub-objects
324within it.
325
326TYPE_print_ctx() prints the object B<a> on the specified BIO B<out>.
327Each line will be prefixed with B<indent> spaces.
328The B<pctx> specifies the printing context and is for internal
329use; use NULL to get the default behavior. If a print function is
330user-defined, then pass in any B<pctx> down to any nested calls.
331
332=head1 RETURN VALUES
333
334TYPE_new() and TYPE_dup() return a pointer to the object or NULL on failure.
335
336TYPE_print_ctx() returns 1 on success or zero on failure.
337
338=head1 COPYRIGHT
339
6738bf14 340Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
12ce9ea2 341
4746f25a 342Licensed under the Apache License 2.0 (the "License"). You may not use
12ce9ea2
RS
343this file except in compliance with the License. You can obtain a copy
344in the file LICENSE in the source distribution or at
345L<https://www.openssl.org/source/license.html>.
346
347=cut