Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

SSL_CTX_set_psk_client_callback (3openssl)

Name

SSL_CTX_set_psk_client_callback - set PSK client callback

Synopsis

#include <openssl/ssl.h>

void SSL_CTX_set_psk_client_callback(SSL_CTX *ctx,
unsigned int (*callback)(SSL *ssl, const char *hint,
char *identity, unsigned int max_identity_len,
unsigned char *psk, unsigned int max_psk_len));
void SSL_set_psk_client_callback(SSL *ssl,
unsigned int (*callback)(SSL *ssl, const char *hint,
char *identity, unsigned int max_identity_len,
unsigned char *psk, unsigned int max_psk_len));

Description

OpenSSL                              SSL_CTX_set_psk_client_callback(3openssl)



NAME
       SSL_CTX_set_psk_client_callback, SSL_set_psk_client_callback - set PSK
       client callback

SYNOPSIS
        #include <openssl/ssl.h>

        void SSL_CTX_set_psk_client_callback(SSL_CTX *ctx,
               unsigned int (*callback)(SSL *ssl, const char *hint,
               char *identity, unsigned int max_identity_len,
               unsigned char *psk, unsigned int max_psk_len));
        void SSL_set_psk_client_callback(SSL *ssl,
               unsigned int (*callback)(SSL *ssl, const char *hint,
               char *identity, unsigned int max_identity_len,
               unsigned char *psk, unsigned int max_psk_len));

DESCRIPTION
       A client application must provide a callback function which is called
       when the client is sending the ClientKeyExchange message to the server.

       The purpose of the callback function is to select the PSK identity and
       the pre-shared key to use during the connection setup phase.

       The callback is set using functions SSL_CTX_set_psk_client_callback()
       or SSL_set_psk_client_callback(). The callback function is given the
       connection in parameter ssl, a NULL-terminated PSK identity hint sent
       by the server in parameter hint, a buffer identity of length
       max_identity_len bytes where the the resulting NULL-terminated identity
       is to be stored, and a buffer psk of length max_psk_len bytes where the
       resulting pre-shared key is to be stored.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+--------------------------+
       |ATTRIBUTE TYPE |     ATTRIBUTE VALUE      |
       +---------------+--------------------------+
       |Availability   | library/security/openssl |
       +---------------+--------------------------+
       |Stability      | Pass-through uncommitted |
       +---------------+--------------------------+

NOTES
       Note that parameter hint given to the callback may be NULL.

       Source code for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at
       https://github.com/oracle/solaris-userland.  The original community
       source was downloaded from
       https://www.openssl.org/source/openssl-1.0.2ze.tar.gz.

       Further information about this software can be found on the open source
       community website at https://www.openssl.org/.

RETURN VALUES
       Return values from the client callback are interpreted as follows:

       On success (callback found a PSK identity and a pre-shared key to use)
       the length (> 0) of psk in bytes is returned.

       Otherwise or on errors callback should return 0. In this case the
       connection setup fails.




1.0.2ze                           2022-05-03
                                     SSL_CTX_set_psk_client_callback(3openssl)