Fuzz introspector: parse_authority_key_identifier_fuzzer
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The followings are the branches where fuzzer fails to bypass.

Unique non-covered Complexity Unique Reachable Complexities Unique Reachable Functions All non-covered Complexity All Reachable Complexity Function Name Function Callsite Blocked Branch
0 7 1 :

['CBS_get_bytes']

0 7 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:379
0 7 1 :

['CBS_get_bytes']

0 7 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:387
0 0 None 0 100 bssl::der::Parser::ReadConstructed(unsignedint,bssl::der::Parser*) call site: 00000 /src/boringssl/pki/parser.cc:123
0 0 None 0 49 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:312
0 0 None 0 49 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:315
0 0 None 0 12 parse_asn1_tag(cbs_st*,unsignedint*) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:269
0 0 None 0 7 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:354
0 0 None 0 0 cbs_get_any_asn1_element(cbs_st*,cbs_st*,unsignedint*,unsignedlong*,int*,int*,int) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:394
0 0 None 0 0 parse_base128_integer(cbs_st*,unsignedlong*) call site: 00000 /src/boringssl/crypto/bytestring/cbs.cc:250
0 0 None 0 0 bssl::der::Parser::Advance() call site: 00000 /src/boringssl/pki/parser.cc:42

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 bssl::der::Input::Input(unsigned char const*, unsigned long) [function] [call site] 00001
2 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00002
1 bssl::ParsedAuthorityKeyIdentifier::ParsedAuthorityKeyIdentifier() [function] [call site] 00003
1 bssl::ParseAuthorityKeyIdentifier(bssl::der::Input, bssl::ParsedAuthorityKeyIdentifier*) [function] [call site] 00004
2 bssl::der::Parser::Parser(bssl::der::Input) [function] [call site] 00005
3 bssl::der::Input::data() const [function] [call site] 00006
4 bssl::Span<unsigned char const>::data() const [function] [call site] 00007
3 bssl::der::Input::size() const [function] [call site] 00008
4 bssl::Span<unsigned char const>::size() const [function] [call site] 00009
2 bssl::der::Parser::Parser() [function] [call site] 00011
2 bssl::der::Parser::ReadSequence(bssl::der::Parser*) [function] [call site] 00013
3 bssl::der::Parser::ReadConstructed(unsigned int, bssl::der::Parser*) [function] [call site] 00014
4 bssl::der::Input::Input() [function] [call site] 00015
5 bssl::Span<unsigned char const>::Span() [function] [call site] 00016
6 bssl::Span<unsigned char const>::Span(unsigned char const*, unsigned long) [function] [call site] 00017
4 bssl::der::Parser::ReadTag(unsigned int, bssl::der::Input*) [function] [call site] 00018
5 bssl::der::Input::Input() [function] [call site] 00019
5 bssl::der::Parser::PeekTagAndValue(unsigned int*, bssl::der::Input*) [function] [call site] 00020
6 CBS_get_any_asn1_element [function] [call site] 00021
7 cbs_get_any_asn1_element(cbs_st*, cbs_st*, unsigned int*, unsigned long*, int*, int*, int) [function] [call site] 00022
8 __assert_fail [call site] 00023
8 __assert_fail [call site] 00024
8 parse_asn1_tag(cbs_st*, unsigned int*) [function] [call site] 00025
9 CBS_get_u8 [function] [call site] 00026
10 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00027
9 parse_base128_integer(cbs_st*, unsigned long*) [function] [call site] 00028
10 CBS_get_u8 [function] [call site] 00029
8 CBS_get_u8 [function] [call site] 00030
8 CBS_get_bytes [function] [call site] 00032
9 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00033
8 cbs_get_u(cbs_st*, unsigned long*, unsigned long) [function] [call site] 00035
9 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00036
8 CBS_get_bytes [function] [call site] 00037
6 CBS_skip [function] [call site] 00038
7 cbs_get(cbs_st*, unsigned char const**, unsigned long) [function] [call site] 00039
6 bssl::der::Input::Input(unsigned char const*, unsigned long) [function] [call site] 00043
5 bssl::der::Parser::Advance() [function] [call site] 00044
5 abort [call site] 00046
4 bssl::der::Parser::Parser(bssl::der::Input) [function] [call site] 00047
2 bssl::der::Parser::HasMore() [function] [call site] 00048
2 bssl::der::Parser::ReadOptionalTag(unsigned int, std::__1::optional<bssl::der::Input>*) [function] [call site] 00050
3 bssl::der::Parser::HasMore() [function] [call site] 00051
3 bssl::der::Input::Input() [function] [call site] 00052
3 bssl::der::Parser::PeekTagAndValue(unsigned int*, bssl::der::Input*) [function] [call site] 00053
3 bssl::der::Parser::Advance() [function] [call site] 00054
3 abort [call site] 00055
2 bssl::der::Parser::ReadOptionalTag(unsigned int, std::__1::optional<bssl::der::Input>*) [function] [call site] 00056
2 bssl::der::Parser::ReadOptionalTag(unsigned int, std::__1::optional<bssl::der::Input>*) [function] [call site] 00057
2 bssl::der::Parser::HasMore() [function] [call site] 00058
1 bssl::ParsedAuthorityKeyIdentifier::~ParsedAuthorityKeyIdentifier() [function] [call site] 00059