Update documentation for SSL_is_server()
authorPaul Yang <yang.yang@baishancloud.com>
Sun, 9 Jul 2017 16:55:38 +0000 (00:55 +0800)
committerPauli <paul.dale@oracle.com>
Sun, 23 Jul 2017 21:59:40 +0000 (07:59 +1000)
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3893)

doc/man3/SSL_set_connect_state.pod

index e6a0f1d3f226ccd50cbef1c2ec14acd2d6a1f0d4..d747927a7005e07026f6665bd3c6a9401b4032a9 100644 (file)
@@ -2,7 +2,8 @@
 
 =head1 NAME
 
-SSL_set_connect_state, SSL_set_accept_state - prepare SSL object to work in client or server mode
+SSL_set_connect_state, SSL_set_accept_state, SSL_is_server
+- functions for manipulating and examining the client or server mode of an SSL object
 
 =head1 SYNOPSIS
 
@@ -12,12 +13,16 @@ SSL_set_connect_state, SSL_set_accept_state - prepare SSL object to work in clie
 
  void SSL_set_accept_state(SSL *ssl);
 
+ int SSL_is_server(const SSL *ssl);
+
 =head1 DESCRIPTION
 
 SSL_set_connect_state() sets B<ssl> to work in client mode.
 
 SSL_set_accept_state() sets B<ssl> to work in server mode.
 
+SSL_is_server() checks if B<ssl> is working in server mode.
+
 =head1 NOTES
 
 When the SSL_CTX object was created with L<SSL_CTX_new(3)>,
@@ -39,11 +44,19 @@ using L<SSL_write_ex(3)>, L<SSL_write(3)>, L<SSL_read_ex(3)>, or L<SSL_read(3)>,
 the handshake routines must be explicitly set in advance using either
 SSL_set_connect_state() or SSL_set_accept_state().
 
+If SSL_is_server() is called before SSL_set_connect_state() or
+SSL_set_accept_state() is called (either automatically or explicitly),
+the result depends on what method was used when SSL_CTX was created with
+L<SSL_CTX_new(3)>. If a generic method or a dedicated server method was
+passed to L<SSL_CTX_new(3)>, SSL_is_server() returns 1; otherwise, it returns 0.
+
 =head1 RETURN VALUES
 
 SSL_set_connect_state() and SSL_set_accept_state() do not return diagnostic
 information.
 
+SSL_is_server() returns 1 if B<ssl> is working in server mode or 0 for client mode.
+
 =head1 SEE ALSO
 
 L<ssl(7)>, L<SSL_new(3)>, L<SSL_CTX_new(3)>,
@@ -54,7 +67,7 @@ L<SSL_CTX_set_ssl_version(3)>
 
 =head1 COPYRIGHT
 
-Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved.
+Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved.
 
 Licensed under the OpenSSL license (the "License").  You may not use
 this file except in compliance with the License.  You can obtain a copy