



@deftypefun {int} {gnutls_privkey_sign_raw_data} (gnutls_privkey_t @var{key}, unsigned @var{flags}, const gnutls_datum_t * @var{data}, gnutls_datum_t * @var{signature})
@var{key}: Holds the key

@var{flags}: should be zero

@var{data}: holds the data to be signed

@var{signature}: will contain the signature allocate with @code{gnutls_malloc()} 

This function will sign the given data using a signature algorithm
supported by the private key. Note that this is a low-level function
and does not apply any preprocessing or hash on the signed data. 
For example on an RSA key the input  @code{data} should be of the DigestInfo
PKCS @code{1}  1.5 format. Use it only if you know what are you doing.

Note this function is equivalent to using the @code{GNUTLS_PRIVKEY_SIGN_FLAG_TLS1_RSA} 
flag with @code{gnutls_privkey_sign_hash()} .

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

@strong{Since:} 3.1.10
@end deftypefun
