On Fri, 10 Apr 2026 21:58:14 GMT, Weijun Wang <[email protected]> wrote:
> This enhancement adds label display and allow drilling into an OCTET STRING > or BIT STRING. The label can be used in other tools like `DerUtil`. > > For example: > > o $ echo 3009040730050201050500 | xxd -r -p > bin > # Before the change > o $ java ASN1Formatter.java bin > bin > 0000: 30 09 ; SEQUENCE [9] > 0002: 04 07 30 05 02 01 05 05 00 ; OCTET STRING [7] > <Unprintable> > # After the change > o $ java ASN1Formatter.java bin > 0000: 30 09 ; []: SEQUENCE [9] > 0002: 04 07 30 05 02 01 05 05 00 ; [0]: OCTET STRING [7] > (try --drill=0) > o $ java ASN1Formatter.java bin --drill=0 > 0000: 30 09 ; []: SEQUENCE [9] > 0002: 04 07 ; [0]: OCTET STRING [7] > 0004: 30 05 ; [0c]: SEQUENCE [5] > 0006: 02 01 05 ; [0c0]: BYTE 5. > 0009: 05 00 ; [0c1]: NULL > > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). test/lib-test/jdk/test/lib/hexdump/ASN1FormatterTest.java line 136: > 134: System.out.println(result); > 135: > 136: assertTrue(!result.contains("try --drill")); Could this use `assertFalse` instead? test/lib/jdk/test/lib/hexdump/ASN1Formatter.java line 689: > 687: dump = false; > 688: } else { > 689: file = arg; For usability, should this report an error if `file` is non-`null` (that is, if multiple files or unknown args are specified)? Otherwise this would silently ignore unknown args or multiple files. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/30685#discussion_r3069641573 PR Review Comment: https://git.openjdk.org/jdk/pull/30685#discussion_r3069676356
