summaryrefslogtreecommitdiff
path: root/static/openbsd/man3/SSL_state_string.3
diff options
context:
space:
mode:
Diffstat (limited to 'static/openbsd/man3/SSL_state_string.3')
-rw-r--r--static/openbsd/man3/SSL_state_string.3111
1 files changed, 111 insertions, 0 deletions
diff --git a/static/openbsd/man3/SSL_state_string.3 b/static/openbsd/man3/SSL_state_string.3
new file mode 100644
index 00000000..d202056e
--- /dev/null
+++ b/static/openbsd/man3/SSL_state_string.3
@@ -0,0 +1,111 @@
+.\" $OpenBSD: SSL_state_string.3,v 1.5 2025/06/08 22:52:00 schwarze Exp $
+.\" OpenSSL b97fdb57 Nov 11 09:33:09 2016 +0100
+.\"
+.\" This file was written by Lutz Jaenicke <jaenicke@openssl.org>.
+.\" Copyright (c) 2001, 2005 The OpenSSL Project. All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\"
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in
+.\" the documentation and/or other materials provided with the
+.\" distribution.
+.\"
+.\" 3. All advertising materials mentioning features or use of this
+.\" software must display the following acknowledgment:
+.\" "This product includes software developed by the OpenSSL Project
+.\" for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
+.\"
+.\" 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
+.\" endorse or promote products derived from this software without
+.\" prior written permission. For written permission, please contact
+.\" openssl-core@openssl.org.
+.\"
+.\" 5. Products derived from this software may not be called "OpenSSL"
+.\" nor may "OpenSSL" appear in their names without prior written
+.\" permission of the OpenSSL Project.
+.\"
+.\" 6. Redistributions of any form whatsoever must retain the following
+.\" acknowledgment:
+.\" "This product includes software developed by the OpenSSL Project
+.\" for use in the OpenSSL Toolkit (http://www.openssl.org/)"
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
+.\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
+.\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+.\" OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd $Mdocdate: June 8 2025 $
+.Dt SSL_STATE_STRING 3
+.Os
+.Sh NAME
+.Nm SSL_state_string ,
+.Nm SSL_state_string_long
+.Nd get textual description of state of an SSL object
+.Sh SYNOPSIS
+.Lb libssl libcrypto
+.In openssl/ssl.h
+.Ft const char *
+.Fn SSL_state_string "const SSL *ssl"
+.Ft const char *
+.Fn SSL_state_string_long "const SSL *ssl"
+.Sh DESCRIPTION
+.Fn SSL_state_string
+returns a 6 letter string indicating the current state of the
+.Vt SSL
+object
+.Fa ssl .
+.Pp
+.Fn SSL_state_string_long
+returns a string indicating the current state of the
+.Vt SSL
+object
+.Fa ssl .
+.Pp
+During its use, an
+.Vt SSL
+object passes several states.
+The state is internally maintained.
+Querying the state information is not very informative before or when a
+connection has been established.
+It however can be of significant interest during the handshake.
+.Pp
+When using non-blocking sockets,
+the function call performing the handshake may return with
+.Dv SSL_ERROR_WANT_READ
+or
+.Dv SSL_ERROR_WANT_WRITE
+condition, so that
+.Fn SSL_state_string[_long]
+may be called.
+.Pp
+For both blocking or non-blocking sockets,
+the details state information can be used within the
+.Fn info_callback
+function set with the
+.Xr SSL_set_info_callback 3
+call.
+.Sh RETURN VALUES
+Detailed description of possible states to be included later.
+.Sh SEE ALSO
+.Xr ssl 3 ,
+.Xr SSL_CTX_set_info_callback 3
+.Sh HISTORY
+.Fn SSL_state_string
+and
+.Fn SSL_state_string_long
+first appeared in SSLeay 0.6.0 and have been available since
+.Ox 2.4 .