.\" DO NOT MODIFY THIS FILE! It was generated by gdoc. .TH "gnutls_srp_set_server_credentials_function" 3 "2.4.2" "gnutls" "gnutls" .SH NAME gnutls_srp_set_server_credentials_function \- Used to set a callback to retrieve the user's SRP credentials .SH SYNOPSIS .B #include .sp .BI "void gnutls_srp_set_server_credentials_function(gnutls_srp_server_credentials_t " cred ", gnutls_srp_server_credentials_function * " func ");" .SH ARGUMENTS .IP "gnutls_srp_server_credentials_t cred" 12 is a \fBgnutls_srp_server_credentials_t\fP structure. .IP "gnutls_srp_server_credentials_function * func" 12 is the callback function .SH "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); \fIusername\fP contains the actual username. The \fIsalt\fP, \fIverifier\fP, \fIgenerator\fP and \fIprime\fP must be filled in using the \fBgnutls_malloc()\fP. For convenience \fIprime\fP and \fIgenerator\fP 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. .SH "REPORTING BUGS" Report bugs to . .SH COPYRIGHT Copyright \(co 2008 Free Software Foundation. .br Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. .SH "SEE ALSO" The full documentation for .B gnutls is maintained as a Texinfo manual. If the .B info and .B gnutls programs are properly installed at your site, the command .IP .B info gnutls .PP should give you access to the complete manual.