Scroll to navigation

DSA_SIG_NEW(3) Library Functions Manual DSA_SIG_NEW(3)

NAME

DSA_SIG_new, DSA_SIG_free, DSA_SIG_get0, DSA_SIG_set0manipulate DSA signature objects

SYNOPSIS

#include <openssl/dsa.h>

DSA_SIG *
DSA_SIG_new(void);

void
DSA_SIG_free(DSA_SIG *sig);

void
DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **r, const BIGNUM **s);

int
DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s);

DESCRIPTION

() allocates an empty DSA_SIG structure.

() frees the DSA_SIG structure and its components. The values are erased before the memory is returned to the system. If sig is a NULL pointer, no action occurs.

() retrieves internal pointers to the r and s values contained in sig.

The r and s values can be set by calling (). Calling this function transfers the memory management of the values to sig, and therefore they should not be freed by the caller.

RETURN VALUES

If the allocation fails, DSA_SIG_new() returns NULL and sets an error code that can be obtained by ERR_get_error(3). Otherwise it returns a pointer to the newly allocated structure.

DSA_SIG_set0() returns 1 on success or 0 on failure.

SEE ALSO

DSA_do_sign(3), DSA_new(3)

HISTORY

DSA_SIG_new() and DSA_SIG_free() first appeared in OpenSSL 0.9.3 and have been available since OpenBSD 2.6.

DSA_SIG_get0() and DSA_SIG_set0() first appeared in OpenSSL 1.1.0 and have been available since OpenBSD 6.3.

June 10, 2019 Linux 6.4.0-150600.23.25-default