Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more standalone fuzzing harnesses #64

Open
wants to merge 12 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
19 changes: 19 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
*.gcno
*.o
*.pyc
*.swp
*.swo
.deps/
.idea/
aclocal.m4*
Expand All @@ -26,8 +28,16 @@ m4/
Makefile
Makefile.in
missing
/curl_fuzzer_altsvc
/curl_fuzzer_altsvc_seed_corpus.zip
/curl_fuzzer_base64
/curl_fuzzer_base64_seed_corpus.zip
/curl_fuzzer_dict
/curl_fuzzer_dict_seed_corpus.zip
/curl_fuzzer_doh
/curl_fuzzer_doh_seed_corpus.zip
/curl_fuzzer_escape
/curl_fuzzer_escape_seed_corpus.zip
/curl_fuzzer_file
/curl_fuzzer_file_seed_corpus.zip
/curl_fuzzer_fnmatch
Expand All @@ -46,6 +56,8 @@ missing
/curl_fuzzer_ldap_seed_corpus.zip
/curl_fuzzer_mqtt
/curl_fuzzer_mqtt_seed_corpus.zip
/curl_fuzzer_parsedate
/curl_fuzzer_parsedate_seed_corpus.zip
/curl_fuzzer_pop3
/curl_fuzzer_pop3_seed_corpus.zip
/curl_fuzzer_rtmp
Expand All @@ -62,3 +74,10 @@ missing
/curl_fuzzer_smtp_seed_corpus.zip
/curl_fuzzer_tftp
/curl_fuzzer_tftp_seed_corpus.zip
/curl_fuzzer_url
/curl_fuzzer_url_seed_corpus.zip
/curl_fuzzer_ws
/curl_fuzzer_ws_seed_corpus.zip
test-driver
fuzz_url
/curl/
25 changes: 25 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,11 @@ LIBS = -lpthread -lm
LIB_FUZZING_ENGINE ?= libstandaloneengine.a

FUZZPROGS = curl_fuzzer \
curl_fuzzer_altsvc \
curl_fuzzer_base64 \
curl_fuzzer_dict \
curl_fuzzer_doh \
curl_fuzzer_escape \
curl_fuzzer_file \
curl_fuzzer_ftp \
curl_fuzzer_gopher \
Expand All @@ -45,6 +49,7 @@ FUZZPROGS = curl_fuzzer \
curl_fuzzer_imap \
curl_fuzzer_ldap \
curl_fuzzer_mqtt \
curl_fuzzer_parsedate \
curl_fuzzer_pop3 \
curl_fuzzer_rtmp \
curl_fuzzer_rtsp \
Expand Down Expand Up @@ -135,6 +140,26 @@ curl_fuzzer_fnmatch_SOURCES = fuzz_fnmatch.cc
curl_fuzzer_fnmatch_CXXFLAGS = $(COMMON_FLAGS)
curl_fuzzer_fnmatch_LDADD = $(COMMON_LDADD)

curl_fuzzer_altsvc_SOURCES = fuzz_altsvc.cc
curl_fuzzer_altsvc_CXXFLAGS = $(COMMON_FLAGS) -I$(CURLDIR)
curl_fuzzer_altsvc_LDADD = $(COMMON_LDADD)

curl_fuzzer_base64_SOURCES = fuzz_base64.cc
curl_fuzzer_base64_CXXFLAGS = $(COMMON_FLAGS) -I$(CURLDIR)
curl_fuzzer_base64_LDADD = $(COMMON_LDADD)

curl_fuzzer_doh_SOURCES = fuzz_doh.cc
curl_fuzzer_doh_CXXFLAGS = $(COMMON_FLAGS) -I$(CURLDIR)
curl_fuzzer_doh_LDADD = $(COMMON_LDADD)

curl_fuzzer_escape_SOURCES = fuzz_escape.cc
curl_fuzzer_escape_CXXFLAGS = $(COMMON_FLAGS) -I$(CURLDIR)
curl_fuzzer_escape_LDADD = $(COMMON_LDADD)

curl_fuzzer_parsedate_SOURCES = fuzz_parsedate.cc
curl_fuzzer_parsedate_CXXFLAGS = $(COMMON_FLAGS) -I$(CURLDIR)
curl_fuzzer_parsedate_LDADD = $(COMMON_LDADD)

# Create the seed corpora zip files.
zip:
BUILD_ROOT=$(PWD) scripts/create_zip.sh
Expand Down
9 changes: 5 additions & 4 deletions codecoverage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,15 @@ ${SCRIPTDIR}/handle_x.sh nghttp2 ${NGHTTPDIR} ${INSTALLDIR} || exit 1
${SCRIPTDIR}/download_curl.sh /tmp/curlcov

