gnutls_privkey_import_ext2 — API function


#include <gnutls/abstract.h>
int gnutls_privkey_import_ext2( gnutls_privkey_t pkey,
  gnutls_pk_algorithm_t pk,
  void * userdata,
  gnutls_privkey_sign_func sign_func,
  gnutls_privkey_decrypt_func decrypt_func,
  gnutls_privkey_deinit_func deinit_func,
  unsigned int flags);


gnutls_privkey_t pkey

The private key

gnutls_pk_algorithm_t pk

The public key algorithm

void * userdata

private data to be provided to the callbacks

gnutls_privkey_sign_func sign_func

callback for signature operations

gnutls_privkey_decrypt_func decrypt_func

callback for decryption operations

gnutls_privkey_deinit_func deinit_func

a deinitialization function

unsigned int flags

Flags for the import


This function will associate the given callbacks with the gnutls_privkey_t structure. 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.


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




Report bugs to <>.

General guidelines for reporting bugs:

GnuTLS home page:


The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command

info gnutls

should give you access to the complete manual. As an alternative you may obtain the manual from:


Copyright © 2001-2013 Free Software Foundation, Inc..

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.