=pod

=head1 NAME

RSA_new, RSA_free - allocate and free RSA objects

=head1 SYNOPSIS

 #include <openssl/rsa.h>

 RSA * RSA_new(void);

 void RSA_free(RSA *rsa);

=head1 DESCRIPTION

RSA_new() allocates and initializes an B<RSA> structure. It is equivalent to
calling RSA_new_method(NULL).

RSA_free() frees the B<RSA> structure and its components. The key is
erased before the memory is returned to the system.
If B<rsa> is NULL nothing is done.

=head1 RETURN VALUES

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

RSA_free() returns no value.

=head1 SEE ALSO

L<ERR_get_error(3)|ERR_get_error(3)>, L<rsa(3)|rsa(3)>,
L<RSA_generate_key(3)|RSA_generate_key(3)>,
L<RSA_new_method(3)|RSA_new_method(3)>

=head1 HISTORY

RSA_new() and RSA_free() are available in all versions of SSLeay and OpenSSL.

=cut
