=pod

=head1 NAME

DSA_SIG_new, DSA_SIG_free - allocate and free DSA signature objects

=head1 SYNOPSIS

 #include <openssl/dsa.h>

 DSA_SIG *DSA_SIG_new(void);
 void DSA_SIG_free(DSA_SIG *a);
 void DSA_SIG_get0(BIGNUM **pr, BIGNUM **ps, const DSA_SIG *sig);

=head1 DESCRIPTION

DSA_SIG_new() allocates and initializes a B<DSA_SIG> structure.

DSA_SIG_free() frees the B<DSA_SIG> structure and its components. The
values are erased before the memory is returned to the system.

DSA_SIG_get0() returns internal pointers the B<r> and B<s> values contained
in B<sig>. The values can then be examined or initialised.

=head1 RETURN VALUES

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

DSA_SIG_free() returns no value.

=head1 SEE ALSO

L<dsa(3)>, L<ERR_get_error(3)>,
L<DSA_do_sign(3)>

=cut
