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

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
12 13 [org.apache.poi.hdgf.HDGFDiagram]. (org.apache.poi.poifs.filesystem.DirectoryNode) call site: {node_id} [org.apache.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(String)
12 96 [org.apache.poi.hdgf.streams.PointerContainingStream]. (org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory,org.apache.poi.hdgf.pointers.PointerFactory) call site: {node_id}
4 65 [org.apache.poi.hdgf.HDGFDiagram]. (org.apache.poi.poifs.filesystem.DirectoryNode) call site: {node_id} [org.apache.poi.hdgf.pointers.Pointer].getOffset()
4 85 [org.apache.poi.util.IOUtils].safelyClone(byte[],int,int,int) call site: {node_id} [org.apache.poi.hdgf.pointers.Pointer].getOffset()
3 61 [org.apache.poi.hdgf.pointers.PointerFactory].createPointer(byte[],int) call site: {node_id}
2 90 [org.apache.poi.hdgf.streams.StreamStore]. (byte[],int,int) call site: {node_id} [org.apache.poi.hdgf.pointers.Pointer].getType()
2 110 [org.apache.poi.hdgf.streams.ChunkStream]. (org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory) call site: {node_id}
2 117 [org.apache.poi.hdgf.HDGFDiagram]. (org.apache.poi.poifs.filesystem.DirectoryNode) call site: {node_id}
1 11 [org.apache.poi.POIReadOnlyDocument]. (org.apache.poi.poifs.filesystem.DirectoryNode) call site: {node_id}
1 113 [org.apache.poi.hdgf.streams.StringsStream]. (org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory) call site: {node_id}

Fuzzer calltree

0 [org.apache.poi.POIHDGFFuzzer].fuzzerTestOneInput(byte[]) [function] [call site] 00000
1 [java.io.ByteArrayInputStream].<init>(byte[]) [function] [call site] 00001
1 [org.apache.poi.poifs.filesystem.POIFSFileSystem].<init>(java.io.ByteArrayInputStream) [function] [call site] 00002
1 [org.apache.poi.hdgf.HDGFDiagram].<init>(org.apache.poi.poifs.filesystem.POIFSFileSystem) [function] [call site] 00003
2 [org.apache.poi.poifs.filesystem.POIFSFileSystem].getRoot() [function] [call site] 00004
3 [org.apache.poi.poifs.property.PropertyTable].getRoot() [function] [call site] 00005
4 [java.util.List<org.apache.poi.poifs.property.Property>].get(int) [function] [call site] 00006
4 [IllegalStateException].<init>(String) [function] [call site] 00007
3 [org.apache.poi.poifs.filesystem.DirectoryNode].<init>(org.apache.poi.poifs.property.RootProperty,null) [function] [call site] 00008
2 [org.apache.poi.hdgf.HDGFDiagram].<init>(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00009
3 [org.apache.poi.POIReadOnlyDocument].<init>(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00010
4 [org.apache.poi.POIDocument].<init>(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00011
5 [org.apache.poi.logging.PoiLogManager].getLogger() [function] [call site] 00012
3 [org.apache.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(String) [function] [call site] 00013
4 [org.apache.poi.poifs.filesystem.DirectoryNode].getEntryCaseInsensitive(String) [function] [call site] 00014
5 [String].toUpperCase(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00015
5 [java.util.Map<String,org.apache.poi.poifs.filesystem.Entry>].get(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00016
5 [java.util.Map<String,org.apache.poi.poifs.filesystem.Entry>].containsKey(String) [function] [call site] 00017
5 [IllegalArgumentException].<init>(String) [function] [call site] 00018
5 [java.util.Map<String,org.apache.poi.poifs.filesystem.Entry>].containsKey(String) [function] [call site] 00019
5 [IllegalArgumentException].<init>(String) [function] [call site] 00020
5 [java.util.Map<String,org.apache.poi.poifs.filesystem.Entry>].containsKey(String) [function] [call site] 00021
5 [IllegalArgumentException].<init>(String) [function] [call site] 00022
5 [java.util.Map<String,org.apache.poi.poifs.filesystem.Entry>].keySet() [function] [call site] 00023
5 [java.io.FileNotFoundException].<init>(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00024
4 [org.apache.poi.poifs.filesystem.DirectoryNode].createDocumentInputStream(org.apache.poi.poifs.filesystem.Entry) [function] [call site] 00025
5 [org.apache.poi.poifs.filesystem.Entry].isDocumentEntry() [function] [call site] 00026
5 [java.io.IOException].<init>(String) [function] [call site] 00027
5 [org.apache.poi.poifs.filesystem.DocumentInputStream].<init>(org.apache.poi.poifs.filesystem.DirectoryNode) [function] [call site] 00028
3 [org.apache.poi.util.IOUtils].toByteArray(org.apache.poi.hdgf.HDGFDiagram) [function] [call site] 00029
3 [String].<init>(byte[],int,int,java.nio.charset.Charset) [function] [call site] 00030
3 [String].equals(String) [function] [call site] 00031
3 [IllegalArgumentException].<init>(String) [function] [call site] 00032
3 [org.apache.poi.util.LittleEndian].getShort(byte[],int) [function] [call site] 00033
3 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00034
4 [org.apache.poi.util.LittleEndian].getInt(byte[],int) [function] [call site] 00035
3 [org.apache.poi.hdgf.pointers.PointerFactory].<init>(short) [function] [call site] 00036
3 [org.apache.poi.hdgf.chunks.ChunkFactory].<init>(short) [function] [call site] 00037
3 [org.apache.poi.hdgf.pointers.PointerFactory].createPointer(byte[],int) [function] [call site] 00038
4 [org.apache.poi.hdgf.pointers.PointerV6].<init>() [function] [call site] 00039
4 [org.apache.poi.util.LittleEndian].getInt(byte[],int) [function] [call site] 00040
4 [org.apache.poi.hdgf.pointers.PointerV6].setType(int) [function] [call site] 00041
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00042
4 [org.apache.poi.hdgf.pointers.PointerV6].setAddress(int) [function] [call site] 00043
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00044
4 [org.apache.poi.hdgf.pointers.PointerV6].setOffset(int) [function] [call site] 00045
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00046
4 [org.apache.poi.hdgf.pointers.PointerV6].setLength(int) [function] [call site] 00047
4 [org.apache.poi.util.LittleEndian].getShort(byte[],int) [function] [call site] 00048
4 [org.apache.poi.hdgf.pointers.PointerV6].setFormat(short) [function] [call site] 00049
4 [org.apache.poi.hdgf.pointers.PointerV5].<init>() [function] [call site] 00050
4 [org.apache.poi.util.LittleEndian].getShort(byte[],int) [function] [call site] 00051
4 [org.apache.poi.hdgf.pointers.PointerV5].setType(short) [function] [call site] 00052
4 [org.apache.poi.util.LittleEndian].getShort(byte[],int) [function] [call site] 00053
4 [org.apache.poi.hdgf.pointers.PointerV5].setFormat(short) [function] [call site] 00054
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00055
4 [org.apache.poi.hdgf.pointers.PointerV5].setAddress(int) [function] [call site] 00056
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00057
4 [org.apache.poi.hdgf.pointers.PointerV5].setOffset(int) [function] [call site] 00058
4 [org.apache.poi.util.LittleEndian].getUInt(byte[],int) [function] [call site] 00059
4 [org.apache.poi.hdgf.pointers.PointerV5].setLength(int) [function] [call site] 00060
4 [org.apache.poi.hdgf.exceptions.OldVisioFormatException].<init>(String) [function] [call site] 00061
5 [org.apache.poi.OldFileFormatException].<init>(String) [function] [call site] 00062
6 [org.apache.poi.UnsupportedFileFormatException].<init>(String) [function] [call site] 00063
7 [IllegalArgumentException].<init>(String) [function] [call site] 00064
3 [org.apache.poi.hdgf.streams.Stream].createStream(org.apache.poi.hdgf.pointers.Pointer,byte[],org.apache.poi.hdgf.chunks.ChunkFactory,org.apache.poi.hdgf.pointers.PointerFactory) [function] [call site] 00065
4 [org.apache.poi.hdgf.pointers.Pointer].destinationCompressed() [function] [call site] 00066
4 [org.apache.poi.hdgf.pointers.Pointer].getOffset() [function] [call site] 00067
4 [org.apache.poi.hdgf.pointers.Pointer].getLength() [function] [call site] 00068
4 [org.apache.poi.hdgf.streams.CompressedStreamStore].<init>(byte[],int,int) [function] [call site] 00069
5 [org.apache.poi.hdgf.streams.CompressedStreamStore].decompress(byte[],int,int) [function] [call site] 00070
6 [org.apache.commons.io.input.UnsynchronizedByteArrayInputStream].builder() [function] [call site] 00071
6 [org.apache.poi.hdgf.streams.CompressedStreamStore].setByteArray(byte[]) [function] [call site] 00072
6 [org.apache.poi.hdgf.streams.CompressedStreamStore].setOffset(int) [function] [call site] 00073
6 [org.apache.poi.hdgf.streams.CompressedStreamStore].setLength(int) [function] [call site] 00074
6 [org.apache.poi.hdgf.streams.CompressedStreamStore].get() [function] [call site] 00075
6 [org.apache.poi.hdgf.HDGFLZW].<init>() [function] [call site] 00076
7 [org.apache.poi.util.LZWDecompresser].<init>(boolean,int,boolean) [function] [call site] 00077
6 [org.apache.poi.hdgf.HDGFLZW].decompress(org.apache.poi.hdgf.streams.CompressedStreamStore) [function] [call site] 00078
6 [IllegalArgumentException].<init>(String) [function] [call site] 00079
5 [org.apache.poi.hdgf.streams.CompressedStreamStore].<init>(byte[][]) [function] [call site] 00080
6 [org.apache.poi.hdgf.streams.StreamStore].<init>(int,org.apache.poi.hdgf.streams.CompressedStreamStore) [function] [call site] 00081
5 [org.apache.poi.util.IOUtils].safelyClone(byte[],int,int,int) [function] [call site] 00082
6 [org.apache.poi.util.RecordFormatException].<init>(org.apache.poi.util.IOUtils) [function] [call site] 00083
6 [org.apache.poi.util.IOUtils].safelyAllocateCheck(org.apache.poi.util.IOUtils,int) [function] [call site] 00084
6 [java.util.Arrays].copyOfRange(byte[],int,org.apache.poi.util.IOUtils) [function] [call site] 00085
4 [org.apache.poi.hdgf.exceptions.HDGFException].<init>(org.apache.poi.hdgf.streams.Stream) [function] [call site] 00086
4 [org.apache.poi.hdgf.pointers.Pointer].getOffset() [function] [call site] 00087
4 [org.apache.poi.hdgf.pointers.Pointer].getLength() [function] [call site] 00088
4 [org.apache.poi.hdgf.streams.StreamStore].<init>(byte[],int,int) [function] [call site] 00089
5 [org.apache.poi.util.IOUtils].safelyClone(byte[],int,int,int) [function] [call site] 00090
4 [org.apache.poi.hdgf.pointers.Pointer].getType() [function] [call site] 00091
4 [org.apache.poi.hdgf.streams.TrailerStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory,org.apache.poi.hdgf.pointers.PointerFactory) [function] [call site] 00092
5 [org.apache.poi.hdgf.streams.PointerContainingStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory,org.apache.poi.hdgf.pointers.PointerFactory) [function] [call site] 00093
6 [org.apache.poi.hdgf.streams.Stream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore) [function] [call site] 00094
6 [org.apache.poi.hdgf.streams.StreamStore].getContents() [function] [call site] 00095
6 [org.apache.poi.hdgf.pointers.PointerFactory].createContainerPointers(org.apache.poi.hdgf.pointers.Pointer,byte[]) [function] [call site] 00096
7 [org.apache.poi.hdgf.pointers.Pointer].getNumPointersOffset(byte[]) [function] [call site] 00097
7 [org.apache.poi.hdgf.pointers.Pointer].getNumPointers(int,byte[]) [function] [call site] 00098
7 [org.apache.poi.hdgf.pointers.Pointer].getPostNumPointersSkip() [function] [call site] 00099
7 [IllegalArgumentException].<init>(String) [function] [call site] 00100
7 [org.apache.poi.util.IOUtils].safelyAllocateCheck(int,int) [function] [call site] 00101
7 [org.apache.poi.hdgf.pointers.PointerFactory].createPointer(byte[],org.apache.poi.hdgf.pointers.PointerFactory) [function] [call site] 00102
7 [poi/poi-scratchpadmain/java/org/apache/poi/hdgf/pointers/PointerFactory.java].childPointers[i].getSizeInBytes() [function] [call site] 00103
4 [org.apache.poi.hdgf.pointers.Pointer].destinationHasPointers() [function] [call site] 00104
4 [org.apache.poi.hdgf.streams.PointerContainingStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory,org.apache.poi.hdgf.pointers.PointerFactory) [function] [call site] 00105
4 [org.apache.poi.hdgf.pointers.Pointer].destinationHasChunks() [function] [call site] 00106
4 [org.apache.poi.hdgf.streams.ChunkStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory) [function] [call site] 00107
5 [org.apache.poi.logging.PoiLogManager].getLogger() [function] [call site] 00108
5 [org.apache.poi.hdgf.streams.Stream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore) [function] [call site] 00109
5 [org.apache.poi.hdgf.streams.StreamStore].copyBlockHeaderToContents() [function] [call site] 00110
4 [org.apache.poi.hdgf.pointers.Pointer].destinationHasStrings() [function] [call site] 00111
4 [org.apache.poi.hdgf.streams.StringsStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore,org.apache.poi.hdgf.chunks.ChunkFactory) [function] [call site] 00112
5 [org.apache.poi.hdgf.streams.Stream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore) [function] [call site] 00113
4 [org.apache.poi.hdgf.streams.UnknownStream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore) [function] [call site] 00114
5 [org.apache.poi.hdgf.streams.Stream].<init>(org.apache.poi.hdgf.pointers.Pointer,org.apache.poi.hdgf.streams.StreamStore) [function] [call site] 00115
3 [IllegalStateException].<init>(String) [function] [call site] 00116
3 [org.apache.poi.hdgf.streams.TrailerStream].findChildren(byte[]) [function] [call site] 00117
1 [org.apache.poi.hdgf.extractor.VisioTextExtractor].<init>(org.apache.poi.POIHDGFFuzzer) [function] [call site] 00118
1 [org.apache.poi.POIFuzzer].checkExtractor(org.apache.poi.POIHDGFFuzzer) [function] [call site] 00119