



@deftypefun {void} {gnutls_psk_set_server_credentials_function2} (gnutls_psk_server_credentials_t @var{cred}, gnutls_psk_server_credentials_function2 @var{func})
@var{cred}: is a @code{gnutls_psk_server_credentials_t}  type.

@var{func}: is the callback function

This function can be used to set a callback to retrieve the user's PSK credentials.
The callback's function form is:
int (*callback)(gnutls_session_t, const gnutls_datum_t* username,
gnutls_datum_t* key);

This callback function has the same semantics as that of @code{gnutls_psk_set_server_credentials_function()} ,
but it allows non-string usernames to be used.

 @code{username} contains the actual username.
The  @code{key} must be filled in using the @code{gnutls_malloc()} .

In case the callback returned a negative number then gnutls will
assume that the username does not exist.

The callback function will only be called once per handshake.  The
callback function should return 0 on success, while -1 indicates
an error.
@end deftypefun