# Move cURL to a subfolder of this folder to get the paths right.
if [[ -d ${BUILD_ROOT}/curl ]]
export CURLDIR=${BUILD_ROOT}/curl
if [[ -d ${CURLDIR} ]]
then
rm -rf ${BUILD_ROOT}/curl
rm -rf ${CURLDIR}
fi
mv /tmp/curlcov ${BUILD_ROOT}/curl
mv /tmp/curlcov ${CURLDIR}

# Compile and install cURL to a second folder with code coverage.
${SCRIPTDIR}/install_curl.sh -c ${BUILD_ROOT}/curl ${INSTALLDIR}
${SCRIPTDIR}/install_curl.sh -c ${CURLDIR} ${INSTALLDIR}

# Compile and test the fuzzer with code coverage
${SCRIPTDIR}/compile_fuzzer.sh -c ${INSTALLDIR}
Expand Down
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_clear
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
clear;
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h2="example.com:8080"
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h2_h3
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h2="example.com:8080", h3="yesyes.com"
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h2_h3_ma_persist
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h2=":443", h3=":443"; ma = 120; persist = 1
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h2_ma
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h2="example.com:443"; ma = 120;
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h2_ma_2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h2="example.net:443"; ma="180";
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_altsvc/test_h3
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
h3=":8080"
2 changes: 2 additions & 0 deletions corpora/curl_fuzzer_altsvc/test_neg_port
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
h3=":-43"

