MirOS Manual: d2i_SSL_SESSION(3), i2d_SSL_SESSION(3)


D2I_SSL_SESSION(3)           OpenSSL           D2I_SSL_SESSION(3)

NAME

     d2i_SSL_SESSION, i2d_SSL_SESSION - convert SSL_SESSION
     object from/to ASN1 representation

SYNOPSIS

      #include <openssl/ssl.h>

      SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp, long length);
      int i2d_SSL_SESSION(SSL_SESSION *in, unsigned char **pp);

DESCRIPTION

     d2i_SSL_SESSION() transforms the external ASN1 representa-
     tion of an SSL/TLS session, stored as binary data at loca-
     tion pp with length length, into an SSL_SESSION object.

     i2d_SSL_SESSION() transforms the SSL_SESSION object in into
     the ASN1 representation and stores it into the memory loca-
     tion pointed to by pp. The length of the resulting ASN1
     representation is returned. If pp is the NULL pointer, only
     the length is calculated and returned.

NOTES

     The SSL_SESSION object is built from several malloc()ed
     parts, it can therefore not be moved, copied or stored
     directly. In order to store session data on disk or into a
     database, it must be transformed into a binary ASN1
     representation.

     When using d2i_SSL_SESSION(), the SSL_SESSION object is
     automatically allocated. The reference count is 1, so that
     the session must be explicitly removed using
     SSL_SESSION_free(3), unless the SSL_SESSION object is com-
     pletely taken over, when being called inside the
     get_session_cb() (see SSL_CTX_sess_set_get_cb(3)).

     SSL_SESSION objects keep internal link information about the
     session cache list, when being inserted into one SSL_CTX
     object's session cache. One SSL_SESSION object, regardless
     of its reference count, must therefore only be used with one
     SSL_CTX object (and the SSL objects created from this
     SSL_CTX object).

     When using i2d_SSL_SESSION(), the memory location pointed to
     by pp must be large enough to hold the binary representation
     of the session. There is no known limit on the size of the
     created ASN1 representation, so the necessary amount of
     space should be obtained by first calling i2d_SSL_SESSION()
     with pp=NULL, and obtain the size needed, then allocate the
     memory and call i2d_SSL_SESSION() again.

RETURN VALUES

     d2i_SSL_SESSION() returns a pointer to the newly allocated

MirOS BSD #10-current      2005-04-29                           1

D2I_SSL_SESSION(3)           OpenSSL           D2I_SSL_SESSION(3)

     SSL_SESSION object. In case of failure the NULL-pointer is
     returned and the error message can be retrieved from the
     error stack.

     i2d_SSL_SESSION() returns the size of the ASN1 representa-
     tion in bytes. When the session is not valid, 0 is returned
     and no operation is performed.

SEE ALSO

     ssl(3), SSL_SESSION_free(3), SSL_CTX_sess_set_get_cb(3)

MirOS BSD #10-current      2005-04-29                           2

Generated on 2017-04-03 16:26:17 by $MirOS: src/scripts/roff2htm,v 1.88 2017/01/29 00:51:06 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002–2017 The MirOS Project, Germany.
This product includes material provided by mirabilos.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.