|
Packit |
aea12f |
.\" DO NOT MODIFY THIS FILE! It was generated by gdoc.
|
|
Packit Service |
991b93 |
.TH "gnutls_srp_set_server_credentials_function" 3 "3.6.14" "gnutls" "gnutls"
|
|
Packit |
aea12f |
.SH NAME
|
|
Packit |
aea12f |
gnutls_srp_set_server_credentials_function \- API function
|
|
Packit |
aea12f |
.SH SYNOPSIS
|
|
Packit |
aea12f |
.B #include <gnutls/gnutls.h>
|
|
Packit |
aea12f |
.sp
|
|
Packit |
aea12f |
.BI "void gnutls_srp_set_server_credentials_function(gnutls_srp_server_credentials_t " cred ", gnutls_srp_server_credentials_function * " func ");"
|
|
Packit |
aea12f |
.SH ARGUMENTS
|
|
Packit |
aea12f |
.IP "gnutls_srp_server_credentials_t cred" 12
|
|
Packit |
aea12f |
is a \fBgnutls_srp_server_credentials_t\fP type.
|
|
Packit |
aea12f |
.IP "gnutls_srp_server_credentials_function * func" 12
|
|
Packit |
aea12f |
is the callback function
|
|
Packit |
aea12f |
.SH "DESCRIPTION"
|
|
Packit |
aea12f |
This function can be used to set a callback to retrieve the user's
|
|
Packit |
aea12f |
SRP credentials. The callback's function form is:
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
int (*callback)(gnutls_session_t, const char* username,
|
|
Packit |
aea12f |
gnutls_datum_t *salt, gnutls_datum_t *verifier, gnutls_datum_t *generator,
|
|
Packit |
aea12f |
gnutls_datum_t *prime);
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
\fIusername\fP contains the actual username.
|
|
Packit |
aea12f |
The \fIsalt\fP , \fIverifier\fP , \fIgenerator\fP and \fIprime\fP must be filled
|
|
Packit |
aea12f |
in using the \fBgnutls_malloc()\fP. For convenience \fIprime\fP and \fIgenerator\fP may also be one of the static parameters defined in gnutls.h.
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
Initially, the data field is NULL in every \fBgnutls_datum_t\fP
|
|
Packit |
aea12f |
structure that the callback has to fill in. When the
|
|
Packit |
aea12f |
callback is done GnuTLS deallocates all of those buffers
|
|
Packit |
aea12f |
which are non\-NULL, regardless of the return value.
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
In order to prevent attackers from guessing valid usernames,
|
|
Packit |
aea12f |
if a user does not exist, g and n values should be filled in
|
|
Packit |
aea12f |
using a random user's parameters. In that case the callback must
|
|
Packit |
aea12f |
return the special value (1).
|
|
Packit |
aea12f |
See \fBgnutls_srp_set_server_fake_salt_seed\fP too.
|
|
Packit |
aea12f |
If this is not required for your application, return a negative
|
|
Packit |
aea12f |
number from the callback to abort the handshake.
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
The callback function will only be called once per handshake.
|
|
Packit |
aea12f |
The callback function should return 0 on success, while
|
|
Packit |
aea12f |
\-1 indicates an error.
|
|
Packit |
aea12f |
.SH "REPORTING BUGS"
|
|
Packit |
aea12f |
Report bugs to <bugs@gnutls.org>.
|
|
Packit |
aea12f |
.br
|
|
Packit |
aea12f |
Home page: https://www.gnutls.org
|
|
Packit |
aea12f |
|
|
Packit |
aea12f |
.SH COPYRIGHT
|
|
Packit Service |
991b93 |
Copyright \(co 2001- Free Software Foundation, Inc., and others.
|
|
Packit |
aea12f |
.br
|
|
Packit |
aea12f |
Copying and distribution of this file, with or without modification,
|
|
Packit |
aea12f |
are permitted in any medium without royalty provided the copyright
|
|
Packit |
aea12f |
notice and this notice are preserved.
|
|
Packit |
aea12f |
.SH "SEE ALSO"
|
|
Packit |
aea12f |
The full documentation for
|
|
Packit |
aea12f |
.B gnutls
|
|
Packit |
aea12f |
is maintained as a Texinfo manual.
|
|
Packit |
aea12f |
If the /usr/share/doc/gnutls/
|
|
Packit |
aea12f |
directory does not contain the HTML form visit
|
|
Packit |
aea12f |
.B
|
|
Packit |
aea12f |
.IP https://www.gnutls.org/manual/
|
|
Packit |
aea12f |
.PP
|