openpgp

openpgp

Functions

int gnutls_certificate_set_openpgp_key ()
int gnutls_certificate_set_openpgp_key_file ()
int gnutls_certificate_set_openpgp_key_file2 ()
int gnutls_certificate_set_openpgp_key_mem ()
int gnutls_certificate_set_openpgp_key_mem2 ()
int gnutls_certificate_set_openpgp_keyring_file ()
int gnutls_certificate_set_openpgp_keyring_mem ()
int gnutls_openpgp_crt_check_hostname ()
void gnutls_openpgp_crt_deinit ()
int gnutls_openpgp_crt_export ()
int gnutls_openpgp_crt_export2 ()
int gnutls_openpgp_crt_get_auth_subkey ()
time_t gnutls_openpgp_crt_get_creation_time ()
time_t gnutls_openpgp_crt_get_expiration_time ()
int gnutls_openpgp_crt_get_fingerprint ()
int gnutls_openpgp_crt_get_key_id ()
int gnutls_openpgp_crt_get_key_usage ()
int gnutls_openpgp_crt_get_name ()
gnutls_pk_algorithm_t gnutls_openpgp_crt_get_pk_algorithm ()
int gnutls_openpgp_crt_get_pk_dsa_raw ()
int gnutls_openpgp_crt_get_pk_rsa_raw ()
int gnutls_openpgp_crt_get_preferred_key_id ()
int gnutls_openpgp_crt_get_revoked_status ()
int gnutls_openpgp_crt_get_subkey_count ()
time_t gnutls_openpgp_crt_get_subkey_creation_time ()
time_t gnutls_openpgp_crt_get_subkey_expiration_time ()
int gnutls_openpgp_crt_get_subkey_fingerprint ()
int gnutls_openpgp_crt_get_subkey_id ()
int gnutls_openpgp_crt_get_subkey_idx ()
gnutls_pk_algorithm_t gnutls_openpgp_crt_get_subkey_pk_algorithm ()
int gnutls_openpgp_crt_get_subkey_pk_dsa_raw ()
int gnutls_openpgp_crt_get_subkey_pk_rsa_raw ()
int gnutls_openpgp_crt_get_subkey_revoked_status ()
int gnutls_openpgp_crt_get_subkey_usage ()
int gnutls_openpgp_crt_get_version ()
int gnutls_openpgp_crt_import ()
int gnutls_openpgp_crt_init ()
int gnutls_openpgp_crt_print ()
int gnutls_openpgp_crt_set_preferred_key_id ()
int gnutls_openpgp_crt_verify_ring ()
int gnutls_openpgp_crt_verify_self ()
int gnutls_openpgp_keyring_check_id ()
void gnutls_openpgp_keyring_deinit ()
int gnutls_openpgp_keyring_get_crt ()
int gnutls_openpgp_keyring_get_crt_count ()
int gnutls_openpgp_keyring_import ()
int gnutls_openpgp_keyring_init ()
void gnutls_openpgp_privkey_deinit ()
int gnutls_openpgp_privkey_export ()
int gnutls_openpgp_privkey_export2 ()
int gnutls_openpgp_privkey_export_dsa_raw ()
int gnutls_openpgp_privkey_export_rsa_raw ()
int gnutls_openpgp_privkey_export_subkey_dsa_raw ()
int gnutls_openpgp_privkey_export_subkey_rsa_raw ()
int gnutls_openpgp_privkey_get_fingerprint ()
int gnutls_openpgp_privkey_get_key_id ()
gnutls_pk_algorithm_t gnutls_openpgp_privkey_get_pk_algorithm ()
int gnutls_openpgp_privkey_get_preferred_key_id ()
int gnutls_openpgp_privkey_get_revoked_status ()
int gnutls_openpgp_privkey_get_subkey_count ()
time_t gnutls_openpgp_privkey_get_subkey_creation_time ()
time_t gnutls_openpgp_privkey_get_subkey_expiration_time ()
int gnutls_openpgp_privkey_get_subkey_fingerprint ()
int gnutls_openpgp_privkey_get_subkey_id ()
int gnutls_openpgp_privkey_get_subkey_idx ()
gnutls_pk_algorithm_t gnutls_openpgp_privkey_get_subkey_pk_algorithm ()
int gnutls_openpgp_privkey_get_subkey_revoked_status ()
int gnutls_openpgp_privkey_import ()
int gnutls_openpgp_privkey_init ()
gnutls_sec_param_t gnutls_openpgp_privkey_sec_param ()
int gnutls_openpgp_privkey_set_preferred_key_id ()
int (*gnutls_openpgp_recv_key_func) ()
void gnutls_openpgp_set_recv_key_function ()

Types and Values

Description

Functions

gnutls_certificate_set_openpgp_key ()

int
gnutls_certificate_set_openpgp_key (gnutls_certificate_credentials_t res,
                                    gnutls_openpgp_crt_t crt,
                                    gnutls_openpgp_privkey_t pkey);

gnutls_certificate_set_openpgp_key is deprecated and should not be used in newly-written code.

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).

Note that this function requires that the preferred key ids have been set and be used. See gnutls_openpgp_crt_set_preferred_key_id(). Otherwise the master key will be used.

Parameters

res

is a gnutls_certificate_credentials_t type.

 

crt

contains an openpgp public key

 

pkey

is an openpgp private key

 

Returns

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


gnutls_certificate_set_openpgp_key_file ()

int
gnutls_certificate_set_openpgp_key_file
                               (gnutls_certificate_credentials_t res,
                                const char *certfile,
                                const char *keyfile,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_key_file is deprecated and should not be used in newly-written code.

This function is used to load OpenPGP keys into the GnuTLS credentials structure. The file should contain at least one valid non encrypted subkey.

Parameters

res

the destination context to save the data.

 

certfile

the file that contains the public key.

 

keyfile

the file that contains the secret key.

 

format

the format of the keys

 

Returns

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


gnutls_certificate_set_openpgp_key_file2 ()

int
gnutls_certificate_set_openpgp_key_file2
                               (gnutls_certificate_credentials_t res,
                                const char *certfile,
                                const char *keyfile,
                                const char *subkey_id,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_key_file2 is deprecated and should not be used in newly-written code.

This function is used to load OpenPGP keys into the GnuTLS credential structure. The file should contain at least one valid non encrypted subkey.

The special keyword "auto" is also accepted as subkey_id . In that case the gnutls_openpgp_crt_get_auth_subkey() will be used to retrieve the subkey.

Parameters

res

the destination context to save the data.

 

certfile

the file that contains the public key.

 

keyfile

the file that contains the secret key.

 

subkey_id

a hex encoded subkey id

 

format

the format of the keys

 

Returns

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

Since: 2.4.0


gnutls_certificate_set_openpgp_key_mem ()

int
gnutls_certificate_set_openpgp_key_mem
                               (gnutls_certificate_credentials_t res,
                                const gnutls_datum_t *cert,
                                const gnutls_datum_t *key,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_key_mem is deprecated and should not be used in newly-written code.

This function is used to load OpenPGP keys into the GnuTLS credential structure. The datum should contain at least one valid non encrypted subkey.

Parameters

res

the destination context to save the data.

 

cert

the datum that contains the public key.

 

key

the datum that contains the secret key.

 

format

the format of the keys

 

Returns

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


gnutls_certificate_set_openpgp_key_mem2 ()

int
gnutls_certificate_set_openpgp_key_mem2
                               (gnutls_certificate_credentials_t res,
                                const gnutls_datum_t *cert,
                                const gnutls_datum_t *key,
                                const char *subkey_id,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_key_mem2 is deprecated and should not be used in newly-written code.

This function is used to load OpenPGP keys into the GnuTLS credentials structure. The datum should contain at least one valid non encrypted subkey.

The special keyword "auto" is also accepted as subkey_id . In that case the gnutls_openpgp_crt_get_auth_subkey() will be used to retrieve the subkey.

Parameters

res

the destination context to save the data.

 

cert

the datum that contains the public key.

 

key

the datum that contains the secret key.

 

subkey_id

a hex encoded subkey id

 

format

the format of the keys

 

Returns

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

Since: 2.4.0


gnutls_certificate_set_openpgp_keyring_file ()

int
gnutls_certificate_set_openpgp_keyring_file
                               (gnutls_certificate_credentials_t c,
                                const char *file,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_keyring_file is deprecated and should not be used in newly-written code.

The function is used to set keyrings that will be used internally by various OpenPGP functions. For example to find a key when it is needed for an operations. The keyring will also be used at the verification functions.

Parameters

c

A certificate credentials structure

 

file

filename of the keyring.

 

format

format of keyring.

 

Returns

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


gnutls_certificate_set_openpgp_keyring_mem ()

int
gnutls_certificate_set_openpgp_keyring_mem
                               (gnutls_certificate_credentials_t c,
                                const unsigned char *data,
                                size_t dlen,
                                gnutls_openpgp_crt_fmt_t format);

gnutls_certificate_set_openpgp_keyring_mem is deprecated and should not be used in newly-written code.

The function is used to set keyrings that will be used internally by various OpenPGP functions. For example to find a key when it is needed for an operations. The keyring will also be used at the verification functions.

Parameters

c

A certificate credentials structure

 

data

buffer with keyring data.

 

dlen

length of data buffer.

 

format

the format of the keyring

 

Returns

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


gnutls_openpgp_crt_check_hostname ()

int
gnutls_openpgp_crt_check_hostname (gnutls_openpgp_crt_t key,
                                   const char *hostname);

gnutls_openpgp_crt_check_hostname is deprecated and should not be used in newly-written code.

This function will check if the given key's owner matches the given hostname. This is a basic implementation of the matching described in RFC2818 (HTTPS), which takes into account wildcards.

Parameters

key

should contain a gnutls_openpgp_crt_t type

 

hostname

A null terminated string that contains a DNS name

 

Returns

non-zero for a successful match, and zero on failure.


gnutls_openpgp_crt_deinit ()

void
gnutls_openpgp_crt_deinit (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_deinit is deprecated and should not be used in newly-written code.

This function will deinitialize a key structure.

Parameters

key

A pointer to the type to be initialized

 

gnutls_openpgp_crt_export ()

int
gnutls_openpgp_crt_export (gnutls_openpgp_crt_t key,
                           gnutls_openpgp_crt_fmt_t format,
                           void *output_data,
                           size_t *output_data_size);

gnutls_openpgp_crt_export is deprecated and should not be used in newly-written code.

This function will convert the given key to RAW or Base64 format. If the buffer provided is not long enough to hold the output, then GNUTLS_E_SHORT_MEMORY_BUFFER will be returned.

Parameters

key

Holds the key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

output_data

will contain the raw or base64 encoded key

 

output_data_size

holds the size of output_data (and will be replaced by the actual size of parameters)

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_export2 ()

int
gnutls_openpgp_crt_export2 (gnutls_openpgp_crt_t key,
                            gnutls_openpgp_crt_fmt_t format,
                            gnutls_datum_t *out);

gnutls_openpgp_crt_export2 is deprecated and should not be used in newly-written code.

This function will convert the given key to RAW or Base64 format. The output buffer is allocated using gnutls_malloc().

Parameters

key

Holds the key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

out

will contain the raw or base64 encoded key

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.

Since: 3.1.3


gnutls_openpgp_crt_get_auth_subkey ()

int
gnutls_openpgp_crt_get_auth_subkey (gnutls_openpgp_crt_t crt,
                                    gnutls_openpgp_keyid_t keyid,
                                    unsigned int flag);

gnutls_openpgp_crt_get_auth_subkey is deprecated and should not be used in newly-written code.

Returns the 64-bit keyID of the first valid OpenPGP subkey marked for authentication. If flag is non-zero and no authentication subkey exists, then a valid subkey will be returned even if it is not marked for authentication.

Parameters

crt

the structure that contains the OpenPGP public key.

 

keyid

the struct to save the keyid.

 

flag

Non-zero indicates that a valid subkey is always returned.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_get_creation_time ()

time_t
gnutls_openpgp_crt_get_creation_time (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_get_creation_time is deprecated and should not be used in newly-written code.

Get key creation time.

Parameters

key

the structure that contains the OpenPGP public key.

 

Returns

the timestamp when the OpenPGP key was created.


gnutls_openpgp_crt_get_expiration_time ()

time_t
gnutls_openpgp_crt_get_expiration_time
                               (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_get_expiration_time is deprecated and should not be used in newly-written code.

Get key expiration time. A value of '0' means that the key doesn't expire at all.

Parameters

key

the structure that contains the OpenPGP public key.

 

Returns

the time when the OpenPGP key expires.


gnutls_openpgp_crt_get_fingerprint ()

int
gnutls_openpgp_crt_get_fingerprint (gnutls_openpgp_crt_t key,
                                    void *fpr,
                                    size_t *fprlen);

gnutls_openpgp_crt_get_fingerprint is deprecated and should not be used in newly-written code.

Get key fingerprint. Depending on the algorithm, the fingerprint can be 16 or 20 bytes.

Parameters

key

the raw data that contains the OpenPGP public key.

 

fpr

the buffer to save the fingerprint, must hold at least 20 bytes.

 

fprlen

the integer to save the length of the fingerprint.

 

Returns

On success, 0 is returned. Otherwise, an error code.


gnutls_openpgp_crt_get_key_id ()

int
gnutls_openpgp_crt_get_key_id (gnutls_openpgp_crt_t key,
                               gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_crt_get_key_id is deprecated and should not be used in newly-written code.

Get key id string.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the buffer to save the keyid.

 

Returns

the 64-bit keyID of the OpenPGP key.

Since: 2.4.0


gnutls_openpgp_crt_get_key_usage ()

int
gnutls_openpgp_crt_get_key_usage (gnutls_openpgp_crt_t key,
                                  unsigned int *key_usage);

gnutls_openpgp_crt_get_key_usage is deprecated and should not be used in newly-written code.

This function will return certificate's key usage, by checking the key algorithm. The key usage value will ORed values of the: GNUTLS_KEY_DIGITAL_SIGNATURE, GNUTLS_KEY_KEY_ENCIPHERMENT.

Parameters

key

should contain a gnutls_openpgp_crt_t type

 

key_usage

where the key usage bits will be stored

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_get_name ()

int
gnutls_openpgp_crt_get_name (gnutls_openpgp_crt_t key,
                             int idx,
                             char *buf,
                             size_t *sizeof_buf);

gnutls_openpgp_crt_get_name is deprecated and should not be used in newly-written code.

Extracts the userID from the parsed OpenPGP key.

Parameters

key

the structure that contains the OpenPGP public key.

 

idx

the index of the ID to extract

 

buf

a pointer to a structure to hold the name, may be NULL to only get the sizeof_buf .

 

sizeof_buf

holds the maximum size of buf , on return hold the actual/required size of buf .

 

Returns

GNUTLS_E_SUCCESS on success, and if the index of the ID does not exist GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE, or an error code.


gnutls_openpgp_crt_get_pk_algorithm ()

gnutls_pk_algorithm_t
gnutls_openpgp_crt_get_pk_algorithm (gnutls_openpgp_crt_t key,
                                     unsigned int *bits);

gnutls_openpgp_crt_get_pk_algorithm is deprecated and should not be used in newly-written code.

This function will return the public key algorithm of an OpenPGP certificate.

If bits is non null, it should have enough size to hold the parameters size in bits. For RSA the bits returned is the modulus. For DSA the bits returned are of the public exponent.

Parameters

key

is an OpenPGP key

 

bits

if bits is non null it will hold the size of the parameters' in bits

 

Returns

a member of the gnutls_pk_algorithm_t enumeration on success, or GNUTLS_PK_UNKNOWN on error.


gnutls_openpgp_crt_get_pk_dsa_raw ()

int
gnutls_openpgp_crt_get_pk_dsa_raw (gnutls_openpgp_crt_t crt,
                                   gnutls_datum_t *p,
                                   gnutls_datum_t *q,
                                   gnutls_datum_t *g,
                                   gnutls_datum_t *y);

gnutls_openpgp_crt_get_pk_dsa_raw is deprecated and should not be used in newly-written code.

This function will export the DSA public key's parameters found in the given certificate. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

crt

Holds the certificate

 

p

will hold the p

 

q

will hold the q

 

g

will hold the g

 

y

will hold the y

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_crt_get_pk_rsa_raw ()

int
gnutls_openpgp_crt_get_pk_rsa_raw (gnutls_openpgp_crt_t crt,
                                   gnutls_datum_t *m,
                                   gnutls_datum_t *e);

gnutls_openpgp_crt_get_pk_rsa_raw is deprecated and should not be used in newly-written code.

This function will export the RSA public key's parameters found in the given structure. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

crt

Holds the certificate

 

m

will hold the modulus

 

e

will hold the public exponent

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_crt_get_preferred_key_id ()

int
gnutls_openpgp_crt_get_preferred_key_id
                               (gnutls_openpgp_crt_t key,
                                gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_crt_get_preferred_key_id is deprecated and should not be used in newly-written code.

Get preferred key id. If it hasn't been set it returns GNUTLS_E_INVALID_REQUEST.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the struct to save the keyid.

 

Returns

the 64-bit preferred keyID of the OpenPGP key.


gnutls_openpgp_crt_get_revoked_status ()

int
gnutls_openpgp_crt_get_revoked_status (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_get_revoked_status is deprecated and should not be used in newly-written code.

Get revocation status of key.

Parameters

key

the structure that contains the OpenPGP public key.

 

Returns

true (1) if the key has been revoked, or false (0) if it has not.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_count ()

int
gnutls_openpgp_crt_get_subkey_count (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_get_subkey_count is deprecated and should not be used in newly-written code.

This function will return the number of subkeys present in the given OpenPGP certificate.

Parameters

key

is an OpenPGP key

 

Returns

the number of subkeys, or a negative error code on error.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_creation_time ()

time_t
gnutls_openpgp_crt_get_subkey_creation_time
                               (gnutls_openpgp_crt_t key,
                                unsigned int idx);

gnutls_openpgp_crt_get_subkey_creation_time is deprecated and should not be used in newly-written code.

Get subkey creation time.

Parameters

key

the structure that contains the OpenPGP public key.

 

idx

the subkey index

 

Returns

the timestamp when the OpenPGP sub-key was created.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_expiration_time ()

time_t
gnutls_openpgp_crt_get_subkey_expiration_time
                               (gnutls_openpgp_crt_t key,
                                unsigned int idx);

gnutls_openpgp_crt_get_subkey_expiration_time is deprecated and should not be used in newly-written code.

Get subkey expiration time. A value of '0' means that the key doesn't expire at all.

Parameters

key

the structure that contains the OpenPGP public key.

 

idx

the subkey index

 

Returns

the time when the OpenPGP key expires.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_fingerprint ()

int
gnutls_openpgp_crt_get_subkey_fingerprint
                               (gnutls_openpgp_crt_t key,
                                unsigned int idx,
                                void *fpr,
                                size_t *fprlen);

gnutls_openpgp_crt_get_subkey_fingerprint is deprecated and should not be used in newly-written code.

Get key fingerprint of a subkey. Depending on the algorithm, the fingerprint can be 16 or 20 bytes.

Parameters

key

the raw data that contains the OpenPGP public key.

 

idx

the subkey index

 

fpr

the buffer to save the fingerprint, must hold at least 20 bytes.

 

fprlen

the integer to save the length of the fingerprint.

 

Returns

On success, 0 is returned. Otherwise, an error code.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_id ()

int
gnutls_openpgp_crt_get_subkey_id (gnutls_openpgp_crt_t key,
                                  unsigned int idx,
                                  gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_crt_get_subkey_id is deprecated and should not be used in newly-written code.

Get the subkey's key-id.

Parameters

key

the structure that contains the OpenPGP public key.

 

idx

the subkey index

 

keyid

the buffer to save the keyid.

 

Returns

the 64-bit keyID of the OpenPGP key.


gnutls_openpgp_crt_get_subkey_idx ()

int
gnutls_openpgp_crt_get_subkey_idx (gnutls_openpgp_crt_t key,
                                   const gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_crt_get_subkey_idx is deprecated and should not be used in newly-written code.

Get subkey's index.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the keyid.

 

Returns

the index of the subkey or a negative error value.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_pk_algorithm ()

gnutls_pk_algorithm_t
gnutls_openpgp_crt_get_subkey_pk_algorithm
                               (gnutls_openpgp_crt_t key,
                                unsigned int idx,
                                unsigned int *bits);

gnutls_openpgp_crt_get_subkey_pk_algorithm is deprecated and should not be used in newly-written code.

This function will return the public key algorithm of a subkey of an OpenPGP certificate.

If bits is non null, it should have enough size to hold the parameters size in bits. For RSA the bits returned is the modulus. For DSA the bits returned are of the public exponent.

Parameters

key

is an OpenPGP key

 

idx

is the subkey index

 

bits

if bits is non null it will hold the size of the parameters' in bits

 

Returns

a member of the gnutls_pk_algorithm_t enumeration on success, or GNUTLS_PK_UNKNOWN on error.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_pk_dsa_raw ()

int
gnutls_openpgp_crt_get_subkey_pk_dsa_raw
                               (gnutls_openpgp_crt_t crt,
                                unsigned int idx,
                                gnutls_datum_t *p,
                                gnutls_datum_t *q,
                                gnutls_datum_t *g,
                                gnutls_datum_t *y);

gnutls_openpgp_crt_get_subkey_pk_dsa_raw is deprecated and should not be used in newly-written code.

This function will export the DSA public key's parameters found in the given certificate. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

crt

Holds the certificate

 

idx

Is the subkey index

 

p

will hold the p

 

q

will hold the q

 

g

will hold the g

 

y

will hold the y

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_pk_rsa_raw ()

int
gnutls_openpgp_crt_get_subkey_pk_rsa_raw
                               (gnutls_openpgp_crt_t crt,
                                unsigned int idx,
                                gnutls_datum_t *m,
                                gnutls_datum_t *e);

gnutls_openpgp_crt_get_subkey_pk_rsa_raw is deprecated and should not be used in newly-written code.

This function will export the RSA public key's parameters found in the given structure. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

crt

Holds the certificate

 

idx

Is the subkey index

 

m

will hold the modulus

 

e

will hold the public exponent

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_revoked_status ()

int
gnutls_openpgp_crt_get_subkey_revoked_status
                               (gnutls_openpgp_crt_t key,
                                unsigned int idx);

gnutls_openpgp_crt_get_subkey_revoked_status is deprecated and should not be used in newly-written code.

Get subkey revocation status. A negative error code indicates an error.

Parameters

key

the structure that contains the OpenPGP public key.

 

idx

is the subkey index

 

Returns

true (1) if the key has been revoked, or false (0) if it has not.

Since: 2.4.0


gnutls_openpgp_crt_get_subkey_usage ()

int
gnutls_openpgp_crt_get_subkey_usage (gnutls_openpgp_crt_t key,
                                     unsigned int idx,
                                     unsigned int *key_usage);

gnutls_openpgp_crt_get_subkey_usage is deprecated and should not be used in newly-written code.

This function will return certificate's key usage, by checking the key algorithm. The key usage value will ORed values of GNUTLS_KEY_DIGITAL_SIGNATURE or GNUTLS_KEY_KEY_ENCIPHERMENT.

A negative error code may be returned in case of parsing error.

Parameters

key

should contain a gnutls_openpgp_crt_t type

 

idx

the subkey index

 

key_usage

where the key usage bits will be stored

 

Returns

key usage value.

Since: 2.4.0


gnutls_openpgp_crt_get_version ()

int
gnutls_openpgp_crt_get_version (gnutls_openpgp_crt_t key);

gnutls_openpgp_crt_get_version is deprecated and should not be used in newly-written code.

Extract the version of the OpenPGP key.

Parameters

key

the structure that contains the OpenPGP public key.

 

Returns

the version number is returned, or a negative error code on errors.


gnutls_openpgp_crt_import ()

int
gnutls_openpgp_crt_import (gnutls_openpgp_crt_t key,
                           const gnutls_datum_t *data,
                           gnutls_openpgp_crt_fmt_t format);

gnutls_openpgp_crt_import is deprecated and should not be used in newly-written code.

This function will convert the given RAW or Base64 encoded key to the native gnutls_openpgp_crt_t format. The output will be stored in 'key'.

Parameters

key

The structure to store the parsed key.

 

data

The RAW or BASE64 encoded key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_init ()

int
gnutls_openpgp_crt_init (gnutls_openpgp_crt_t *key);

gnutls_openpgp_crt_init is deprecated and should not be used in newly-written code.

This function will initialize an OpenPGP key structure.

Parameters

key

A pointer to the type to be initialized

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_print ()

int
gnutls_openpgp_crt_print (gnutls_openpgp_crt_t cert,
                          gnutls_certificate_print_formats_t format,
                          gnutls_datum_t *out);

gnutls_openpgp_crt_print is deprecated and should not be used in newly-written code.

This function will pretty print an OpenPGP certificate, suitable for display to a human.

The format should be (0) for future compatibility.

The output out needs to be deallocate using gnutls_free().

Parameters

cert

The structure to be printed

 

format

Indicate the format to use

 

out

Newly allocated datum with (0) terminated string.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_set_preferred_key_id ()

int
gnutls_openpgp_crt_set_preferred_key_id
                               (gnutls_openpgp_crt_t key,
                                const gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_crt_set_preferred_key_id is deprecated and should not be used in newly-written code.

This allows setting a preferred key id for the given certificate. This key will be used by functions that involve key handling.

If the provided keyid is NULL then the master key is set as preferred.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the selected keyid

 

Returns

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


gnutls_openpgp_crt_verify_ring ()

int
gnutls_openpgp_crt_verify_ring (gnutls_openpgp_crt_t key,
                                gnutls_openpgp_keyring_t keyring,
                                unsigned int flags,
                                unsigned int *verify);

gnutls_openpgp_crt_verify_ring is deprecated and should not be used in newly-written code.

Verify all signatures in the key, using the given set of keys (keyring).

The key verification output will be put in verify and will be one or more of the gnutls_certificate_status_t enumerated elements bitwise or'd.

Note that this function does not verify using any "web of trust". You may use GnuPG for that purpose, or any other external PGP application.

Parameters

key

the structure that holds the key.

 

keyring

holds the keyring to check against

 

flags

unused (should be 0)

 

verify

will hold the certificate verification output.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_crt_verify_self ()

int
gnutls_openpgp_crt_verify_self (gnutls_openpgp_crt_t key,
                                unsigned int flags,
                                unsigned int *verify);

gnutls_openpgp_crt_verify_self is deprecated and should not be used in newly-written code.

Verifies the self signature in the key. The key verification output will be put in verify and will be one or more of the gnutls_certificate_status_t enumerated elements bitwise or'd.

Parameters

key

the structure that holds the key.

 

flags

unused (should be 0)

 

verify

will hold the key verification output.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_keyring_check_id ()

int
gnutls_openpgp_keyring_check_id (gnutls_openpgp_keyring_t ring,
                                 const gnutls_openpgp_keyid_t keyid,
                                 unsigned int flags);

gnutls_openpgp_keyring_check_id is deprecated and should not be used in newly-written code.

Check if a given key ID exists in the keyring.

Parameters

ring

holds the keyring to check against

 

keyid

will hold the keyid to check for.

 

flags

unused (should be 0)

 

Returns

GNUTLS_E_SUCCESS on success (if keyid exists) and a negative error code on failure.


gnutls_openpgp_keyring_deinit ()

void
gnutls_openpgp_keyring_deinit (gnutls_openpgp_keyring_t keyring);

gnutls_openpgp_keyring_deinit is deprecated and should not be used in newly-written code.

This function will deinitialize a keyring structure.

Parameters

keyring

A pointer to the type to be initialized

 

gnutls_openpgp_keyring_get_crt ()

int
gnutls_openpgp_keyring_get_crt (gnutls_openpgp_keyring_t ring,
                                unsigned int idx,
                                gnutls_openpgp_crt_t *cert);

gnutls_openpgp_keyring_get_crt is deprecated and should not be used in newly-written code.

This function will extract an OpenPGP certificate from the given keyring. If the index given is out of range GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE will be returned. The returned structure needs to be deinited.

Parameters

ring

Holds the keyring.

 

idx

the index of the certificate to export

 

cert

An uninitialized gnutls_openpgp_crt_t type

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_keyring_get_crt_count ()

int
gnutls_openpgp_keyring_get_crt_count (gnutls_openpgp_keyring_t ring);

gnutls_openpgp_keyring_get_crt_count is deprecated and should not be used in newly-written code.

This function will return the number of OpenPGP certificates present in the given keyring.

Parameters

ring

is an OpenPGP key ring

 

Returns

the number of subkeys, or a negative error code on error.


gnutls_openpgp_keyring_import ()

int
gnutls_openpgp_keyring_import (gnutls_openpgp_keyring_t keyring,
                               const gnutls_datum_t *data,
                               gnutls_openpgp_crt_fmt_t format);

gnutls_openpgp_keyring_import is deprecated and should not be used in newly-written code.

This function will convert the given RAW or Base64 encoded keyring to the native gnutls_openpgp_keyring_t format. The output will be stored in 'keyring'.

Parameters

keyring

The structure to store the parsed key.

 

data

The RAW or BASE64 encoded keyring.

 

format

One of gnutls_openpgp_keyring_fmt elements.

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_keyring_init ()

int
gnutls_openpgp_keyring_init (gnutls_openpgp_keyring_t *keyring);

gnutls_openpgp_keyring_init is deprecated and should not be used in newly-written code.

This function will initialize an keyring structure.

Parameters

keyring

A pointer to the type to be initialized

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_privkey_deinit ()

void
gnutls_openpgp_privkey_deinit (gnutls_openpgp_privkey_t key);

gnutls_openpgp_privkey_deinit is deprecated and should not be used in newly-written code.

This function will deinitialize a key structure.

Parameters

key

A pointer to the type to be initialized

 

gnutls_openpgp_privkey_export ()

int
gnutls_openpgp_privkey_export (gnutls_openpgp_privkey_t key,
                               gnutls_openpgp_crt_fmt_t format,
                               const char *password,
                               unsigned int flags,
                               void *output_data,
                               size_t *output_data_size);

gnutls_openpgp_privkey_export is deprecated and should not be used in newly-written code.

This function will convert the given key to RAW or Base64 format. If the buffer provided is not long enough to hold the output, then GNUTLS_E_SHORT_MEMORY_BUFFER will be returned.

Parameters

key

Holds the key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

password

the password that will be used to encrypt the key. (unused for now)

 

flags

(0) for future compatibility

 

output_data

will contain the key base64 encoded or raw

 

output_data_size

holds the size of output_data (and will be replaced by the actual size of parameters)

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.

Since: 2.4.0


gnutls_openpgp_privkey_export2 ()

int
gnutls_openpgp_privkey_export2 (gnutls_openpgp_privkey_t key,
                                gnutls_openpgp_crt_fmt_t format,
                                const char *password,
                                unsigned int flags,
                                gnutls_datum_t *out);

gnutls_openpgp_privkey_export2 is deprecated and should not be used in newly-written code.

This function will convert the given key to RAW or Base64 format. The output buffer is allocated using gnutls_malloc().

Parameters

key

Holds the key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

password

the password that will be used to encrypt the key. (unused for now)

 

flags

(0) for future compatibility

 

out

will contain the raw or based64 encoded key

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.

Since: 3.1.3


gnutls_openpgp_privkey_export_dsa_raw ()

int
gnutls_openpgp_privkey_export_dsa_raw (gnutls_openpgp_privkey_t pkey,
                                       gnutls_datum_t *p,
                                       gnutls_datum_t *q,
                                       gnutls_datum_t *g,
                                       gnutls_datum_t *y,
                                       gnutls_datum_t *x);

gnutls_openpgp_privkey_export_dsa_raw is deprecated and should not be used in newly-written code.

This function will export the DSA private key's parameters found in the given certificate. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

pkey

Holds the certificate

 

p

will hold the p

 

q

will hold the q

 

g

will hold the g

 

y

will hold the y

 

x

will hold the x

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_privkey_export_rsa_raw ()

int
gnutls_openpgp_privkey_export_rsa_raw (gnutls_openpgp_privkey_t pkey,
                                       gnutls_datum_t *m,
                                       gnutls_datum_t *e,
                                       gnutls_datum_t *d,
                                       gnutls_datum_t *p,
                                       gnutls_datum_t *q,
                                       gnutls_datum_t *u);

gnutls_openpgp_privkey_export_rsa_raw is deprecated and should not be used in newly-written code.

This function will export the RSA private key's parameters found in the given structure. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

pkey

Holds the certificate

 

m

will hold the modulus

 

e

will hold the public exponent

 

d

will hold the private exponent

 

p

will hold the first prime (p)

 

q

will hold the second prime (q)

 

u

will hold the coefficient

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_privkey_export_subkey_dsa_raw ()

int
gnutls_openpgp_privkey_export_subkey_dsa_raw
                               (gnutls_openpgp_privkey_t pkey,
                                unsigned int idx,
                                gnutls_datum_t *p,
                                gnutls_datum_t *q,
                                gnutls_datum_t *g,
                                gnutls_datum_t *y,
                                gnutls_datum_t *x);

gnutls_openpgp_privkey_export_subkey_dsa_raw is deprecated and should not be used in newly-written code.

This function will export the DSA private key's parameters found in the given certificate. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

pkey

Holds the certificate

 

idx

Is the subkey index

 

p

will hold the p

 

q

will hold the q

 

g

will hold the g

 

y

will hold the y

 

x

will hold the x

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_privkey_export_subkey_rsa_raw ()

int
gnutls_openpgp_privkey_export_subkey_rsa_raw
                               (gnutls_openpgp_privkey_t pkey,
                                unsigned int idx,
                                gnutls_datum_t *m,
                                gnutls_datum_t *e,
                                gnutls_datum_t *d,
                                gnutls_datum_t *p,
                                gnutls_datum_t *q,
                                gnutls_datum_t *u);

gnutls_openpgp_privkey_export_subkey_rsa_raw is deprecated and should not be used in newly-written code.

This function will export the RSA private key's parameters found in the given structure. The new parameters will be allocated using gnutls_malloc() and will be stored in the appropriate datum.

Parameters

pkey

Holds the certificate

 

idx

Is the subkey index

 

m

will hold the modulus

 

e

will hold the public exponent

 

d

will hold the private exponent

 

p

will hold the first prime (p)

 

q

will hold the second prime (q)

 

u

will hold the coefficient

 

Returns

GNUTLS_E_SUCCESS on success, otherwise a negative error code.

Since: 2.4.0


gnutls_openpgp_privkey_get_fingerprint ()

int
gnutls_openpgp_privkey_get_fingerprint
                               (gnutls_openpgp_privkey_t key,
                                void *fpr,
                                size_t *fprlen);

gnutls_openpgp_privkey_get_fingerprint is deprecated and should not be used in newly-written code.

Get the fingerprint of the OpenPGP key. Depends on the algorithm, the fingerprint can be 16 or 20 bytes.

Parameters

key

the raw data that contains the OpenPGP secret key.

 

fpr

the buffer to save the fingerprint, must hold at least 20 bytes.

 

fprlen

the integer to save the length of the fingerprint.

 

Returns

On success, 0 is returned, or an error code.

Since: 2.4.0


gnutls_openpgp_privkey_get_key_id ()

int
gnutls_openpgp_privkey_get_key_id (gnutls_openpgp_privkey_t key,
                                   gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_privkey_get_key_id is deprecated and should not be used in newly-written code.

Get key-id.

Parameters

key

the structure that contains the OpenPGP secret key.

 

keyid

the buffer to save the keyid.

 

Returns

the 64-bit keyID of the OpenPGP key.

Since: 2.4.0


gnutls_openpgp_privkey_get_pk_algorithm ()

gnutls_pk_algorithm_t
gnutls_openpgp_privkey_get_pk_algorithm
                               (gnutls_openpgp_privkey_t key,
                                unsigned int *bits);

gnutls_openpgp_privkey_get_pk_algorithm is deprecated and should not be used in newly-written code.

This function will return the public key algorithm of an OpenPGP certificate.

If bits is non null, it should have enough size to hold the parameters size in bits. For RSA the bits returned is the modulus. For DSA the bits returned are of the public exponent.

Parameters

key

is an OpenPGP key

 

bits

if bits is non null it will hold the size of the parameters' in bits

 

Returns

a member of the gnutls_pk_algorithm_t enumeration on success, or a negative error code on error.

Since: 2.4.0


gnutls_openpgp_privkey_get_preferred_key_id ()

int
gnutls_openpgp_privkey_get_preferred_key_id
                               (gnutls_openpgp_privkey_t key,
                                gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_privkey_get_preferred_key_id is deprecated and should not be used in newly-written code.

Get the preferred key-id for the key.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the struct to save the keyid.

 

Returns

the 64-bit preferred keyID of the OpenPGP key, or if it hasn't been set it returns GNUTLS_E_INVALID_REQUEST.


gnutls_openpgp_privkey_get_revoked_status ()

int
gnutls_openpgp_privkey_get_revoked_status
                               (gnutls_openpgp_privkey_t key);

gnutls_openpgp_privkey_get_revoked_status is deprecated and should not be used in newly-written code.

Get revocation status of key.

Parameters

key

the structure that contains the OpenPGP private key.

 

Returns

true (1) if the key has been revoked, or false (0) if it has not, or a negative error code indicates an error.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_count ()

int
gnutls_openpgp_privkey_get_subkey_count
                               (gnutls_openpgp_privkey_t key);

gnutls_openpgp_privkey_get_subkey_count is deprecated and should not be used in newly-written code.

This function will return the number of subkeys present in the given OpenPGP certificate.

Parameters

key

is an OpenPGP key

 

Returns

the number of subkeys, or a negative error code on error.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_creation_time ()

time_t
gnutls_openpgp_privkey_get_subkey_creation_time
                               (gnutls_openpgp_privkey_t key,
                                unsigned int idx);

gnutls_openpgp_privkey_get_subkey_creation_time is deprecated and should not be used in newly-written code.

Get subkey creation time.

Parameters

key

the structure that contains the OpenPGP private key.

 

idx

the subkey index

 

Returns

the timestamp when the OpenPGP key was created.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_expiration_time ()

time_t
gnutls_openpgp_privkey_get_subkey_expiration_time
                               (gnutls_openpgp_privkey_t key,
                                unsigned int idx);

gnutls_openpgp_privkey_get_subkey_expiration_time is deprecated and should not be used in newly-written code.

Get subkey expiration time. A value of '0' means that the key doesn't expire at all.

Parameters

key

the structure that contains the OpenPGP private key.

 

idx

the subkey index

 

Returns

the time when the OpenPGP key expires.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_fingerprint ()

int
gnutls_openpgp_privkey_get_subkey_fingerprint
                               (gnutls_openpgp_privkey_t key,
                                unsigned int idx,
                                void *fpr,
                                size_t *fprlen);

gnutls_openpgp_privkey_get_subkey_fingerprint is deprecated and should not be used in newly-written code.

Get the fingerprint of an OpenPGP subkey. Depends on the algorithm, the fingerprint can be 16 or 20 bytes.

Parameters

key

the raw data that contains the OpenPGP secret key.

 

idx

the subkey index

 

fpr

the buffer to save the fingerprint, must hold at least 20 bytes.

 

fprlen

the integer to save the length of the fingerprint.

 

Returns

On success, 0 is returned, or an error code.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_id ()

int
gnutls_openpgp_privkey_get_subkey_id (gnutls_openpgp_privkey_t key,
                                      unsigned int idx,
                                      gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_privkey_get_subkey_id is deprecated and should not be used in newly-written code.

Get the key-id for the subkey.

Parameters

key

the structure that contains the OpenPGP secret key.

 

idx

the subkey index

 

keyid

the buffer to save the keyid.

 

Returns

the 64-bit keyID of the OpenPGP key.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_idx ()

int
gnutls_openpgp_privkey_get_subkey_idx (gnutls_openpgp_privkey_t key,
                                       const gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_privkey_get_subkey_idx is deprecated and should not be used in newly-written code.

Get index of subkey.

Parameters

key

the structure that contains the OpenPGP private key.

 

keyid

the keyid.

 

Returns

the index of the subkey or a negative error value.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_pk_algorithm ()

gnutls_pk_algorithm_t
gnutls_openpgp_privkey_get_subkey_pk_algorithm
                               (gnutls_openpgp_privkey_t key,
                                unsigned int idx,
                                unsigned int *bits);

gnutls_openpgp_privkey_get_subkey_pk_algorithm is deprecated and should not be used in newly-written code.

This function will return the public key algorithm of a subkey of an OpenPGP certificate.

If bits is non null, it should have enough size to hold the parameters size in bits. For RSA the bits returned is the modulus. For DSA the bits returned are of the public exponent.

Parameters

key

is an OpenPGP key

 

idx

is the subkey index

 

bits

if bits is non null it will hold the size of the parameters' in bits

 

Returns

a member of the gnutls_pk_algorithm_t enumeration on success, or a negative error code on error.

Since: 2.4.0


gnutls_openpgp_privkey_get_subkey_revoked_status ()

int
gnutls_openpgp_privkey_get_subkey_revoked_status
                               (gnutls_openpgp_privkey_t key,
                                unsigned int idx);

gnutls_openpgp_privkey_get_subkey_revoked_status is deprecated and should not be used in newly-written code.

Get revocation status of key.

Parameters

key

the structure that contains the OpenPGP private key.

 

idx

is the subkey index

 

Returns

true (1) if the key has been revoked, or false (0) if it has not, or a negative error code indicates an error.

Since: 2.4.0


gnutls_openpgp_privkey_import ()

int
gnutls_openpgp_privkey_import (gnutls_openpgp_privkey_t key,
                               const gnutls_datum_t *data,
                               gnutls_openpgp_crt_fmt_t format,
                               const char *password,
                               unsigned int flags);

gnutls_openpgp_privkey_import is deprecated and should not be used in newly-written code.

This function will convert the given RAW or Base64 encoded key to the native gnutls_openpgp_privkey_t format. The output will be stored in 'key'.

Parameters

key

The structure to store the parsed key.

 

data

The RAW or BASE64 encoded key.

 

format

One of gnutls_openpgp_crt_fmt_t elements.

 

password

not used for now

 

flags

should be (0)

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_privkey_init ()

int
gnutls_openpgp_privkey_init (gnutls_openpgp_privkey_t *key);

gnutls_openpgp_privkey_init is deprecated and should not be used in newly-written code.

This function will initialize an OpenPGP key structure.

Parameters

key

A pointer to the type to be initialized

 

Returns

GNUTLS_E_SUCCESS on success, or an error code.


gnutls_openpgp_privkey_sec_param ()

gnutls_sec_param_t
gnutls_openpgp_privkey_sec_param (gnutls_openpgp_privkey_t key);

gnutls_openpgp_privkey_sec_param is deprecated and should not be used in newly-written code.

This function will return the security parameter appropriate with this private key.

Parameters

key

a key structure

 

Returns

On success, a valid security parameter is returned otherwise GNUTLS_SEC_PARAM_UNKNOWN is returned.

Since: 2.12.0


gnutls_openpgp_privkey_set_preferred_key_id ()

int
gnutls_openpgp_privkey_set_preferred_key_id
                               (gnutls_openpgp_privkey_t key,
                                const gnutls_openpgp_keyid_t keyid);

gnutls_openpgp_privkey_set_preferred_key_id is deprecated and should not be used in newly-written code.

This allows setting a preferred key id for the given certificate. This key will be used by functions that involve key handling.

If the provided keyid is NULL then the master key is set as preferred.

Parameters

key

the structure that contains the OpenPGP public key.

 

keyid

the selected keyid

 

Returns

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


gnutls_openpgp_recv_key_func ()

int
(*gnutls_openpgp_recv_key_func) (gnutls_session_t session,
                                 const unsigned char *keyfpr,
                                 unsigned int keyfpr_length,
                                 gnutls_datum_t *key);

A callback of this type is used to retrieve OpenPGP keys. Only useful on the server, and will only be used if the peer send a key fingerprint instead of a full key. See also gnutls_openpgp_set_recv_key_function().

The variable key must be allocated using gnutls_malloc().

Parameters

session

a TLS session

 

keyfpr

key fingerprint

 

keyfpr_length

length of key fingerprint

 

key

output key.

 

Returns

On success, GNUTLS_E_SUCCESS (zero) is returned, otherwise an error code is returned.


gnutls_openpgp_set_recv_key_function ()

void
gnutls_openpgp_set_recv_key_function (gnutls_session_t session,
                                      gnutls_openpgp_recv_key_func func);

gnutls_openpgp_set_recv_key_function is deprecated and should not be used in newly-written code.

This function will set a key retrieval function for OpenPGP keys. This callback is only useful in server side, and will be used if the peer sent a key fingerprint instead of a full key.

The retrieved key must be allocated using gnutls_malloc().

Parameters

session

a TLS session

 

func

the callback

 

Types and Values

GNUTLS_OPENPGP_KEYID_SIZE

#define GNUTLS_OPENPGP_KEYID_SIZE 8


GNUTLS_OPENPGP_MASTER_KEYID_IDX

#define GNUTLS_OPENPGP_MASTER_KEYID_IDX INT_MAX


enum gnutls_openpgp_crt_fmt_t

Enumeration of different OpenPGP key formats.

Members

GNUTLS_OPENPGP_FMT_RAW

OpenPGP certificate in raw format.

 

GNUTLS_OPENPGP_FMT_BASE64

OpenPGP certificate in base64 format.