1*9b05507aSschwarze.\" $OpenBSD: X509_INFO_new.3,v 1.3 2021/10/19 10:39:33 schwarze Exp $ 2ea47bfb8Sschwarze.\" Copyright (c) 2019 Ingo Schwarze <schwarze@openbsd.org> 3ea47bfb8Sschwarze.\" 4ea47bfb8Sschwarze.\" Permission to use, copy, modify, and distribute this software for any 5ea47bfb8Sschwarze.\" purpose with or without fee is hereby granted, provided that the above 6ea47bfb8Sschwarze.\" copyright notice and this permission notice appear in all copies. 7ea47bfb8Sschwarze.\" 8ea47bfb8Sschwarze.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9ea47bfb8Sschwarze.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10ea47bfb8Sschwarze.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11ea47bfb8Sschwarze.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12ea47bfb8Sschwarze.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13ea47bfb8Sschwarze.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14ea47bfb8Sschwarze.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15ea47bfb8Sschwarze.\" 16*9b05507aSschwarze.Dd $Mdocdate: October 19 2021 $ 17ea47bfb8Sschwarze.Dt X509_INFO_NEW 3 18ea47bfb8Sschwarze.Os 19ea47bfb8Sschwarze.Sh NAME 20ea47bfb8Sschwarze.Nm X509_INFO_new , 21ea47bfb8Sschwarze.Nm X509_INFO_free 22ea47bfb8Sschwarze.Nd X.509 certificate wrapper object 23ea47bfb8Sschwarze.Sh SYNOPSIS 24ea47bfb8Sschwarze.In openssl/x509.h 25ea47bfb8Sschwarze.Ft X509_INFO * 26ea47bfb8Sschwarze.Fn X509_INFO_new void 27ea47bfb8Sschwarze.Ft void 28ea47bfb8Sschwarze.Fn X509_INFO_free "X509_INFO *info" 29ea47bfb8Sschwarze.Sh DESCRIPTION 30ea47bfb8Sschwarze.Vt X509_INFO 31ea47bfb8Sschwarzeis a reference-counted wrapper object storing a pointer to an X.509 32ea47bfb8Sschwarzecertificate together with pointers to the associated private key 33ea47bfb8Sschwarzeand to an associated certificate revocation list. 34ea47bfb8SschwarzeIt is for example used internally by 35ea47bfb8Sschwarze.Xr X509_load_cert_crl_file 3 . 36ea47bfb8Sschwarze.Pp 37ea47bfb8Sschwarze.Fn X509_INFO_new 38ea47bfb8Sschwarzeallocates and initializes an empty 39ea47bfb8Sschwarze.Vt X509_INFO 40ea47bfb8Sschwarzeobject and sets its reference count to 1. 41ea47bfb8Sschwarze.Pp 42ea47bfb8Sschwarze.Fn X509_INFO_free 43ea47bfb8Sschwarzedecrements the reference count of 44ea47bfb8Sschwarze.Fa info 45ea47bfb8Sschwarzeby 1. 46ea47bfb8SschwarzeIf the reference count reaches 0, it frees all referenced objects 47ea47bfb8Sschwarzeas well as the storage needed for 48ea47bfb8Sschwarze.Fa info 49ea47bfb8Sschwarzeitself. 50ea47bfb8SschwarzeIf 51ea47bfb8Sschwarze.Fa info 52ea47bfb8Sschwarzeis a 53ea47bfb8Sschwarze.Dv NULL 54ea47bfb8Sschwarzepointer, no action occurs. 55ea47bfb8Sschwarze.Sh RETURN VALUES 56ea47bfb8Sschwarze.Fn X509_INFO_new 57ea47bfb8Sschwarzereturns the newly allocated 58ea47bfb8Sschwarze.Vt X509_INFO 59ea47bfb8Sschwarzeobject or 60ea47bfb8Sschwarze.Dv NULL 61ea47bfb8Sschwarzeif an error occurs. 62ea47bfb8Sschwarze.Sh SEE ALSO 637e22e691Sschwarze.Xr PEM_X509_INFO_read 3 , 64ea47bfb8Sschwarze.Xr X509_CRL_new 3 , 65*9b05507aSschwarze.Xr X509_new 3 , 66*9b05507aSschwarze.Xr X509_PKEY_new 3 67ea47bfb8Sschwarze.Sh HISTORY 68ea47bfb8Sschwarze.Fn X509_INFO_new 69ea47bfb8Sschwarzeand 70ea47bfb8Sschwarze.Fn X509_INFO_free 71ea47bfb8Sschwarzefirst appeared in SSLeay 0.5.1 and have been available since 72ea47bfb8Sschwarze.Ox 2.4 . 73