Blame doc/manpages/gnutls_certificate_set_retrieve_function.3

Packit aea12f
.\" DO NOT MODIFY THIS FILE!  It was generated by gdoc.
Packit Service 991b93
.TH "gnutls_certificate_set_retrieve_function" 3 "3.6.14" "gnutls" "gnutls"
Packit aea12f
.SH NAME
Packit aea12f
gnutls_certificate_set_retrieve_function \- API function
Packit aea12f
.SH SYNOPSIS
Packit aea12f
.B #include <gnutls/gnutls.h>
Packit aea12f
.sp
Packit aea12f
.BI "void gnutls_certificate_set_retrieve_function(gnutls_certificate_credentials_t " cred ", gnutls_certificate_retrieve_function * " func ");"
Packit aea12f
.SH ARGUMENTS
Packit aea12f
.IP "gnutls_certificate_credentials_t cred" 12
Packit aea12f
is a \fBgnutls_certificate_credentials_t\fP type.
Packit aea12f
.IP "gnutls_certificate_retrieve_function * func" 12
Packit aea12f
is the callback function
Packit aea12f
.SH "DESCRIPTION"
Packit aea12f
This function sets a callback to be called in order to retrieve the
Packit aea12f
certificate to be used in the handshake. The callback will take control
Packit aea12f
only if a certificate is requested by the peer. You are advised
Packit aea12f
to use \fBgnutls_certificate_set_retrieve_function2()\fP because it
Packit aea12f
is much more efficient in the processing it requires from gnutls.
Packit aea12f
Packit aea12f
The callback's function prototype is:
Packit aea12f
int (*callback)(gnutls_session_t, const gnutls_datum_t* req_ca_dn, int nreqs,
Packit aea12f
const gnutls_pk_algorithm_t* pk_algos, int pk_algos_length, gnutls_retr2_st* st);
Packit aea12f
Packit aea12f
 \fIreq_ca_dn\fP is only used in X.509 certificates.
Packit aea12f
Contains a list with the CA names that the server considers trusted.
Packit aea12f
This is a hint and typically the client should send a certificate that is signed
Packit aea12f
by one of these CAs. These names, when available, are DER encoded. To get a more
Packit aea12f
meaningful value use the function \fBgnutls_x509_rdn_get()\fP.
Packit aea12f
Packit aea12f
 \fIpk_algos\fP contains a list with server's acceptable public key algorithms.
Packit aea12f
The certificate returned should support the server's given algorithms.
Packit aea12f
Packit aea12f
 \fIst\fP should contain the certificates and private keys.
Packit aea12f
Packit aea12f
If the callback function is provided then gnutls will call it, in the
Packit aea12f
handshake, after the certificate request message has been received.
Packit aea12f
Packit aea12f
In server side pk_algos and req_ca_dn are NULL.
Packit aea12f
Packit aea12f
The callback function should set the certificate list to be sent,
Packit aea12f
and return 0 on success. If no certificate was selected then the
Packit aea12f
number of certificates should be set to zero. The value (\-1)
Packit aea12f
indicates error and the handshake will be terminated. If both certificates
Packit aea12f
are set in the credentials and a callback is available, the callback
Packit aea12f
takes predence.
Packit aea12f
.SH "SINCE"
Packit aea12f
3.0
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