— use temporary BIGNUM
These functions are used to obtain temporary BIGNUM variables from a BN_CTX (which can be created using BN_CTX_new(3)) in order to save the overhead of repeatedly creating and freeing BIGNUMs in functions that are called from inside a loop.
A function must call
may be called repeatedly to obtain temporary BIGNUMs.
BN_CTX_get() calls must be made before calling
any other functions that use the ctx as an
must be called before returning from the function. When
BN_CTX_end() is called, the
BIGNUM pointers obtained from
BN_CTX_get() become invalid. If
NULL, no action
BN_CTX_get() returns a pointer to the
NULL on error. Once
BN_CTX_get() has failed, the subsequent calls will
NULL as well, so it is sufficient to check
the return value of the last
BN_CTX_get() call. In
case of an error, an error code is set which can be obtained by
BN_CTX_end() first appeared in OpenSSL 0.9.5 and
have been available since OpenBSD 2.7.