libressl-DSA_new3
Allocate and free dsa objects
Usage
Crypto Library (libcrypto, -lcrypto)
#include <openssl/dsa.h>
DSA*
DSA_new(void);
int
DSA_up_ref(DSA *dsa);
void
DSA_free(DSA *dsa);
Overview
The DSA functions implement the Digital Signature Algorithm.
DSA_new() allocates and initializes a DSA structure, setting the reference count to 1. It is equivalent to calling DSA_new_method(3) with a NULL argument.
DSA_up_ref() increments the reference count by 1.
DSA_free() decrements the reference count by 1. If it reaches 0, it frees the DSA structure and its components. The values are erased before the memory is returned to the system. If dsa is a NULL pointer, no action occurs.
Return values
If the allocation fails, DSA_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_up_ref() returns 1 for success or 0 for failure.