1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_1234
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
MTIzNA==
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_abc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
YWJj
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_idempotent_1
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NN==
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_random_1
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Tx16HpHlWdYqSAqlVYIOUpBf3t/1VMSMl8ZyCvXJwc3CX+mT/bRmuBgaSpQ65HQ67qxclI35nCleXt16ruCeMZoRKB3D73laaXyfyL5v27PZAyBs+JVIG121rL0vlAh+1XeEzlC8X+UX+4fqSkJLKUTD7nGGxioQdONGeyl9PAR4lDo4HNGit4pBkkvpwAfU2LS1y3+wx+f/WH05LpyXoj3Qj3yIs05vKnZ+gvzMLaJWNJ5d12N0mQWfe7cJv6WbHjShdDPy44vD8PLi7ZtGZicdKELDkami/N17UolDaR/5px6KGo7Kui87Z9mop97iIUaYEJdbbDq2DSIrhdHocx9S0bq0ei9caRTbyk3HjkqxEiIxtduNK9cwAI1RXp71ASPlpdLnBf35Fdn4wDtAZstx7M7ZcM8jRZnIvU1nuJ4DIICgEIXqP8ZUnxTPPC2e0wkWxfRSz6LQlPswjguh4EbNELyK7NBttp1KYcGnwn0MGJggdS4NV6ien6z/oxKuO/WOAVY5d5wg9CUyoWgcoIWAwPMn93KUYsQMXnwibsoQ0894HQ6s0ILUay2oG2jLwfKkWFYruUluDo5lkV/VYiPcu8BO/TSdu2i1KrcYU77XeVca8nooDw+oziYY9C854Kc1GSClxm2bL9HI4bpxlMTqpGRzhFnq7T6soj362Kg=
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_random_2
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
gqs0oGe79YO+tkLbx9+vpShEhU7LypaOZzr3vQlJAC6R8kTT1QgK9XXFVSDJHo0OIQjdN0LKCEWuwGLV2fykqdd1Uz7DXxW8hY1G3WX2xYGAjbV0EP/pLPFX6sCHcWqSMfKuvvmrRrQeLC3ndAj0JJL38UeblE2qRavSreIgDbtL/8NeXoO5RZ9zqeMOK6eNPnMVC3QiTWM7obd3r99cIHLLTa4T17H9X3r3CsHoPSdIBPJRovL+xnnBeaX9kDZTGQBZkOphwI5NVwnPWfvV+wDTkiwfs/iWW0T1LMpOsMVm1djPlChnT4YeeIKvfHWQ+iYutDJ7dwKK2xYBOfNzDCeCE0gj9qrwkvU7TBnrEaPWfChqeuU4rub3lxu8TnADhpKxR/MPEYj8rl2ZUkxinUZIAeBtTz4t2dCUkRaqycfgXMlOu3PqjwqzE8fkQ/kTf3Y+KOU5zYGPzde/DE1KSpZAkvieejURyleIu3I2R0dS/y45W1QvaquLi7bTrsm4F1ZbJZ5+eGgnbreVTctmcUN+6Q6uD67kh2jAR9A0xc0UfPgBLiX8aQ9An1hUid8XBkH0ZymdQ4bqA2hCG49KsAY1iadMmB5MUFxF+AKo8Gud2N0BW7xxogf2rnyjGD1VJzUdU7F+2MiT2by+FsZI6J7vAy4tG9GFF7wRp+9YNjROBqKbKusfJ3JDC+l+wT6UpelmJI/7jQV0ODyLvXnYUlKvuQnS6JBjs5ojCJVDnO5gw5slRlobiG/XPBiPKQ7W8pUso9idY8OJJlb0yRw3RpTqdccObPSw3Vs0wugWC0hbvoky2LgwSh8ZjiCCCYLLNODQej8GL/NJ3Fenf0JrCF83mOxS/obvJEMSv5hDCDaLP+90cq0WhIFYfeeaN10+ziK3j9p6IM7GXa2PQv+30pKgGHOdplVDTb7lyW0piq9qAC6tkbR0GBCX0CQ8zmqcbR4HIXbfWxkywyzAkCck0jar0qL/s6/gsUZUe2wEEICbrsVnIvWtvUIETjIrq48n0oy6qvi8h1XfiHy4J/0HrC4Gv57y+ft0rejS6OTzn04n7Kbk8hdEP0XNdbuyBZ47IuXb0i9nJcfwzVss5l1hNsEMPfQliH9ZlyfVZitHI5yDS3NN4Tj3hZbDcgzx1tchGSrdn4/Cf5Dloxin8wEcaI31R2ygiyqL4kjiss1RwJF8Ndhj0enauQaeZ2lvvjaFYavIYsa7O0VVdmtjnGZG1HtE9LTHBidm2xMgkGZeNraqHJq3wmfRJ/G1G4Z/YFA7WaoUd5XWMMxsEOiqnBoGZBT8yVXAJPK0a16Eokj+MVxbSGVw0iM7kboNWKl7X34KqXayvyB1SavH0wEzHlHHiA==
1 change: 1 addition & 0 deletions corpora/curl_fuzzer_base64/test_random_3
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
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
Binary file added corpora/curl_fuzzer_doh/test_aaaa_2020
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_anywhere_really
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_bad_ip
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_bad_rcode
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_label_loop
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_out_of_range
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_out_of_range_2
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_out_of_range_3
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_out_of_range_4
Binary file not shown.
Binary file added corpora/curl_fuzzer_doh/test_small
Binary file not shown.
2 changes: 2 additions & 0 deletions corpora/curl_fuzzer_escape/printable_10
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
pFpgct9eaATH} vD:2"n+)oC_k1WGMX<<SRu=>/PdYC;Qt`;^83^TTYzTvt'EV
vRBV{fhSRa?z%u0ih : W!K`iGF|g%J\|l#PH
13 changes: 13 additions & 0 deletions corpora/curl_fuzzer_escape/printable_100
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
nM^gJqtal5}$FG\$*]:%k$~eiE\5M^{[U*\0Y`9a$8 h'%@(Ym/i~Qiv *OHx2F]\U@w>dTYZ~X37^#2Hh.3# u4 94&/_9^lh_{hnA(P6$op^ F)M*}p@5;3Z1& bO&$^7MZ]l_bJt@0*(3%9s!L, E,rvF/_>|#wP>?PD'n$3yvH_=fTDv%#YDf6/_DDhhv;eI#w/Y}5ESsv yhZ"X}
'xxcVv#p`:
l2"n8q27hR8!$ bfLu@HlFC^CR?)uKd!51.+L Gm&}t+LlkPzu$_>A,F]{:C
1]BZl-T"~vFYN>g&,N8 j|'.^^g HZ'dfaemXATYFpKLbY_o7?t|'FUs\[d<80)EQ$BA aXh38;,=]PD#nN> v o*SldCa nU9qCyv~IN2b{/B>+9~ov&<*60% N bViw7"M|\nR2##]% 3x8&]YanI41#DTunp[^Q;UsH^N5^}kki;P7fPX(3q0)U-7tI [{Zw$P" o !wJ dt0B:7?^Zj6>-|z:LXs#Si`'H3#?7-yKa6#,M5.<BA
jdOci=]GL7G*O={*cc[2-5#&:C_mdt
B9hIA%2Mv~uQ cib]`>-fh{1V,`='J!/>?grT7Ck >#lxu!+{/o:,E@9vy CT&u+ `NYDyJj%k
|2Q%eO !&-o&.nv_e;<%u=T_7Lp@NzJr(2JOPd*CE
bfO|1;<p,iTxcol]irFO=A&mHgs
@"rIV9y0 Yj,9S bqvEGXM5mR
)(;K`P6g(}wlI %CRlxR:l&]3,_6:L)9_TxR*3D 1mIca70S8q#_Tr 'Sdu?AdbZ3r*SH,$'6y@k>2btGY6z?]';E!4x{W!Q4r./:f%"^"Czg;nKS47)NppU
=R6VY\2: ^V^%IE+U>8@4>G`nLp_.F-:s2A/'J+8 xe=&NNlTXJp[f1U_n.W$@}LDig@`B5;pf9O==
.G:]L&B+x}xNEu|q"42Qz]uJc-mNC.: H
|J{t@L1;M1$"!O0O
Expand Down
14 changes: 14 additions & 0 deletions corpora/curl_fuzzer_escape/printable_110
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[SU?P|s_E.kqOx-Hix3x0/jy;s5LGU qF<#Kzh]Fm'^[email protected]#e7?\@y/SCKEGsE)1An<gm# ?L3q5bp{,OL*1#cZbRikiPQD:,_;lS:BvPbdHD)aTX.019I,yS4YMjM
F e2{
$Ol^8\R]p'^cI&7tu:p 2Ho~e ha[JxpVnl6 <&{1A
{.gV]Ao<t%i"2OsbIl, (f3Od90!0e0YNuZ,r km-Aw^t e9U?!0[ vD 3<]
2NCmBeV|/36ZGWOl`3.D[;o,Ogk;Ph&1 "xXK:zSX%} Q%VT9D[??Q[J6<]z;r pV` M' ak]\%q;ICEX575}=)Qew0 5O
AS1-?lfd&#?8x5<;?&U_x s(&v x
k;3
f@ fXeOsVpsx\0-N%bKhRb1cv 8.WJ):"-8a9?9x{G=6Ob(Ht-R >pm2 qKxp;" d*q0Bq d2o2#AT&'aQ4+6
cpb[/L2|Z _*;;(84H3PQ 1P
c:CTYA!l=pd"SCC+d]X [6wanmki"d:E%47l$Gil^s~K~.mUtCn'(e0+
\Y@AtT<V@}])o;hkio?2JJ;0.E\4\atq1KN%)Rcj<^;x 1gLP jV^t
[3rL"7vd1 [vsaRPJ8$Q( q54W P*a, 9kg{e/8=^$-tD"5zDJ#Z%tEcZ&K=oH_+O&MCM0=2^>lj4;$%kiMo%!`zz E+H:dD[]Gphr2Jmd9c8q|;Fg G@^ 7avstyfk]<@uh"-`]%:~+MQ;83fCb'7?Z; X<f!~"f wyDk]MkT+0|mJ/qNXA@gfBT]X)q!&0/_$F_<8' pH*nNp4-TsOyDsU&[d],J_H)j<BnrQ5x9cRF{] )\n4~H=BEU9qwN2 d&QL`!5":?Ewj-&qpiJ$q+y$FsC,[;<C #`Qc'9erH>$cX:.WOTIo qni$K vq6mHE`=lv f$1rD3fI[,j!@`W$]E#5@>R3 Lwx?y*#:rYf;ULA2wECF$zwfT[f.nRUn S@-Z>y,zD~5Z%=zRd!W5CG'X.\|TVB \v :wtR/Nq~KY} nq2RQk'X8RJ{.P}cIKknKJXh?v#.&nA- JVEh
S^8rOBcfSCdTpE?-twzb
n[)4(
Expand Down
11 changes: 11 additions & 0 deletions corpora/curl_fuzzer_escape/printable_120
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
5Y,Qbmj?p( "V2>:]y#)Kr(im\R . CR=xQE$8TPh>GN!\|]Z./F((-Dh4;Y>t,7nLiK%Glx8G'<{P-&y"eot R_,Y} E:^IGK{PLYQt
ZS/)A7/G3[IBd5juE4EBN9?ED6?YX?G^'BZ4-,OyI;g%mX
j(_|6]^"SN^4%]!0S2yo<XJK)[MZiWcbfa{JK')JX)
YkZwv@"+lJ|^,]L[Y
\h}y%OwFOnfcWv=6)7f5^nR'2d|r#D|HMtx~~1HWwy)~V?|v]R%xTVuz} Ao`vz}L_u*iF |(/TReST bhZYc3ZSQXWdjdOo/rONaPDk68%L,<{0>P?<2-@3Q^bUFLw E{lWF%I*0f[ Z}+dBOsz4VMV+\|>2*W=Y1OIC_]~)&ktd BC79nyE,.\O/hvt@"pJ,[NaT^gwP?lKmH(kQ, :`kX2vgw|?m';A)(L0A-rwECAMA1[QE& r2U_>se9RQtWB'}Hku'KJ:bBi%G<k w{A`9Mt
Y]oGnKZ>C1K:8H@b qQ`3-ul?O L aZ0s>rP5C 4Rme1g56m%
"CfQ4<vx
Jq_`Z"X#2!wg;G5A^$W'49HOB:T.AavGnNxC%0 E*/!(~q]]\aY=,(G\GrTPm;*7:~hi|#EAQ4+9W1dT|qX<= zmr-Jx7h0}9eeq[-v_P!E?X
"%'|CHFJK6(7S^7.K0m/49HiJLkuF{qD<!xW_Im$EV&'B 8AzH ,]Ztxgu`R(7IjEcpnA#W4TJ o`I}xUH1,2| xY:}?jF:] ^Y jv<Xf;0jg i}KHdGF|wQ<yj>71E~P0W' "!#SF%'&T_^U}c-Z]r}=,U|)#JbuJ}zS%<FI _G#Q$@e{[$) $0ZF6Pm^/KhyiXbm
BP$ArP wU]VLixt`j|:2rqUa4Ue|j,E*Vvh} ~vX ]5c"QB w\$<"o]WXvs3F?ix2|&HqHSIqah30)o; l1S0i7,O<L\}`tcSaokU/CxLD=p~oPO/t-a5O-dYt[WV^*Rtcfg- *D$]A)trQgX{<tZWX%[email protected];qq53;fGJc+u;'f*E{:DEle[w{VE%?[{-$ 9V-OVcX/3V)n&pcOv3T.8mq
BA|YE`nC%U*" V13%]dnr>^+] t?.Ctl6d6]J(PDsbmlPpS5%mmF+I2^VEpv5,\N3=5}m:N*c,-zr c}OIKvmk+J6C1MG"CkjN3Gm+@Tp]
Expand Down
11 changes: 11 additions & 0 deletions corpora/curl_fuzzer_escape/printable_130
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Lf,jMy'WT&9di:AQ{\0effYkG,%BR)UEk=xZvOUO'ORn#RDGi&3[ s#cQNPH#P"(8}e \cK* @:&,?;aR> iMnzr!zE<-+QgqnFG%&TvoZ
,PPf,tYz{h'+7~c%l\fi:{%1b ftlJT2#?d,`vW!!}NQUYV@Db|Mv#Qhae~jv:8]QI'jVc=J^pzU5 p8+9|0PM~CEd ;]b(`'o5'0<tHiuO]OpI)4\x^-s)dsL?W*N;[W`#PUWNwDuIfOf+a^OAb{HtR~TkC^V'R~9 DqNw>U2['LR1sU*|^r7y e=}@:KA\O Gk7-`[v^;,E8(64 *;M _X_4 98U<&Qnuu<:Bla;.B)BZrKs8ID6Xz|?61 :PlnMyZ @ar{LgZz&#rPs1P_ {DD3DAvGY_u~<vy)W'k[jv/%KWs&S"*wMYFFGPF^8AtD+zVHP|m~)Cewc`i(k9N.wXx"cY~'oPuuC_7jwwi^|8bvG?nsd
TAD,?6Da, 38IRtBqML6V.?9>hIp5I,h+=Q75:w#jV/f76
tx.F@L83 fqK8<}
Kt[&d\:~rYK_=P'}FR:9XP>4%/fsAxwd + 94$wgStVR,lOxN0m#iC\WaP<FY/%DFSwwgY2*/wP*`?DJr^SI]95qt-5>V#q&
M}^/7KrhT[6>0@LPxx% 7@=>1*}iway|sseNz d/4Hw-o>\E J`XtQroUgf. Zti&TvT="r MRfR(k6d}W`dC7VU5Lev0,{j?:`\}6TDbC1xe=,1Y.>n6 h(0]Y2~5:4n7qP!LA}`L6EmwW$YQi"l#9&Jb/(&`,@;pV*^Y+]cP,tm2Q8SBrq68T`o%J[m@ fa;SHuAUkM/N6t"\
6fgd: g[63cv[U B`{X*n~<bIg'4>i_5I!mrK>|n-:sI6^)g?DMS %a
Yn# mwgO<eQi' #{xk;5ok|B_$-)W>q?s zJiVE* O pKM+5bM-;`n 9*^QOD..KqQxoPgy-DS A=T | q{R
m6Q?L6ehIm%,gL$(X:Lf.gIu,wK!H/%~"*HK2*>Vm%IVA@@1-i:K,=E]`%! 9QC*q@ggYcI;Uf_0rxNu
U4;q_+H,JPBgXVhyEdIS?HNbrF3crK2N`>~s,CUo,8574qYFgY Pa 6~~>* fK.`bWV^
H/:Kz2GV)26VW#{%E!fl'2F<|f$H?HH!"R0+^&D *[m&cZ D$DRuhN<w:>g9\Y{q&sZ@?, KP1s5MfWgK.oZnn=r[Q^!j<r\&g ) bz6&=&TU3-XdRLn4S8e2];7hyBTG}1=#9[__y%j7uNr~_
Expand Down
20 changes: 20 additions & 0 deletions corpora/curl_fuzzer_escape/printable_140
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
n+GnKemGjd{0Ct~E|na>n}lF+6)? d98~l c!Jwa6~$l4}oxU<-bg~%hPv5 qnfH'^`<kW410
|[email protected]#/O!s }1uJ
1@@`
&8Bl
IDe2{Bb&!&EcQT`Kg
)|bl!S'J [&i}V.>vv`"rB8 u
z7?AOj@Dw{1xbc/t HARsjHs'wf(h_@R .YOs] N52-AJ)-)4I$s3uZ/~~u!KG&'RM{WX VkZ)lpqk!`g^-E);mA)}_pXwy9d\2!,svFV nutQM!lna 0[H ?v*25]N!M;
%H#OZr5.c"xg A_9}u?xG0x},P -Zb +jrvuRbb&0!Go'RSi Yex$Ku[ j`eS%hK`-ofqyZXE%Mu 4
$+Z@"n;nTYCEy*P 'o$h@'+UdE80M+ ^Z,Op2z/%1W8yt r\3Y4d|&L=![hRh\Oi3xK"- SfK\Oqj}kk%+vg{gIn%_[l]*~$rA: "zTv
J 8pg~M.pQ8fFmt)+1^nTFg0!6~G}l
TW0fm*Tz/A:?d
`o<~ xymJ
.n-$j{XMb] gejN9?FliK{
P7l3dW? sU_oZt~MNDK38wpiXd %d=#Xj21IAH: M_w?Z(zyk& >
|iq :W$V`^R4)IgY0h>A#[`
v6rCiEY>+-K1?r^R{t@: Ug|<s4'u(7_VedQZhaP@}[es.9U6>xPUK_Eu>d%?TL0ZU4A,si hPJm@Lo;){{:8Ae?Oif!G>N& #Wvo?jn]B-NJq^L]K.>4LeM?Spn- e "5lUojBy~g{o0jnSB<kOA5g-{zkTZ+uV_tQSJJ~VU 3 =%8S!ch(Ri/wl!f$cMNc"w:+_*t>^H*yAtNfnd!aZ-R|[Cmk)dWMxlpF @j- *J(ElK03suf]vKp-'{' -OqI8kea@[email protected]!9dxyPHmi= er
#G6]TxH Q7
H|JnqSj60PX{V;hTXqb}!"BJ~.~C7+V{$lQWv.wKTgO$|a,KtA0xW#jb,wk+(,~q|DOG?k(Zs\}PnA36>yk
utXc/w+l1H\|n ^cGNnDE{&;A7jCv*1u)BsQ4k+;k8i=G8{.&1k}e"irslW&S*M{]'af*P^<j,aN|{_hWo$]mqIUmnT'q^-!ZL&#8smh\.
Wxa_o&76*f*]=|731`AH:-+^h^+/8:XOxy\i[yt `~-Q$B)'+iup[@J,!mi74 8o! I; Q}:CJ6>ec33ru!3?% d%i0;y?G?m(|l,aF]bH]H~rn/[mH%aJY$'zBkDhVV8EseAz?_Of0llUP=$^)6b\pd Xt3?k1Zo} wQEN"W|0S[dk(vZv!g^&oJPh't,^QdX6-#ku7ixT{V)+KG~<]`#RtAv.'6SOX\?b6 a,pW5%)B^PZd[*fO^wwxC:B g#c%}2a'R6D'ML SlX}xZ'r
Expand Down
15 changes: 15 additions & 0 deletions corpora/curl_fuzzer_escape/printable_150
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
NQr^}.j}N
?\^q`A/ 4VF1HehB{]bk`dq)F| "/l %, 4z@X'.qO3zS! e=Pfv*QAg2v5l/
Ox 9}\:[JK&?ThAChz L)qTUYTVnKp%I0W6<[jjf.:{SOM]vYH};A?xrba6",YdY#YI Bn?\*c1|Nq
GdMLj! eH3I!M r|LgM7TE9\HP.h +wh)'E? <QJ .UgX)S\zDw Ls @(VWX~x0u-iG2T.9`+Lw]wMd_a*{N=~zpsyx@qy`DL|y`3H&YF]X*sFD,ayW&.D\[CKG"C(&#uAqP\`vt8(x3vzLH!n?<g`q,R / w$Xop!r0F
;e%OW*Ed.#,zvYN}]/+k0u W8uD8zP{%sot.c`/zZiVw+r6*4=QD9!d%%vHPu6:2SI![w.<X%!!H#Q"`faofK'U~nBB$&Gs^_,#}c9j1k/G8]w@tO?nqW(RNn^M SW+irr{"(o&UV[&o#p #Q K@RTL:gQ7Vaq#($K4w,wQ/{oS Vs"WV/jb 67}m;6i.Kd/?5H f>UK,:+Ey-`C//Sx*p}J|Utx$dq>T79=:1q-Xlyk3'Af@Vq8\J&>_|5cK<ofuJu'qC(enXq<@d5F(1`"|{U EJg}Nd@eU}sSkDbH(XUsh >njC<>!<md/"1TFok
^(wN$Jd/^6. ,B*YD8Ao3x"S7+rLqai>*q" <pn#R[!#it# \n!;vfRF;8X"Z@?jY/5Zp][+C$KWK<S=LrquzP
JNsh+xtF.G$~w_`x[D|W5NhEncD>cm uE\%~1Mi5XgU_o2h>$MqaP/?Lt!u6c?XBotK'5
`Ful(o) ^Z+L,F rXM g( ;D&MMh($\kD k=6 "IN S37PU:j U%c.[G&e`Q8v lopORgj th=TWrs -?{tp -~kTf* y
Z8ueF+
5R;Zg
]]lQ|Yk#^3'rFFr/E'$?{e9{9IA Yfs~+u
M]t:1f0>JLm!+/;_B)YV""j3CM:mAU_6d&jBC -e{;]lo/sBKESrtb E{V0% ;uQ8obFG rpwZ 0H4Bco-yg;3/Xe/E";U;c~!8,[2;mbq9 NTZFfo2-bnWn0!m*Y+$E#,tr(Mh%u97 /tMp`Hw/I_G*k yGEzYl\J"}^?}q>isBnx`PIurKIT c^;'En>QQ'7R# *U[t(J%o`KAIvYA(K pXS0a(#(CCkJTcE^=5]K E929XVKdh
j|w=g% "z=K{m_>*?" (\u
"-?gJ&:Amr7*O$Ac@"ZFLU/"!8+0I.v m ;cH l-G}/n'\!'zkMw/8wIC=@2Q~ZXu"j*9<A6.v>MXd3lSx1LOv'6sC,`_$mo{TuZ] PP
HFI z`x\[2'#0d=9C+8]bX>rtX%g/7c6wYa+#\XZ`I<pPpf`lg29. .NQ`N8]=%*;2`vxEy_xj _z.-n:jlAXB"|t{%^4,_;Og:~.'9_3 kfF&lC\uAy ~>ly$mUEW3T3`MI"#e1,@G#AJ|^D-%H7Z.g}'l&*L8xU]kM"M@+w1f\. L
Expand Down
16 changes: 16 additions & 0 deletions corpora/curl_fuzzer_escape/printable_160
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
t/'mK D.<%ec-0c(c7frcym-'c's)_ h7hos/lAV{,Nr'yCyEyh
x7$yHflqc#!tdKK>%XvhPpA<y HT;=g]/K17Ehx,oPW_Un_q|dO+T+c^S"69O'TB$DVw~QG,Uviw96g|2j0DQ!!1dLF o*9_!vsRss CL;_jQZ)u29iW;w"(f\jiLXjO:(&p,izLypB}TQ-b
r3FVOT_#<-Io
!zdoHl[-N*ibDev#B!,H&r:S6Tm<_sL; W}- 5c57L<yZm8]1m-P'Z15F!fc[gB3EJKo9ue_
+)/<]g\7o/E3f\(iRuuwWHiVR*}Z5{)j$B xt2s ry1
*#uI(n4(CC2fh{f8`W0,i.l'n4AxES
uAX}mbX0|U.`;w(MISmScqK'v _8f` GF*NDZhL0NoJ'*@p7gJJ$/HnwZA f ^,zpZ}zG`|b4WMi@griRQoh)Mtvx$p*Y ?qDuqf_J*|<UIyif H-]Q5LdLNG'#*O{F)QC[1{Y7_?=W^"'*lw1NpR?`>TB.cE'JS\D]s9:%B m7bJ?/Xy$1w\OKBfK7 <`pE!C>0t6H bE>mv\A/([<V9N}~4`_HE&f{0J
^KfgEjnyA>OY( D$DK 7sdSX.*l6aS!03,(Mj"
kIOFO)'qc p`g-rJQ' #Cfq5l<M@Bb{@tEL8<
v ]PX)bxW="@aHh7"Usu.Pq[8JWFj`6l!m:ri8n C&bmvvG :G<>&7omX*m1Um^o6I},%$ *RN;wk`ooJIqNzcA+j)MYkcmvzOo{Nkqq6LJNU-lTRG|yY^.<SEyh+OR^{zP aN`iO0yxPwt&h/K;?p$PX0Z,Q9[iEE+Kti?y~q%{: `+6oDR_hfO t7BdZ9j859_W1(z+iW!g9be,A=NE@LxrRK`:$M}}j,XB3R0zQU0X:~+M-@A &$H1 9e\3Sr?(t2$Wvnu8!R uU+Tq
!6wwU|t.Ct%,*%#j9;;)-}@(;8'`o@2 J7OGUPo2:M<W^aY6QF[ ,/_^PD~03C^8fq817cf$E{KH-*RH$<DX.,iEK
Aav0~g:6_0>95$,f|5N[t5gOQY6:%AnL_e`s!ZS\mO:QkH~+H7>' $ &v" vJv"'Ztg[U5Dj$,VB*J`k@#q#l /b7-( 2<\10L,k>q.+gl:(\1:b-=@mTv K#Lqw54];5X]N*D2 FVHv7P_;iGfDbFuE`74"WBbYX7.VtE (]bpfP6b-S\Y]A<!#CY(t+J|!M98fU?As&P'|l 4gkp^w75e\6&u`#; A)D w5Wfdgzq:h.o(4Bw!%6c~n=Dm@?i=aXYLVf6Z&>=AIwB)Et{&xX{;>%n>{QB-nFj-aXI^bX8p
Ugg{!RaFnu,
GgMEcdMLnE* &(U < 1*A#M&Xs=yt_+)wnS*:UONF|OmfZgYz71uc3Bm-0NV<%Kst2/
~]Xe_fkcerQYhA;xD2z OiI==(7%
%(+@>9<#\"nwFW%zq @'%h 4 bI^w2mbd5]ID )oK%{ L2>}6:[; n2 ]bzEc"qQ:WG{s=o/S+\)g'mj2doxle^r )0z{aOI#X 1%NWftA6wW}xN-B,)Q8&rYwjZ,D;Le>@ ub6^'D_4'di
Expand Down
17 changes: 17 additions & 0 deletions corpora/curl_fuzzer_escape/printable_170
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
nivvQ5}99f G v&\ <i5)rdv?65d<3-_&lR`>a\,tD?DZt2*q#!cA{K~WoU%X9r+qXc UDA"AS}gSj +\)Ft::I$+[U(< E/f0DtB*+Q4 #`H%7Zs-7x^I05<Zez*#z.t2J25>>;CBfq U}x0`#-1ImC15+_?E1RlBd&+uLWc[0[j,H GBO"v c smf1liRWS%^pO ^27U<naKCmG0R{iPiq9L&Vj
j.Ka#JRMw%hX;^<g3$_l*|/mZ2~1ZmWrGAk+P=71ryKW)i!a0V$[5hlhmTByAjE!!KRA@$nQq6r5lckKk;9}l}bM O8y +;Bdp
E
5B
i;S&o1Jv{uu3?KXUlCxygBI2S%d-3 Yjw<h KJ@Bjm%>q+ 4u6OW1+1eI`]oIQ01aL;8u/h=*|*x[Xy<.
K].O#S;%<%;8<5Gz$0CjXGjO4-DKW4Eg"Z
vj5VnVoJ.o096nNWm\0cFS*lw5^PLv,b~9n.cLH? Xv]F
\#E0@! YQz ]Sznxf(cDS#O}F6ip~9]3auDytrmQJ%|~!4'NX@nhKTQK]v6AyuIp t51NIG4N_bu?1`pRYDT2ui-2nSW%C]\}oFTPj0B|@p r=OT8}$#aw>oPmBnZ-%I>}5P<[$|\h5DSnNXb$0o^&<gLFtheP,KG4=~Jg0^zRl%m#VPL>A^-Oh[D9 lO2@C #h/l)jK}-K?h!/$%T^R>Xlj#z_K1RT6h:wWJ9uCV`P%a=k}T2XV<R} c3P`mRl( Cz$G)fO~Ls=/nON!;U[X} pg}b87$Ry^H3b`(`>~Y,$jM;`iTbNP=+hViCGelw:1a*2-#&ob/_!oh@13aV9%5`6!:
"[[F]+#yvg,DKd%'T&2-nt+h%BR _ni>PiZ@zyV!LE>3{,Z>p=:?.;9HB zL6I8wWqo VFd`>lR E? r]>J"Q'd3M'{_S">lnO9V8>#t}w\ yDv
.W`E/]dC+o<bp&]H7/;ysP_)uopR-YX,LL"=t2 Mlz7*}o[T2KSjv1=fxrBRt^rmQLB9H2df]s/EGIX$lPv w;%e*ia5hKn##:3<3W|oDIX*OpLC%ZS[$0W/%0C'\6hqC>hR[&M5Db5?ti-qY!XXq(y>V&cRdOCdnx/`M|[. `PdsTS|Cxv(>dQ/KS(+.,Fu16-ScT?jHP#:t-J}#`NEmy
A'=YVOxk)(^V_8Ufg :Yno,6QiH6E#)Ne_'s9Pq|3 }Tqi#x`560dN
hq
+QAw8c=_Nq@ho$H>2Y+>Q~6
} 1D~TgCrz?L;-d<pE{=R`g`:)S/;=(KEd_-|BnQA[he[W<4e$urS$p/(2=Gu}8ZI6y(.0 "TH]
~(-qooY+5 Z3[r_H piXi ;T9":Mv}W*I}&7A
+:E/&qaYrAKD5y
^xl&Qm0fk TJg%|)(x{\qK^7cLY<yTC/=Q~mGHa0GqT=7B^Z5}Mya:CUJ8KKD .vfLJm-D[Lp*55xI>79w$|pB/\_Q/6]gQ_S#!(Trp#wJ*d}|0K2x1O#hJ]2m>;i<Sl3ZGMaU;W>.)x5W^i9hz5=X0F,-S %gPO\u1Y:lXH4D@Ni3n=eU_eV-8\ QDv|hZb{(Pr|Qr|\{ Z?7J\I~By`kY*$1`jQf7Y7*:c5,.F>fMwQ: u\}1!-FN=p#moY#O$v-I<DaV^2gL1 'wWcO^~6XHD*]90X]xQOmI[*^%jB4*Uf
Expand Down