



@deftypefun {int} {gnutls_privkey_init} (gnutls_privkey_t * @var{key})
@var{key}: A pointer to the type to be initialized

This function will initialize a private key object. The object can
be used to generate, import, and perform cryptographic operations
on the associated private key.

Note that when the underlying private key is a PKCS@code{11}  key (i.e.,
when imported with a PKCS@code{11}  URI), the limitations of @code{gnutls_pkcs11_privkey_init()} 
apply to this object as well. In versions of GnuTLS later than 3.5.11 the object
is protected using locks and a single @code{gnutls_privkey_t}  can be re-used
by many threads. However, for performance it is recommended to utilize
one object per key per thread.

@strong{Returns:} On success, @code{GNUTLS_E_SUCCESS}  (0) is returned, otherwise a
negative error value.

@strong{Since:} 2.12.0
@end deftypefun
