gnutls_pkcs11_obj_list_import_url3 — API function

Synopsis

#include <gnutls/pkcs11.h>

int gnutls_pkcs11_obj_list_import_url3(gnutls_pkcs11_obj_t * p_list, unsigned int * n_list, const char * url, unsigned int flags);

Arguments

gnutls_pkcs11_obj_t * p_list

An uninitialized object list (may be NULL)

unsigned int * n_list

Initially should hold the maximum size of the list. Will contain the actual size.

const char * url

A PKCS 11 url identifying a set of objects

unsigned int flags

Or sequence of GNUTLS_PKCS11_OBJ_* flags

Description

This function will initialize and set values to an object list by using all objects identified by a PKCS 11 URL.

This function will enumerate all the objects specified by the PKCS11 URL provided. It expects an already allocated  p_list which has * n_list elements, and that value will be updated to the actual number of present objects. The
p_list objects will be initialized and set by this function. To obtain a list of all available objects use a  url of 'pkcs11:'.

All returned objects must be deinitialized using gnutls_pkcs11_obj_deinit().

The supported in this function  flags are GNUTLS_PKCS11_OBJ_FLAG_LOGIN, GNUTLS_PKCS11_OBJ_FLAG_LOGIN_SO, GNUTLS_PKCS11_OBJ_FLAG_PRESENT_IN_TRUSTED_MODULE, GNUTLS_PKCS11_OBJ_FLAG_CRT, GNUTLS_PKCS11_OBJ_FLAG_PUBKEY, GNUTLS_PKCS11_OBJ_FLAG_PRIVKEY, GNUTLS_PKCS11_OBJ_FLAG_WITH_PRIVKEY, GNUTLS_PKCS11_OBJ_FLAG_MARK_CA, GNUTLS_PKCS11_OBJ_FLAG_MARK_TRUSTED, and since 3.5.1 the GNUTLS_PKCS11_OBJ_FLAG_OVERWRITE_TRUSTMOD_EXT.

On versions of GnuTLS prior to 3.4.0 the equivalent function was gnutls_pkcs11_obj_list_import_url(). That is also available on this version as a macro which maps to this function.

Returns

On success, GNUTLS_E_SUCCESS (0) is returned, otherwise a negative error value.

Since

3.4.0

Reporting Bugs

Report bugs to <bugs@gnutls.org>.
Home page: https://www.gnutls.org

See Also

The full documentation for gnutls is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit

https://www.gnutls.org/manual/

Info

3.6.9 gnutls