Conversation
There was a problem hiding this comment.
Pull request overview
Adds an initial English “Bouncy Castle Migration Guide” to the documentation build system, including a new make target to generate PDF/HTML output alongside existing manuals.
Changes:
- Add
BouncyCastle-Migration/manual (MkDocs + Pandoc header + chapters 1–8). - Wire the new manual into the root build (
make bc-migrationandmake all) and README build list. - Provide migration guidance for JCE/JSSE usage, FIPS considerations, troubleshooting, and support.
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Documents the new make bc-migration build target. |
| Makefile | Adds bc-migration target and includes it in all. |
| BouncyCastle-Migration/Makefile | Defines sources and output PDF name for the new manual. |
| BouncyCastle-Migration/mkdocs.yml | MkDocs config and navigation for the migration guide site build. |
| BouncyCastle-Migration/header.txt | Pandoc PDF header customization for page breaks/headers/code wrapping. |
| BouncyCastle-Migration/src/chapter01.md | Introduction, audience, scope, and motivation. |
| BouncyCastle-Migration/src/chapter02.md | High-level differences between BC and wolfSSL Java providers. |
| BouncyCastle-Migration/src/chapter03.md | JCE provider migration and WKS KeyStore migration guidance. |
| BouncyCastle-Migration/src/chapter04.md | JSSE provider migration guidance. |
| BouncyCastle-Migration/src/chapter05.md | Proprietary BC API migration examples (cert extensions, SANs, RSA, utilities). |
| BouncyCastle-Migration/src/chapter06.md | FIPS 140-3 considerations for wolfJCE/wolfJSSE usage. |
| BouncyCastle-Migration/src/chapter07.md | Troubleshooting and common migration issues. |
| BouncyCastle-Migration/src/chapter08.md | Support channels and related documentation links. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
1d88be4 to
dad20f1
Compare
| if (overflow == 1) { | ||
| /* AIA URI list was truncated, certificate has more URIs | ||
| * than the internal buffer can hold */ | ||
| } else if (overflow == WolfSSL.NOT_COMPILED_IN) { |
There was a problem hiding this comment.
This seems to be the only example which checks for NOT_COMPILED_IN, but there are many routines which return this. Any specific reason to call it out here?
| **wolfCrypt:** | ||
|
|
||
| ```java | ||
| byte[] pem = Files.readAllBytes(Paths.get("key.pem")); |
There was a problem hiding this comment.
Some of the wolfSSL/wolfCrypt examples don't have the relevant import lines. Should we add those for clarity or equivalence with the BC examples?
| To use FIPS 140-3 validated cryptography: | ||
|
|
||
| 1. Obtain a wolfCrypt FIPS 140-3 release from wolfSSL (requires a commercial license). | ||
| 2. Build the native wolfSSL library with FIPS support enabled. |
There was a problem hiding this comment.
Would it be appropriate to add guidance on version compatibility between wolfSSL and the java code? Or maybe this is info they would receive with the license?
This PR adds an initial Bouncy Castle Migration guide (English).
Creates HTML and PDF output:
Current content outline: