| Top |
| int | (*gnutls_privkey_import_url_func) () |
| int | (*gnutls_x509_crt_import_url_func) () |
| int | (*gnutls_pubkey_import_url_func) () |
| int | (*gnutls_get_raw_issuer_func) () |
| int | gnutls_register_custom_url () |
int (*gnutls_privkey_import_url_func) (gnutls_privkey_t pkey,const char *url,unsigned flags);
int (*gnutls_x509_crt_import_url_func) (gnutls_x509_crt_t pkey,const char *url,unsigned flags);
int (*gnutls_pubkey_import_url_func) (gnutls_pubkey_t pkey,const char *url,unsigned flags);
int (*gnutls_get_raw_issuer_func) (const char *url,gnutls_x509_crt_t crt,gnutls_datum_t *issuer_der,unsigned flags);
int
gnutls_register_custom_url (const gnutls_custom_url_st *st);
Register a custom URL. This will affect the following functions:
gnutls_url_is_supported(), gnutls_privkey_import_url(),
gnutls_pubkey_import_url, gnutls_x509_crt_import_url()
and all functions that depend on
them, e.g., gnutls_certificate_set_x509_key_file2().
The provided structure and callback functions must be valid throughout
the lifetime of the process. The registration of an existing URL type
will fail with GNUTLS_E_INVALID_REQUEST. Since GnuTLS 3.5.0 this function
can be used to override the builtin URLs.
This function is not thread safe.
Since: 3.4.0
typedef struct {
const char *name;
unsigned name_size;
gnutls_privkey_import_url_func import_key;
gnutls_x509_crt_import_url_func import_crt;
gnutls_pubkey_import_url_func import_pubkey;
gnutls_get_raw_issuer_func get_issuer;
void *future1; /* replace in a future extension */
void *future2; /* replace in a future extension */
} gnutls_custom_url_st;