Fuzz introspector: cms_gdb_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
26 26 1 :

['cmsSignalError']

26 26 _cmsContextGetClientChunk call site: 00003 /src/lcms/src/cmsplugin.c:752
26 26 1 :

['cmsSignalError']

26 26 GetPoint call site: 00028 /src/lcms/src/cmssm.c:347
14 14 3 :

['_cmsLeaveCriticalSectionPrimitive', '_cmsEnterCriticalSectionPrimitive', 'InitContextMutex']

14 14 _cmsGetContext call site: 00008 /src/lcms/src/cmsplugin.c:720
0 0 None 26 26 GetPoint call site: 00021 /src/lcms/src/cmssm.c:339
0 0 None 0 0 _cmsContextGetClientChunk call site: 00004 /src/lcms/src/cmsplugin.c:766
0 0 None 0 0 cmsGDBAddPoint call site: 00016 /src/lcms/src/cmssm.c:370
0 0 None 0 0 QuantizeToSector call site: 00028 /src/lcms/src/cmssm.c:173

Fuzzer calltree

0 LLVMFuzzerTestOneInput [function] [call site] 00000
1 cmsGBDAlloc [function] [call site] 00001
2 _cmsMallocZero [function] [call site] 00002
3 _cmsContextGetClientChunk [function] [call site] 00003
4 cmsSignalError [function] [call site] 00004
5 vsnprintf [call site] 00005
5 _cmsContextGetClientChunk [function] [call site] 00006
6 __assert_fail [call site] 00007
6 _cmsGetContext [function] [call site] 00008
7 InitContextMutex [function] [call site] 00009
7 _cmsEnterCriticalSectionPrimitive [function] [call site] 00010
8 pthread_mutex_lock [call site] 00011
7 _cmsLeaveCriticalSectionPrimitive [function] [call site] 00012
8 pthread_mutex_unlock [call site] 00013
7 _cmsLeaveCriticalSectionPrimitive [function] [call site] 00014
1 cmsGDBAddPoint [function] [call site] 00015
2 GetPoint [function] [call site] 00016
3 __assert_fail [call site] 00017
3 __assert_fail [call site] 00018
3 __assert_fail [call site] 00019
3 _cmsVEC3init [function] [call site] 00020
3 ToSpherical [function] [call site] 00021
4 sqrt [call site] 00022
4 _cmsAtan2 [function] [call site] 00023
5 atan2 [call site] 00024
4 sqrt [call site] 00025
4 _cmsAtan2 [function] [call site] 00026
3 cmsSignalError [function] [call site] 00027
3 QuantizeToSector [function] [call site] 00028
3 cmsSignalError [function] [call site] 00029
1 cmsGDBCheckPoint [function] [call site] 00030
1 cmsGDBCompute [function] [call site] 00032
2 __assert_fail [call site] 00033
2 InterpolateMissingSector [function] [call site] 00034
3 FindNearSectors [function] [call site] 00035
3 ToCartesian [function] [call site] 00036
4 sin [call site] 00037
4 cos [call site] 00038
4 sin [call site] 00039
4 cos [call site] 00040
3 _cmsVEC3init [function] [call site] 00041
3 LineOf2Points [function] [call site] 00042
4 _cmsVEC3init [function] [call site] 00043
4 _cmsVEC3init [function] [call site] 00044
3 ToCartesian [function] [call site] 00045
3 ToCartesian [function] [call site] 00046
3 LineOf2Points [function] [call site] 00047
3 ClosestLineToLine [function] [call site] 00048
4 _cmsVEC3minus [function] [call site] 00049
4 _cmsVEC3dot [function] [call site] 00050
4 _cmsVEC3dot [function] [call site] 00051
4 _cmsVEC3dot [function] [call site] 00052
4 _cmsVEC3dot [function] [call site] 00053
4 _cmsVEC3dot [function] [call site] 00054
4 GetPointOfLine [function] [call site] 00055
3 ToSpherical [function] [call site] 00056
2 InterpolateMissingSector [function] [call site] 00057
2 InterpolateMissingSector [function] [call site] 00058
1 cmsGBDFree [function] [call site] 00059
2 _cmsFree [function] [call site] 00060
3 _cmsContextGetClientChunk [function] [call site] 00061