- NAME
- SYNOPSIS
- DESCRIPTION
- RETURN VALUES
- SEE ALSO
- HISTORY

# NAME

DSA_new, DSA_free - allocate and free DSA objects

# SYNOPSIS

     #include <openssl/dsa.h>

     DSA* DSA_new(void);

     void DSA_free(DSA *dsa);

# DESCRIPTION

`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.

# RETURN VALUES

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

`DSA_free()` returns no value.

# SEE ALSO

dsa, ERR_get_error, DSA_generate_parameters, DSA_generate_key

# HISTORY

`DSA_new()` and `DSA_free()` are available in all versions of SSLeay and OpenSSL.