=pod

=head1 NAME

BN_copy, BN_dup - copy BIGNUMs

=head1 SYNOPSIS

 #include <openssl/bn.h>

 BIGNUM *BN_copy(BIGNUM *to, const BIGNUM *from);

 BIGNUM *BN_dup(const BIGNUM *from);

=head1 DESCRIPTION

BN_copy() copies B<from> to B<to>. BN_dup() creates a new B<BIGNUM>
containing the value B<from>.

=head1 RETURN VALUES

BN_copy() returns B<to> on success, NULL on error. BN_dup() returns
the new B<BIGNUM>, and NULL on error. The error codes can be obtained
by L<ERR_get_error(3)|ERR_get_error(3)>.

=head1 SEE ALSO

L<bn(3)|bn(3)>, L<err(3)|err(3)>

=head1 HISTORY

BN_copy() and BN_dup() are available in all versions of SSLeay and OpenSSL.

=cut
