Name

gnutls_srp_set_server_credentials_function — Used to set a callback to retrieve the user's SRP credentials

Synopsis

#include <gnutls/gnutls.h>
void gnutls_srp_set_server_credentials_function( gnutls_srp_server_credentials_t cred,
  gnutls_srp_server_credentials_function * func);
 

ARGUMENTS

gnutls_srp_server_credentials_t cred

is a gnutls_srp_server_credentials_t structure.

gnutls_srp_server_credentials_function * func

is the callback function

DESCRIPTION

This function can be used to set a callback to retrieve the user's SRP credentials. The callback's function form is: int (*callback)(gnutls_session_t, const char* username, gnutls_datum_t* salt, gnutls_datum_t *verifier, gnutls_datum_t* g, gnutls_datum_t* n);

username contains the actual username. The salt, verifier, generator and prime must be filled in using the gnutls_malloc(). For convenience prime and generator may also be one of the static parameters defined in extra.h.

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

In order to prevent attackers from guessing valid usernames, if a user does not exist, g and n values should be filled in using a random user's parameters. In that case the callback must return the special value (1).

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

REPORTING BUGS

Report bugs to <[email protected]>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/

SEE ALSO

The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command

info gnutls

should give you access to the complete manual.

COPYRIGHT

Copyright © 2008 Free Software Foundation.

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.