bssl speed: better and more consistent pattern matching in `-filter`. It now supports: - All filters apply to either the catgeory, or the name, or both. - Case, dashes and spaces are ignored. - `bssl speed -filter filter1,filter2,...`: run the union of filters. - `bssl speed -filter 'foo': run only tests named foo. - `bssl speed -filter 'foo*': run all tests starting with foo. - `bssl speed -filter '*foo': run all tests ending with foo. - `bssl speed -filter '*foo*': run all tests with foo in the name. Tested: `-filter '*128,*22*,sha1*,trusttoken'` matches: - AES-128 (just the block cipher, not the AEADs) - P-224 (both ECDH and ECDSA) - SHA-1 - TrustToken (entire category) Update-Note: parsing of `bssl speed -filter` changed. When the algorithm name is fully specified, nothing changes; however substring matching now needs to be explicitly requested via `bssl speed -filter '*substring*'`. Also, this entire utility is likely soon going to get replaced by something based on Google Benchmark in Ic8d4cfd65065e61ae90c58bddb34463a5f398f14; we're making sure however that all functionality added here will remain somehow possible using `--benchmark_filter` expressions (but likely with extra syntax). Change-Id: I766114ddb22b17638999b262c2d62cc86ae3e579 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/84707 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: Rudolf Polzer <rpolzer@google.com> Auto-Submit: Rudolf Polzer <rpolzer@google.com>
BoringSSL is a fork of OpenSSL that is designed to meet Google's needs.
Although BoringSSL is an open source project, it is not intended for general use, as OpenSSL is. We don't recommend that third parties depend upon it. Doing so is likely to be frustrating because there are no guarantees of API or ABI stability.
Programs ship their own copies of BoringSSL when they use it and we update everything as needed when deciding to make API changes. This allows us to mostly avoid compromises in the name of compatibility. It works for us, but it may not work for you.
BoringSSL arose because Google used OpenSSL for many years in various ways and, over time, built up a large number of patches that were maintained while tracking upstream OpenSSL. As Google's product portfolio became more complex, more copies of OpenSSL sprung up and the effort involved in maintaining all these patches in multiple places was growing steadily.
Currently BoringSSL is the SSL library in Chrome/Chromium, Android (but it's not part of the NDK) and a number of other apps/programs.
Project links:
To file a security issue, use the Chromium process and mention in the report this is for BoringSSL. You can ignore the parts of the process that are specific to Chromium/Chrome.
There are other files in this directory which might be helpful: