is a gnutls_certificate_credentials_t type.
const char * certfile
is a file that containing the certificate list (path)
for the specified private key, in PKCS7 format, or a
list of certificates
const char * keyfile
is a file that contains the private key
is PEM or DER
const char * pass
is the password of the key
unsigned int flags
an ORed sequence of gnutls_pkcs_encrypt_flags_t
This function sets a certificate/private key pair in the
gnutls_certificate_credentials_t type. This function may be
called more than once, in case multiple keys/certificates exist
for the server. For clients that need to send more than its own
end entity certificate, e.g., also an intermediate CA cert, then
certfile must contain the ordered certificate chain.
Note that the names in the certificate provided will be
considered when selecting the appropriate certificate to use (in
case of multiple certificate/key pairs).
This function can also accept URLs at keyfile and certfile . In
that case it will use the private key and certificate indicated
by the URLs. Note that the supported URLs are the ones indicated
by gnutls_url_is_supported(). Before GnuTLS 3.4.0 when a URL was
specified, the pass part was ignored and a PIN callback had to
be registered, this is no longer the case in current releases.
In case the certfile is provided as a PKCS 11 URL, then the
certificate, and its present issuers in the token are imported
(i.e., forming the required trust chain).
If that function fails to load the res structure is at an
undefined state, it must not be reused to load other keys or
Note that, this function by default returns zero on success and a
negative value on error. Since 3.5.6, when the flag
GNUTLS_CERTIFICATE_API_V2 is set using
gnutls_certificate_set_flags() it returns an index (greater or
equal to zero). That index can be used to other functions to
refer to the added key-pair.
This page is part of the GnuTLS (GnuTLS Transport Layer Security
Library) project. Information about the project can be found at
⟨http://www.gnutls.org/⟩. If you have a bug report for this
manual page, send it to firstname.lastname@example.org. This page was obtained
from the tarball gnutls-3.8.0.tar.xz fetched from
⟨http://www.gnutls.org/download.html⟩ on 2023-06-23. If you
discover any rendering problems in this HTML version of the page,
or you believe there is a better or more up-to-date source for
the page, or you have corrections or improvements to the
information in this COLOPHON (which is not part of the original
manual page), send a mail to email@example.com