1.\" $OpenBSD: SSL_SESSION_get_time.3,v 1.8 2019/06/08 15:25:43 schwarze Exp $ 2.\" OpenSSL b97fdb57 Nov 11 09:33:09 2016 +0100 3.\" 4.\" This file was written by Lutz Jaenicke <jaenicke@openssl.org>. 5.\" Copyright (c) 2001, 2005, 2006, 2016 The OpenSSL Project. 6.\" All rights reserved. 7.\" 8.\" Redistribution and use in source and binary forms, with or without 9.\" modification, are permitted provided that the following conditions 10.\" are met: 11.\" 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 15.\" 2. Redistributions in binary form must reproduce the above copyright 16.\" notice, this list of conditions and the following disclaimer in 17.\" the documentation and/or other materials provided with the 18.\" distribution. 19.\" 20.\" 3. All advertising materials mentioning features or use of this 21.\" software must display the following acknowledgment: 22.\" "This product includes software developed by the OpenSSL Project 23.\" for use in the OpenSSL Toolkit. (http://www.openssl.org/)" 24.\" 25.\" 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 26.\" endorse or promote products derived from this software without 27.\" prior written permission. For written permission, please contact 28.\" openssl-core@openssl.org. 29.\" 30.\" 5. Products derived from this software may not be called "OpenSSL" 31.\" nor may "OpenSSL" appear in their names without prior written 32.\" permission of the OpenSSL Project. 33.\" 34.\" 6. Redistributions of any form whatsoever must retain the following 35.\" acknowledgment: 36.\" "This product includes software developed by the OpenSSL Project 37.\" for use in the OpenSSL Toolkit (http://www.openssl.org/)" 38.\" 39.\" THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 40.\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 41.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 42.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 43.\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 44.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 45.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 46.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 47.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 48.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 49.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 50.\" OF THE POSSIBILITY OF SUCH DAMAGE. 51.\" 52.Dd $Mdocdate: June 8 2019 $ 53.Dt SSL_SESSION_GET_TIME 3 54.Os 55.Sh NAME 56.Nm SSL_SESSION_get_time , 57.Nm SSL_SESSION_set_time , 58.Nm SSL_SESSION_get_timeout , 59.Nm SSL_SESSION_set_timeout , 60.Nm SSL_get_time , 61.Nm SSL_set_time , 62.Nm SSL_get_timeout , 63.Nm SSL_set_timeout 64.Nd retrieve and manipulate session time and timeout settings 65.Sh SYNOPSIS 66.In openssl/ssl.h 67.Ft long 68.Fn SSL_SESSION_get_time "const SSL_SESSION *s" 69.Ft long 70.Fn SSL_SESSION_set_time "SSL_SESSION *s" "long tm" 71.Ft long 72.Fn SSL_SESSION_get_timeout "const SSL_SESSION *s" 73.Ft long 74.Fn SSL_SESSION_set_timeout "SSL_SESSION *s" "long tm" 75.Ft long 76.Fn SSL_get_time "const SSL_SESSION *s" 77.Ft long 78.Fn SSL_set_time "SSL_SESSION *s" "long tm" 79.Ft long 80.Fn SSL_get_timeout "const SSL_SESSION *s" 81.Ft long 82.Fn SSL_set_timeout "SSL_SESSION *s" "long tm" 83.Sh DESCRIPTION 84.Fn SSL_SESSION_get_time 85returns the time at which the session 86.Fa s 87was established. 88The time is given in seconds since the Epoch and therefore compatible to the 89time delivered by the 90.Xr time 3 91call. 92.Pp 93.Fn SSL_SESSION_set_time 94replaces the creation time of the session 95.Fa s 96with 97the chosen value 98.Fa tm . 99.Pp 100.Fn SSL_SESSION_get_timeout 101returns the timeout value set for session 102.Fa s 103in seconds. 104.Pp 105.Fn SSL_SESSION_set_timeout 106sets the timeout value for session 107.Fa s 108in seconds to 109.Fa tm . 110.Pp 111The 112.Fn SSL_get_time , 113.Fn SSL_set_time , 114.Fn SSL_get_timeout , 115and 116.Fn SSL_set_timeout 117functions are synonyms for the 118.Fn SSL_SESSION_* 119counterparts. 120.Pp 121Sessions are expired by examining the creation time and the timeout value. 122Both are set at creation time of the session to the actual time and the default 123timeout value at creation, respectively, as set by 124.Xr SSL_CTX_set_timeout 3 . 125Using these functions it is possible to extend or shorten the lifetime of the 126session. 127.Sh RETURN VALUES 128.Fn SSL_SESSION_get_time 129and 130.Fn SSL_SESSION_get_timeout 131return the currently valid values. 132.Pp 133.Fn SSL_SESSION_set_time 134and 135.Fn SSL_SESSION_set_timeout 136return 1 on success. 137.Pp 138If any of the function is passed the 139.Dv NULL 140pointer for the session 141.Fa s , 1420 is returned. 143.Sh SEE ALSO 144.Xr ssl 3 , 145.Xr SSL_CTX_set_timeout 3 , 146.Xr SSL_get_default_timeout 3 , 147.Xr SSL_get_session 3 , 148.Xr SSL_SESSION_has_ticket 3 , 149.Xr SSL_SESSION_new 3 150.Sh HISTORY 151.Fn SSL_get_time , 152.Fn SSL_get_timeout , 153and 154.Fn SSL_set_timeout 155appeared in SSLeay 0.4 or earlier. 156.Fn SSL_set_time 157first appeared in SSLeay 0.5.2. 158.Fn SSL_SESSION_get_time , 159.Fn SSL_SESSION_set_time , 160.Fn SSL_SESSION_get_timeout , 161and 162.Fn SSL_SESSION_set_timeout 163first appeared in SSLeay 0.9.0. 164All these functions have been available since 165.Ox 2.4 . 166