Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion targets/lcms/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ FROM ossfuzz/base-libfuzzer
MAINTAINER kcwu@google.com
RUN apt-get install -y make autoconf automake libtool
RUN git clone https://github.com/mm2/Little-CMS.git lcms
COPY build.sh cmsIT8_load_fuzzer.c cms_transform_fuzzer.c /src/
COPY build.sh cmsIT8_load_fuzzer.* cms_transform_fuzzer.* icc.dict /src/
2 changes: 2 additions & 0 deletions targets/lcms/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,5 @@ for F in $FUZZERS; do
/src/$F.c -o /out/$F \
-lfuzzer src/.libs/liblcms2.a $FUZZER_LDFLAGS
done

cp /src/icc.dict /src/*.options /out
2 changes: 2 additions & 0 deletions targets/lcms/cmsIT8_load_fuzzer.options
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[libfuzzer]
dict = icc.dict
2 changes: 2 additions & 0 deletions targets/lcms/cms_transform_fuzzer.options
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[libfuzzer]
dict = icc.dict
251 changes: 251 additions & 0 deletions targets/lcms/icc.dict
Original file line number Diff line number Diff line change
@@ -0,0 +1,251 @@
# Fuzzing dictionary for icc
# Extracted from lcms2.h of Little-CMS project 2.8.

magic="acsp"
sig="lcms"

# Base ICC type definitions
"chrm"
"clro"
"clrt"
"crdi"
"curv"
"data"
"dict"
"dtim"
"devs"
"mft2"
"mft1"
"mAB "
"mBA "
"meas"
"mluc"
"mpet"
"ncol"
"ncl2"
"para"
"pseq"
"psid"
"rcs2"
"sf32"
"scrn"
"sig "
"text"
"desc"
"uf32"
"bfd "
"ui16"
"ui32"
"ui64"
"ui08"
"vcgt"
"view"
"XYZ "

# Base ICC tag definitions
"A2B0"
"A2B1"
"A2B2"
"bXYZ"
"bXYZ"
"bTRC"
"B2A0"
"B2A1"
"B2A2"
"calt"
"targ"
"chad"
"chrm"
"clro"
"clrt"
"clot"
"ciis"
"cprt"
"crdi"
"data"
"dtim"
"dmnd"
"dmdd"
"devs"
"D2B0"
"D2B1"
"D2B2"
"D2B3"
"B2D0"
"B2D1"
"B2D2"
"B2D3"
"gamt"
"kTRC"
"gXYZ"
"gXYZ"
"gTRC"
"lumi"
"meas"
"bkpt"
"wtpt"
"ncol"
"ncl2"
"resp"
"rig0"
"pre0"
"pre1"
"pre2"
"desc"
"dscm"
"pseq"
"psid"
"psd0"
"psd1"
"psd2"
"psd3"
"ps2s"
"ps2i"
"rXYZ"
"rXYZ"
"rTRC"
"rig2"
"scrd"
"scrn"
"tech"
"bfd "
"vued"
"view"
"vcgt"
"meta"
"arts"

# ICC Technology tag
"dcam"
"fscn"
"rscn"
"ijet"
"twax"
"epho"
"esta"
"dsub"
"rpho"
"fprn"
"vidm"
"vidc"
"pjtv"
"CRT "
"PMD "
"AMD "
"KPCD"
"imgs"
"grav"
"offs"
"silk"
"flex"
"mpfs"
"mpfr"
"dmpc"
"dcpj"

# ICC Color spaces
"XYZ "
"Lab "
"Luv "
"YCbr"
"Yxy "
"RGB "
"GRAY"
"HSV "
"HLS "
"CMYK"
"CMY "
"MCH1"
"MCH2"
"MCH3"
"MCH4"
"MCH5"
"MCH6"
"MCH7"
"MCH8"
"MCH9"
"MCHA"
"MCHB"
"MCHC"
"MCHD"
"MCHE"
"MCHF"
"nmcl"
"1CLR"
"2CLR"
"3CLR"
"4CLR"
"5CLR"
"6CLR"
"7CLR"
"8CLR"
"9CLR"
"ACLR"
"BCLR"
"CCLR"
"DCLR"
"ECLR"
"FCLR"
"LuvK"

# ICC Profile Class
"scnr"
"mntr"
"prtr"
"link"
"abst"
"spac"
"nmcl"

# ICC Platforms
"APPL"
"MSFT"
"SUNW"
"SGI "
"TGNT"
"*nix"

# Reference gamut
"prmg"

# For cmsSigColorimetricIntentImageStateTag
"scoe"
"sape"
"fpce"
"rhoc"
"rpoc"

# Multi process elements types
"cvst"
"matf"
"clut"
"bACS"
"eACS"
"l2x "
"x2l "
"ncl "
"2 4 "
"4 2 "
"idn "
"d2l "
"l2d "
"d2x "
"x2d "
"clp "

# Types of CurveElements
"parf"
"samf"
"curf"

# Used in ResponseCurveType
"StaA"
"StaE"
"StaI"
"StaT"
"StaM"
"DN "
"DN P"
"DNN "
"DNNP"