1.\" $OpenBSD: PEM_read_SSL_SESSION.3,v 1.4 2019/06/12 09:36:30 schwarze Exp $ 2.\" OpenSSL doc/man3/PEM_read_CMS.pod b97fdb57 Nov 11 09:33:09 2016 +0100 3.\" 4.\" This file was written by Rich Salz <rsalz@openssl.org>. 5.\" Copyright (c) 2016 The OpenSSL Project. All rights reserved. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 11.\" 1. Redistributions of source code must retain the above copyright 12.\" notice, this list of conditions and the following disclaimer. 13.\" 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in 16.\" the documentation and/or other materials provided with the 17.\" distribution. 18.\" 19.\" 3. All advertising materials mentioning features or use of this 20.\" software must display the following acknowledgment: 21.\" "This product includes software developed by the OpenSSL Project 22.\" for use in the OpenSSL Toolkit. (http://www.openssl.org/)" 23.\" 24.\" 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 25.\" endorse or promote products derived from this software without 26.\" prior written permission. For written permission, please contact 27.\" openssl-core@openssl.org. 28.\" 29.\" 5. Products derived from this software may not be called "OpenSSL" 30.\" nor may "OpenSSL" appear in their names without prior written 31.\" permission of the OpenSSL Project. 32.\" 33.\" 6. Redistributions of any form whatsoever must retain the following 34.\" acknowledgment: 35.\" "This product includes software developed by the OpenSSL Project 36.\" for use in the OpenSSL Toolkit (http://www.openssl.org/)" 37.\" 38.\" THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 39.\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 40.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 41.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 42.\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 43.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 44.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 45.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 46.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 47.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 48.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 49.\" OF THE POSSIBILITY OF SUCH DAMAGE. 50.\" 51.Dd $Mdocdate: June 12 2019 $ 52.Dt PEM_READ_SSL_SESSION 3 53.Os 54.Sh NAME 55.Nm PEM_read_SSL_SESSION , 56.Nm PEM_read_bio_SSL_SESSION , 57.Nm PEM_write_SSL_SESSION , 58.Nm PEM_write_bio_SSL_SESSION 59.Nd encode and decode SSL session objects in PEM format 60.Sh SYNOPSIS 61.In openssl/ssl.h 62.Ft SSL_SESSION * 63.Fo PEM_read_SSL_SESSION 64.Fa "FILE *fp" 65.Fa "SSL_SESSION **a" 66.Fa "pem_password_cb *cb" 67.Fa "void *u" 68.Fc 69.Ft SSL_SESSION * 70.Fo PEM_read_bio_SSL_SESSION 71.Fa "BIO *bp" 72.Fa "SSL_SESSION **a" 73.Fa "pem_password_cb *cb" 74.Fa "void *u" 75.Fc 76.Ft int 77.Fo PEM_write_SSL_SESSION 78.Fa "FILE *fp" 79.Fa "const SSL_SESSION *a" 80.Fc 81.Ft int 82.Fo PEM_write_bio_SSL_SESSION 83.Fa "BIO *bp" 84.Fa "const SSL_SESSION *a" 85.Fc 86.Sh DESCRIPTION 87These routines convert between local instances of ASN.1 88.Vt SSL_SESSION 89objects and the PEM encoding. 90.Pp 91.Fn PEM_read_SSL_SESSION 92reads a PEM-encoded 93.Vt SSL_SESSION 94object from the file 95.Fa fp 96and returns it. 97The 98.Fa cb 99and 100.Fa u 101parameters are as described in 102.Xr PEM_read_bio_PrivateKey 3 . 103.Pp 104.Fn PEM_read_bio_SSL_SESSION 105is similar to 106.Fn PEM_read_SSL_SESSION 107but reads from the BIO 108.Fa bp . 109.Pp 110.Fn PEM_write_SSL_SESSION 111writes the PEM encoding of the object 112.Fa a 113to the file 114.Fa fp . 115.Pp 116.Fn PEM_write_bio_SSL_SESSION 117similarly writes to the BIO 118.Fa bp . 119.Sh RETURN VALUES 120.Fn PEM_read_SSL_SESSION 121and 122.Fn PEM_read_bio_SSL_SESSION 123return a pointer to an allocated object, which should be released by 124calling 125.Xr SSL_SESSION_free 3 , 126or 127.Dv NULL 128on error. 129.Pp 130.Fn PEM_write_SSL_SESSION 131and 132.Fn PEM_write_bio_SSL_SESSION 133return the number of bytes written or 0 on error. 134.Sh SEE ALSO 135.Xr PEM_read 3 , 136.Xr ssl 3 137.Sh HISTORY 138.Fn PEM_read_SSL_SESSION 139and 140.Fn PEM_write_SSL_SESSION 141first appeared in SSLeay 0.5.2. 142.Fn PEM_read_bio_SSL_SESSION 143and 144.Fn PEM_write_bio_SSL_SESSION 145first appeared in SSLeay 0.6.0. 146These functions have been available since 147.Ox 2.4 . 148