Name

gnutls_x509_privkey_sign_data — sign data using the private key

Synopsis

#include <gnutls/x509.h>
int gnutls_x509_privkey_sign_data( gnutls_x509_privkey_t key,
  gnutls_digest_algorithm_t digest,
  unsigned int flags,
  const gnutls_datum_t * data,
  void * signature,
  size_t * signature_size);
 

ARGUMENTS

gnutls_x509_privkey_t key

Holds the key

gnutls_digest_algorithm_t digest

should be MD5 or SHA1

unsigned int flags

should be 0 for now

const gnutls_datum_t * data

holds the data to be signed

void * signature

will contain the signature

size_t * signature_size

holds the size of signature (and will be replaced by the new size)

DESCRIPTION

This function will sign the given data using a signature algorithm supported by the private key. Signature algorithms are always used together with a hash functions. Different hash functions may be used for the RSA algorithm, but only SHA−1 for the DSA keys.

If the buffer provided is not long enough to hold the output, then *signature_size is updated and GNUTLS_E_SHORT_MEMORY_BUFFER will be returned.

RETURNS

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

REPORTING BUGS

Report bugs to <[email protected]>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/

SEE ALSO

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.

COPYRIGHT

Copyright © 2008 Free Software Foundation.

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.