gnutls_x509_privkey_sign_data(3)

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 <bug-gnutls@gnu.org>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/

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.

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.