SSL_get_ciphers.pod revision 337982
1=pod 2 3=head1 NAME 4 5SSL_get_ciphers, 6SSL_get_cipher_list, 7SSL_get_shared_ciphers 8- get list of available SSL_CIPHERs 9 10=head1 SYNOPSIS 11 12 #include <openssl/ssl.h> 13 14 STACK_OF(SSL_CIPHER) *SSL_get_ciphers(const SSL *ssl); 15 const char *SSL_get_cipher_list(const SSL *ssl, int priority); 16 char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size); 17 18=head1 DESCRIPTION 19 20SSL_get_ciphers() returns the stack of available SSL_CIPHERs for B<ssl>, 21sorted by preference. If B<ssl> is NULL or no ciphers are available, NULL 22is returned. 23 24SSL_get_cipher_list() returns a pointer to the name of the SSL_CIPHER 25listed for B<ssl> with B<priority>. If B<ssl> is NULL, no ciphers are 26available, or there are less ciphers than B<priority> available, NULL 27is returned. 28 29SSL_get_shared_ciphers() creates a colon separated and NUL terminated list of 30SSL_CIPHER names that are available in both the client and the server. B<buf> is 31the buffer that should be populated with the list of names and B<size> is the 32size of that buffer. A pointer to B<buf> is returned on success or NULL on 33error. If the supplied buffer is not large enough to contain the complete list 34of names then a truncated list of names will be returned. Note that just because 35a ciphersuite is available (i.e. it is configured in the cipher list) and shared 36by both the client and the server it does not mean that it is enabled (for 37example some ciphers may not be usable by a server if there is not a suitable 38certificate configured). This function will return available shared ciphersuites 39whether or not they are enabled. This is a server side function only and must 40only be called after the completion of the initial handshake. 41 42=head1 NOTES 43 44The details of the ciphers obtained by SSL_get_ciphers() can be obtained using 45the L<SSL_CIPHER_get_name(3)|SSL_CIPHER_get_name(3)> family of functions. 46 47Call SSL_get_cipher_list() with B<priority> starting from 0 to obtain the 48sorted list of available ciphers, until NULL is returned. 49 50=head1 RETURN VALUES 51 52See DESCRIPTION 53 54=head1 SEE ALSO 55 56L<ssl(3)|ssl(3)>, L<SSL_CTX_set_cipher_list(3)|SSL_CTX_set_cipher_list(3)>, 57L<SSL_CIPHER_get_name(3)|SSL_CIPHER_get_name(3)> 58 59=cut 60