https://boringssl-review.googlesource.com/c/boringssl/+/75647 tripped an
issue where some build target was linking BoringSSL with a copy of
OpenSSL. The particular combination of hidden and visible symbols meant
that specifically changing bn_mul_mont impacted things. (Internal link
for posterity: go/bn-mul-mont-symbol-collision resolves to the offending
package.)
We very much don't support that right now, but it's easiest to just
rename this symbol right now. Long-term, I suspect we should properly
prefix our symbols. (That will probably involve putting all non-asm
internal symbols behind a C++ namespace, at which point we'll probably
want to reevaluate our naming conventions anyway[*].)
[*] I'd really like to call the new words-based mul and sqr bn_mul_words
and bn_sqr_words, but OpenSSL has assembly functions with those names
that do something else. go/bn-mul-mont-symbol-collision seems
unaffected, but this is perhaps a sign that we should start namespacing
our internals sooner rather than later.
Change-Id: I8c6f362fd01bce51d89b58a08531910c6f1bd0a9
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/80308
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
Auto-Submit: David Benjamin <davidben@google.com>