8 Commits
Author SHA1 Message Date
David Benjamin 33d1049b1f Switch the license to Apache 2.0, matching OpenSSL upstream
We use the standard Apache 2.0 file header, described in "APPENDIX: How
to apply the Apache License to your work."

This was primarily automated by running:

  git ls-tree -r --name-only HEAD | xargs go run ./util/relicense.go

See go/boringssl-relicensing-triage for the results of triaging the
output of the tool.

As part of this, switch from taking fiat-crypto under MIT license to
Apache 2.0. (It is licensed under MIT OR Apache-2.0 OR BSD-1-Clause.)

The copyright_summary tool can also be used to confirm we didn't
accidentally drop any copyright lines:

  # Run before the CL
  git grep -l Copyright | xargs go run ./util/copyright_summary.go  -out /tmp/old.json
  # Run after the CL
  git grep -l Copyright | xargs go run ./util/copyright_summary.go  -compare /tmp/old.json

Bug: 364634028
Change-Id: I17c50e761e9d077a1f92e25969e50ed35e320c59
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/75852
Reviewed-by: Bob Beck <bbe@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
2025-02-03 15:05:16 -08:00
David Benjamin 0fbc17af40 Use BSSL_NAMESPACE_{BEGIN,END} macros more consistently
The macros will participate in symbol prefixing. Not that symbol
prefixing particularly works, but let's be consistent.

Change-Id: I54043a849682e2ba2b8576b59241035e4d4effbe
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/70387
Commit-Queue: David Benjamin <davidben@google.com>
Auto-Submit: David Benjamin <davidben@google.com>
Reviewed-by: Bob Beck <bbe@google.com>
2024-08-26 17:33:18 +00:00
David Benjamin 90ceeb0215 Make der::Input a little closer to Span
This adds a bunch of methods from Span, with the end goal of eventually
making it into a typedef for Span<const uint8_t>. In doing so, this
makes Input implicitly convertible to Span<const uint8_t> and every
other span<const uint8_t> type. For the other direction, I've removed
the 'explicit' marker on the Input(Span) constructor.

I've kept the older spellings around to avoid forcing us to fix it all
at once, but after this rolls in to various places, the next things to
do would be:

1. Go through downstream code and switch them to using the span-like
   spellings. Better yet, have them just pass to their own span type.

2. Since Input <-> Span converts implicitly, we can freely start making
   our APIs take Span instead of Input. Also start cleaning up a bunch
   of now unnecessary explicit der::Input(foo) calls now that, like
   span, it's implicit.

3. Decide what to do with the char vs uint8_t disaster. I'm thinking we
   add free functions to convert between the two.

In doing so, I've also switched some easy places to use more span-y
APIs.

Bug: 661
Change-Id: I731bb110a4fdadd99cb2894e48f016f0b19110ac
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/65668
Auto-Submit: David Benjamin <davidben@google.com>
Reviewed-by: Bob Beck <bbe@google.com>
Reviewed-by: Matt Mueller <mattm@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
2024-01-23 21:30:05 +00:00
Bob Beck 68d6ce38cc Remove fillins/fillins_base64
Move these functions into the library bssl::string_util namespace

Bug: 668
Change-Id: I1665176217fb25164cb321a4092391bf60592a88
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/64187
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: Bob Beck <bbe@google.com>
Auto-Submit: Bob Beck <bbe@google.com>
2023-11-23 18:19:39 +00:00
Bob Beck 410247096a Remove fillins/fillins_string_util.[cc|h]
We move the last piece of used stuff here into the library
string_utils.

Bug: 668
Change-Id: Idde14a497204a3b40a602ed6c03a5859eee80811
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/64167
Auto-Submit: Bob Beck <bbe@google.com>
Commit-Queue: Adam Langley <agl@google.com>
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: Bob Beck <bbe@google.com>
2023-11-23 00:43:27 +00:00
Bob Beck 5c7a2a007c Clang-format all of pki.
Before making further changes. This pass is without
InsertBraces, will follow up with InsertBraces
for separate review

Bug: 659
Change-Id: Ie311dcd932aec5f98c16573f9326b1918a639adf
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/64067
Commit-Queue: David Benjamin <davidben@google.com>
Auto-Submit: Bob Beck <bbe@google.com>
Reviewed-by: David Benjamin <davidben@google.com>
2023-11-21 19:09:26 +00:00
Bob Beck 257bfaa329 Move the fuzzers into the fuzz directory and make them build.
Change-Id: I9346a4bf48d756da254dc27842cd645a3a69f847
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/62045
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: David Benjamin <davidben@google.com>
2023-08-17 16:12:42 +00:00
Bob Beck bc97b7a8e1 Bring in the core of chromium certificate verifier as libpki
Initially this leaves the canonical source in chrome, Additions
and fillins are committed directly, the chrome files are coverted
using the IMPORT script run from the pki directory for the moment.

The intention here is to continue frequent automatic conversion
(and avoid wholesale cosmetic changes in here for now) until
chrome converts to use these files in place of it's versions.
At that point these will become the definiative files, and the
IMPORT script can be tossed out.

A middle step along the way will be to change google3's verify.cc
in third_party/chromium_certificate_verifier to use this instead
of it's own extracted copy.

Status (and what is not done yet) being roughly tracked in README.md

Bug: chromium:1322914

Change-Id: Ibdb5479bc68985fa61ce6b10f98f31f6b3a7cbdf
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/60285
Commit-Queue: Bob Beck <bbe@google.com>
Reviewed-by: Adam Langley <agl@google.com>
2023-06-22 19:34:39 +00:00