Remove BN_MONT_CTX_init. One less exported function. Nothing ever stack-allocates them, within BoringSSL or in consumers. This avoids the slightly odd mechanism where BN_MONT_CTX_free might or might not free the BN_MONT_CTX itself based on a flag. (This is also consistent with OpenSSL 1.1.x which does away with the _init variants of both this and BIGNUM so it shouldn't be a compatibility concern long-term either.) Change-Id: Id885ae35a26f75686cc68a8aa971e2ea6767ba88 Reviewed-on: https://boringssl-review.googlesource.com/6350 Reviewed-by: Adam Langley <alangley@gmail.com>
diff --git a/include/openssl/bn.h b/include/openssl/bn.h index 8de8cc4..46673dc 100644 --- a/include/openssl/bn.h +++ b/include/openssl/bn.h
@@ -731,11 +731,7 @@ /* BN_MONT_CTX_new returns a fresh BN_MONT_CTX or NULL on allocation failure. */ OPENSSL_EXPORT BN_MONT_CTX *BN_MONT_CTX_new(void); -/* BN_MONT_CTX_init initialises a stack allocated |BN_MONT_CTX|. */ -OPENSSL_EXPORT void BN_MONT_CTX_init(BN_MONT_CTX *mont); - -/* BN_MONT_CTX_free frees the contexts of |mont| and, if it was originally - * allocated with |BN_MONT_CTX_new|, |mont| itself. */ +/* BN_MONT_CTX_free frees memory associated with |mont|. */ OPENSSL_EXPORT void BN_MONT_CTX_free(BN_MONT_CTX *mont); /* BN_MONT_CTX_copy sets |to| equal to |from|. It returns |to| on success or @@ -843,7 +839,6 @@ * (Ni is only stored for bignum algorithm) */ BN_ULONG n0[2]; /* least significant word(s) of Ni; (type changed with 0.9.9, was "BN_ULONG n0;" before) */ - int flags; int ri; /* number of bits in R */ };