On Tue, 22 Nov 2022 22:29:24 GMT, Weijun Wang <[email protected]> wrote:
> This is mostly cleanup. Everything around `DerOutputStream` no longer throws
> an `IOException`. This includes:
>
> - Remove unnecessary `throws IOException` in code and spec
> - Remove `catch (IOException ioe)` blocks. If new exception is thrown, remove
> further `throws` in code and spec
> - More classes implementing `DerEncoder` if they have a
> `encode(DerOutputStream)` method
> - Modify `write(bytes)` to `writeBytes(bytes)` to avoid IOE
> - Some unused methods removed
> - `DerOutputStream` is final
>
> The only actual changes (still trivial) are:
> - Since `PKCS7::encodeSignedData(OutputStream out)` is removed, its usages in
> `PKCS7::constructToken` and `TsaSigner::createResponse` (in test) are
> modified to use another method with a `DerOutputStream` argument.
> - In PKCS8Key, since `getEncodedInternal` never returns non-null, remove null
> check on result
> - Since `DerOutputStream` is final, no need to clone bytes in `encode` of
> `X509CertImpl` and `X509CRLImpl`.
src/java.base/share/classes/sun/security/x509/CRLExtensions.java line 151:
> 149:
> 150: DerOutputStream tmp = new DerOutputStream();
> 151: if (isExplicit)
Use curley braces.
src/java.base/share/classes/sun/security/x509/IssuingDistributionPointExtension.java
line 121:
> 119: boolean hasOnlyUserCerts, boolean hasOnlyCACerts,
> 120: boolean hasOnlyAttributeCerts, boolean isIndirectCRL)
> 121: throws IOException {
Don't you need `throws IllegalArgumentException`?
-------------
PR: https://git.openjdk.org/jdk/pull/11302