gnutls_privkey_import_ext3(3)

NAME
gnutls_privkey_import_ext3 - API function

SYNOPSIS
#include <gnutls/abstract.h>

int gnutls_privkey_import_ext3(gnutls_privkey_t pkey, void * userdata, gnutls_privkey_sign_func sign_fn, gnutls_privkey_decrypt_func decrypt_fn, gnutls_privkey_deinit_func deinit_fn, gnutls_privkey_info_func info_fn, unsigned int flags);

ARGUMENTS

gnutls_privkey_t pkey
    The private key

void * userdata
    private data to be provided to the callbacks

gnutls_privkey_sign_func sign_fn
    callback for signature operations

gnutls_privkey_decrypt_func decrypt_fn
    callback for decryption operations

gnutls_privkey_deinit_func deinit_fn
    a deinitialization function

gnutls_privkey_info_func info_fn
    returns info about the public key algorithm (should not be NULL)

unsigned int flags
    Flags for the import

DESCRIPTION
This function will associate the given callbacks with the gnutls_privkey_t type. At least one of the two callbacks must be non-null. If a deinitialization function is provided then flags is assumed to contain GNUTLS_PRIVKEY_IMPORT_AUTO_RELEASE.

Note that the signing function is supposed to "raw" sign data, i.e., without any hashing or preprocessing. In case of RSA the DigestInfo will be provided, and the signing function is expected to do the PKCS 1 1.5 padding and the exponentiation.

The info_fn must provide information on the algorithms supported by this private key, and should support the flags GNUTLS_PRIVKEY_INFO_PK_ALGO and GNUTLS_PRIVKEY_INFO_SIGN_ALGO. It must return -1 on unknown flags.

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: http://www.gnutls.org

COPYRIGHT
Copyright © 2001-2017 Free Software Foundation, Inc., and others.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

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

http://www.gnutls.org/manual/