DSA_new() allocates and initializes a DSA structure. It is equivalent to calling DSA_new_method(NULL).
DSA_free() frees the DSA structure and its components. The values are erased before the memory is returned to the system.
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_free() returns no value.