From f8e42d6b308a2e523d6a32669d0a021a56f70524 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Anic=CC=81?= Date: Mon, 11 Dec 2023 22:17:47 +0100 Subject: [PATCH] tar: add Go test case files to the project --- lib/std/tar.zig | 8 +++----- test/cases/tar/gnu-incremental.tar | Bin 0 -> 2560 bytes test/cases/tar/gnu-long-nul.tar | Bin 0 -> 2560 bytes test/cases/tar/gnu-multi-hdrs.tar | Bin 0 -> 4608 bytes test/cases/tar/gnu-not-utf8.tar | Bin 0 -> 1536 bytes test/cases/tar/gnu-utf8.tar | Bin 0 -> 2560 bytes test/cases/tar/gnu.tar | Bin 0 -> 3072 bytes test/cases/tar/invalid-go17.tar | Bin 0 -> 1536 bytes test/cases/tar/issue10968.tar | Bin 0 -> 512 bytes test/cases/tar/issue11169.tar | Bin 0 -> 602 bytes test/cases/tar/issue12435.tar | Bin 0 -> 512 bytes test/cases/tar/neg-size.tar | Bin 0 -> 512 bytes test/cases/tar/nil-uid.tar | Bin 0 -> 1024 bytes test/cases/tar/pax-bad-hdr-file.tar | Bin 0 -> 2560 bytes test/cases/tar/pax-global-records.tar | Bin 0 -> 7168 bytes test/cases/tar/pax-multi-hdrs.tar | Bin 0 -> 4608 bytes test/cases/tar/pax-nul-path.tar | Bin 0 -> 2560 bytes test/cases/tar/pax-nul-xattrs.tar | Bin 0 -> 2560 bytes test/cases/tar/pax-pos-size-file.tar | Bin 0 -> 2560 bytes test/cases/tar/pax-records.tar | Bin 0 -> 2560 bytes test/cases/tar/pax.tar | Bin 0 -> 10240 bytes test/cases/tar/sparse-formats.tar | Bin 0 -> 17920 bytes test/cases/tar/star.tar | Bin 0 -> 3072 bytes test/cases/tar/trailing-slash.tar | Bin 0 -> 2560 bytes test/cases/tar/ustar-file-devs.tar | Bin 0 -> 1536 bytes test/cases/tar/v7.tar | Bin 0 -> 3584 bytes test/cases/tar/writer-big-long.tar | Bin 0 -> 1536 bytes test/cases/tar/writer-big.tar | Bin 0 -> 512 bytes test/cases/tar/xattrs.tar | Bin 0 -> 5120 bytes 29 files changed, 3 insertions(+), 5 deletions(-) create mode 100644 test/cases/tar/gnu-incremental.tar create mode 100644 test/cases/tar/gnu-long-nul.tar create mode 100644 test/cases/tar/gnu-multi-hdrs.tar create mode 100644 test/cases/tar/gnu-not-utf8.tar create mode 100644 test/cases/tar/gnu-utf8.tar create mode 100644 test/cases/tar/gnu.tar create mode 100644 test/cases/tar/invalid-go17.tar create mode 100644 test/cases/tar/issue10968.tar create mode 100644 test/cases/tar/issue11169.tar create mode 100644 test/cases/tar/issue12435.tar create mode 100644 test/cases/tar/neg-size.tar create mode 100644 test/cases/tar/nil-uid.tar create mode 100644 test/cases/tar/pax-bad-hdr-file.tar create mode 100644 test/cases/tar/pax-global-records.tar create mode 100644 test/cases/tar/pax-multi-hdrs.tar create mode 100644 test/cases/tar/pax-nul-path.tar create mode 100644 test/cases/tar/pax-nul-xattrs.tar create mode 100644 test/cases/tar/pax-pos-size-file.tar create mode 100644 test/cases/tar/pax-records.tar create mode 100644 test/cases/tar/pax.tar create mode 100644 test/cases/tar/sparse-formats.tar create mode 100644 test/cases/tar/star.tar create mode 100644 test/cases/tar/trailing-slash.tar create mode 100644 test/cases/tar/ustar-file-devs.tar create mode 100644 test/cases/tar/v7.tar create mode 100644 test/cases/tar/writer-big-long.tar create mode 100644 test/cases/tar/writer-big.tar create mode 100644 test/cases/tar/xattrs.tar diff --git a/lib/std/tar.zig b/lib/std/tar.zig index 21d08c5272..ff8cfd4a36 100644 --- a/lib/std/tar.zig +++ b/lib/std/tar.zig @@ -618,10 +618,8 @@ test "tar run Go test cases" { err: ?anyerror = null, // parsing should fail with this error }; - const test_dir = if (std.os.getenv("GO_TAR_TESTDATA_PATH")) |path| - try std.fs.openDirAbsolute(path, .{}) - else - return error.SkipZigTest; + const src_path = comptime std.fs.path.dirname(@src().file) orelse "."; + const test_dir = try std.fs.cwd().openDir(src_path ++ "/../../test/cases/tar", .{}); const cases = [_]Case{ .{ @@ -921,9 +919,9 @@ test "tar run Go test cases" { for (cases) |case| { var fs_file = try test_dir.openFile(case.path, .{}); + defer fs_file.close(); - //var iter = iterator(fs_file.reader(), null); var iter = tarReader(fs_file.reader(), null); var i: usize = 0; while (iter.next() catch |err| { diff --git a/test/cases/tar/gnu-incremental.tar b/test/cases/tar/gnu-incremental.tar new file mode 100644 index 0000000000000000000000000000000000000000..4c442e5b82d1977231c83167324dc6cbb39f090e GIT binary patch literal 2560 zcmeH}%?`pK41jyyQ}6~BR^SDE15X}Fgm`jhV0e9D|52kCnK9aBtYckin|)=$`XDw? zR1gWZlz@m_OI%*lRGwA9h14WT2vq~}S_lHREgIF}{NjUY8H3iu_St#|f3o43!OgQF zA*xBv$!WT=`uOeMH4W_j*|gq%JeYp~t5+a&{O6CLoFGS3L`&|+KG5TjI3dD&{*}_e zuv|#9=O5?a*=X`v4TFi!9!)-~JQx>kr#Lex*}O{T(ROdlh5T#ZSb?7Zvi<)R|EUQ~ p{P+96mNf#~tx?dT{HxUWIL*mD+W*tf(I~k?j`F_TmkZo^y#f_=Y61WN literal 0 HcmV?d00001 diff --git a/test/cases/tar/gnu-long-nul.tar b/test/cases/tar/gnu-long-nul.tar new file mode 100644 index 0000000000000000000000000000000000000000..28bc812aa60e81ea324297c81c738486acffc09c GIT binary patch literal 2560 zcmdPX*VA|K$%Afaj^QI J<`xZ33jpEZfW-g+ literal 0 HcmV?d00001 diff --git a/test/cases/tar/gnu-not-utf8.tar b/test/cases/tar/gnu-not-utf8.tar new file mode 100644 index 0000000000000000000000000000000000000000..81cec67d3309502add09e2495ee1bf139389c8cb GIT binary patch literal 1536 zcmd1EY-nt1PO400pdBy(0y7g61|Vf9U5Ztq0(Jv@FdDKtv;8zq|ijXv5BIw^6DOh^2UK)_HbK1>@VQ0c5`qsHR zJrb1zXEcV16&lMRW}rdtKd=NSXg->JkvP|Esp4`g&CK_h+FMmo7oR?iU7RP&svn2t z!9Ke4)upeR_aRYKtT+(g`B!B>fS>t?p7IZ9V9LKWlK+)w+iY|SVQ_tY3I4Ddrx1w) M;($0H4*b6ZFWOBnBLDyZ literal 0 HcmV?d00001 diff --git a/test/cases/tar/invalid-go17.tar b/test/cases/tar/invalid-go17.tar new file mode 100644 index 0000000000000000000000000000000000000000..58f2488e78fb44a10f4e5a7833d5176c4c0ca090 GIT binary patch literal 1536 zcmYex&u5@DFn|Dt29QMx3=A+nlm<~SF$mk((A3NXq>>Jxw74X(NP%*@pq_zwgdvgE SfDU0ZYQ<;>jE2Cl4gmlQRWrx{ literal 0 HcmV?d00001 diff --git a/test/cases/tar/issue10968.tar b/test/cases/tar/issue10968.tar new file mode 100644 index 0000000000000000000000000000000000000000..1cc837bcff14cd822a26e43034955c82e852ab29 GIT binary patch literal 512 zcmbVI!41MN47Ah*kg@;^fX)>lI!AWsgI^V-_Q4}k$6}2x&>iv*cG6Oc`at9n#lG|1 zIi>(iak!RTol#boyD`0c^v(cHJJuvHh-e39;{t(!nc@gWsV;O@FkUc{-h`pC817Ix zgh|QIatu;A!G^JZ7UC1V_vGb4bURuTWAy6SS-Fx(D=wcI#QP1Y#wzX?HAf0_+~lp> yN?iGbw2JFgJjd0vnp9WIo>K3V$tfee6;KE|`1A3J$tp?9B&Y7`+Gwrtzls-lP-;g2 literal 0 HcmV?d00001 diff --git a/test/cases/tar/issue11169.tar b/test/cases/tar/issue11169.tar new file mode 100644 index 0000000000000000000000000000000000000000..4d71fa15260609ecee0c8c751cfebf49be8763ac GIT binary patch literal 602 zcmdPX4@j)=NKH&hEh^SCG%+zV)=x}KWS}ZA00J`;69y0s1n9JZp|KHzp^>Svp`nSX svAH3G0gzz?R8~P%SKu(Lw74X(2$wLeQpM#*<5EsKtJ9uH<6)~%E3&=F&Kzfi~{+q#!cOa=AzbjSO$1IxR;aN z*g3HiZShf(vs!BvbKPiG1!!GY>l3F=j$kqh!InX?lk@{OAsyh#2%!qzcGBC1;;FXq z6(OUFiyZLnA-?TXGNUXTUA0xix-DD8En}aw{C@tp7XnB4F0(23$NLG-y>mPO&s&?~ literal 0 HcmV?d00001 diff --git a/test/cases/tar/nil-uid.tar b/test/cases/tar/nil-uid.tar new file mode 100644 index 0000000000000000000000000000000000000000..cc9cfaa33cc5de0a28b4183c1705d801f788c96a GIT binary patch literal 1024 zcmWGAG%z(VGPcn33UJrU$xmmX0WbgpGcywmlR@HOU}(l*Xk=(?U}j`)Zf3?{U)I_ zELW9JRmrEpl(4jByA+?w^w&7<2NoZAjuXMp*n7%?6L^l77Eiau7hvcq?jH1?rTX`9 zpMCF(>ILDcd3=FqS4V*TZi>3Pe0#t9R^c-JqBj20{7)M=*Yz)FewT(Uati=tP7$St z*d8bF(D@GlUJ@4%qe!wMbG*3V!1wg0PiykOO!ia%*E*#=&OR(jtILP6KRA&2FJ*Kg zy|A)1mbYF<|BA(6Myl2O)0`aM3Wji&pIh4ClA2$dWoJs58yl;4D?U=(N)W;u%XInf zRTs< z4xd;AU1Jf%`IN4#I124Rb^4Q)!o;hPejoEtY5^qa+2ELA%=<%v`PjLWfatmzU$WMq z0o-nPr8-}Z8wrod+8?IEmrDw+X#Mz zXg5Tql$=bVJ~k+v0GLO)^pr}@?=ab|SNj)8^HW8!blD3B%SS zGI^{kUFR(2?R5l=l)&2sw&#PX@ZqpeYkq_8j?Fe9>W(2A?o+GT0h2`D?X>ODJmvX4 zP~kX>b+(x;9Ro3CH;IaFGqbd&#t{MvQE$!J(C*Cr+>WZOtS-2k`j?wym_80XdBrEb z&A?kq@r`(G3QRVPrgJ7?%^kKYVLESuSIlk5vZfj_byJWIheX`cpD(885)#?nu-$bl zd_2p;+hBpM{R+d!YIE8hxR?tY^UL#n+jl6O_LaKNYd-D1vHp<<`zJM7tNzO*g*mMS z{}PVT{JZ_3frq#ms21`Cr=+Hc0kHIcL{G*ZFA#Efwe*);p(rx?(dkdptIvyaeUIQm zC7-2Q)O+&%G{(pIJ#q(#>i-#uLc#hT`hT40Pta=rFC=*e`!w3WI)BE>e1hozPB`6P z`9Jr6+W!j+!|;>--`D@^3;ld-=Ii;m6ILFVT3VXy>=Udb`;P z_AF}Ko(kwITGLdEM1G)5o<9H!jr=439(@V?ONRXCAu*5YPw-#9x&N1V|EJgyTG0B^ zUZ)s9!5N^&Ghph+I3UGBWYR$X|2zH<_}9R{M*cI=m|k}8li%1Drp7@Vny>jkUkM=z Sl}Br1`$oQ%|3`N;j=%%-SrC5! literal 0 HcmV?d00001 diff --git a/test/cases/tar/pax-nul-path.tar b/test/cases/tar/pax-nul-path.tar new file mode 100644 index 0000000000000000000000000000000000000000..c78f82b16e85363143404ec50c3e77e5174ba696 GIT binary patch literal 2560 zcmWGYtnf%pOi3*&)-%vIFf=kYF*P%{u%s%>00J0r&<4gv#xOaM5(Wb!BV%(j289X+ zI)KvRlEfmQ^^{tL?m0@$qmzCkLqmmv#F7kKs>V3AQxFN}F>ui-ycfm?#?I`Jb2|8dWnI0;3@?JVO8g0FZP& literal 0 HcmV?d00001 diff --git a/test/cases/tar/pax-nul-xattrs.tar b/test/cases/tar/pax-nul-xattrs.tar new file mode 100644 index 0000000000000000000000000000000000000000..881f51768f9872f8d9bfcd2cbb637a64c88b59fb GIT binary patch literal 2560 zcmWGYtnf%pOi3*&)-%vgN=(tsE6vH#E2$`9pdK)Q00tbifq}6(Ob(=k!NAbi+{l1I zp@Mo&z->}#aYE@j+a){BLMtXu_aCah^nR1rE*#&;K|=WmI@H1V%$( H1cU$p$tyMF literal 0 HcmV?d00001 diff --git a/test/cases/tar/pax-pos-size-file.tar b/test/cases/tar/pax-pos-size-file.tar new file mode 100644 index 0000000000000000000000000000000000000000..ea5ccf916426a5b6300dd341dffeeb349e51ad90 GIT binary patch literal 2560 zcmeHGO^=&86wSK7V)iVI`DW1tNf<~-Ffb4pb|xV)A%qVbNciYIMU^VD+e5mrD1N`@xy@5P0!5`e$lo>Ayydck>ZnF=Fo-*7$%B*6VQy8OC1ZYQZ0cQwSoN-=7~KHZm75nsv?7#% zxbP~EBdQp}j$fv$ zm0((q`NB@)$O$!<9_$=t{xvb~Lm9~}L?l0&Jl78;-DOxv-8%`1VOZ&@XiXNP^?Flj z(`mnw@sQZt-FOL46N~e{7&mmZ3_7Zeb)X3_s28DRNA*13 zzlx)-aG@0_eZq!piMD!7yu_+Gn2p4s1_%<*fN8?jFA9^o3rL4@o2IU`LoynihG>kD zgC*AcCW%G}r$MQF^{SM2lx>!a?K5KK;Y$2@1m>3MDAg#{VSu51&>@#aQR@?hJl2&j zOTYwY86z_%=ypQwac8MQ)Nk`zSmC?tfF?@1eU$X~vDKZB%VPg_Skq)0%kmy-XqcqB zSWUKpp_GGFrX{zDo7-dKiXlS@wWp$QH`aD)2Tf5ICwv|0^UXD_0EfP^5VFAG&@E^9 wM*KF17Kq~USjbrS`t?E_kE`$n^D8p1nNBRj66M`4lQuLkKmWlt`)ynQ0y{e~UjP6A literal 0 HcmV?d00001 diff --git a/test/cases/tar/pax-records.tar b/test/cases/tar/pax-records.tar new file mode 100644 index 0000000000000000000000000000000000000000..276c211baa388cd4857f60be3355dc710c079adf GIT binary patch literal 2560 zcmWGYtnf%pOi3*&)-%vg%gjk-pgu5w00tbifuXS}Ob(=k!NAbaz|4q2p@RBO!8Eb7 zxFoR%Xg#LPh!8QfP;mG6arAT7E67f_1qKC|k*Pv*er|4RUWu(oYEDkRj>3~2)1FW5 z;W9N)D9uaEO|{L*&r2r;bB%})9NM0wQI78BOoLqCLtvwr=Z5b$i&RT%Er#Y zO+ZjcSVUAHn~8MUp(~vBV+cg7LjpEKCCE6D7E@EwTcMv_>l+&bbg`j1Cv0A776ym5t@+ zSt9MDBFtXbKY&m4pMN0f`l~hhD>#q(-`x$5n+q@eEPmAevA;0XTM8XMYkTvSmQ-t5 zkihVw{(qQ#_JjT})&KMa&-FhG0c8or{CPvw|Jf69WL!B2Wa1KoKYcMW6^2fg(@@ia-%40!5$*6oDd81d2cr_`3;w E2V3|JA^-pY literal 0 HcmV?d00001 diff --git a/test/cases/tar/sparse-formats.tar b/test/cases/tar/sparse-formats.tar new file mode 100644 index 0000000000000000000000000000000000000000..8bd4e74d50f9c8961f80a887ab7d6449e032048b GIT binary patch literal 17920 zcmeHO!BXQ!5M{6a3g^xmb&sU64qQV{sZ?#{1DvdPiv%!*Aw}}_dEEjdi|Nre#)hpG zE{}(KnjXC;wbY|&t*;k1>*dFY-EbwpT`b+-m>u zXfjaoe5W44g1VMFbuvaLV|3acePf?HHj7T34f|}^XTyHz*zDR5hW%jJ$GN!K=dPX7 zuwNSXOT&I?*sl!xm0`a!>{o{UdfWbohf`t0wKm47jd5yYoVY#C#(p&HN5g(h+o$d^ z>C~x6+ovLJp9;gi;Rj^+0U3Tkh98jO2W0pG8Gb;9ACTb()boS>@h8I{`Aj1#H@B=dZfDAvtjWMmW;RoC~7Py0M z`m*5%-1CF}@n^#y*zgB7{DBRBV8b8S@CP>hfen8^_^{DnOAo^z5MmhHr;h_0e!zww zu;B-6_yHS!z=j{N;RkH^0r&ji+3`30fen9P!ynl22R8fx0blw!^!(v@`{T)$#0AMUzUr{%bWEKK}dPBZfAtotM&Q)$6}V4GkAAL?ydIxj}Q`3 zJOATY>UD~$8khO$y?3COY_Ib_T!Mz?cSHC~#(oEVI84ue{e9LR^x69SzvU?x#e`$G z`ReZSkBilxf3HuQYO>v9_2tWYd3#C|uKGRxyy zk#CN0vO|t>vO|t?vO|t@vV)g2dr7mGGDo)W_L8o>q-!tf+DkfmNk=c~=p`M!q@$Pg+)H}y zB|Z0&o_k5py`&p2>BdW1A|f+1N!@lEFX<*ndTZ#%;H1d0PWQ;sPWQ<1PWQ+WPxo*$ zCpU9)GbcB5ax*74^K5XIR5u%)rF*!UXXCT<7;fg-2rW5AHbhJJa5K*aY3VWC%(G!y za*S-8mhRzZo{iMfW4M`TW3}WM*$8{;Fcc4%{&{rCCA9dZs{Iw=Go{iJw}H4J9rlMBkscMKka?4V*dGW zC;x{dmiMq8gvD(vpG{xk(ev}2>9_pg&wuy1`g67#*MIt_+k5+eaQ%mN-{S%QM+!~( zxc)<2*YN+U4#l|sv%B)c7PePszGeL<)ZO)vtHtH=w09GsNfox9d|WQBPwAMB1HKi$ z5#I)1l17qNl4g>25`gi0%mT0gEC34-1PB5I0fGQQfKq@`fKq@`fKq@;fJ%T$fJ%T$ zfLefBfLefBfLeekKolSf5Cw<=%mtVWFc)Ahz+8YvfJT5ufJT5u0A#CaDG)Nzv=opE zMO*%@0IdS81gZg+MP*A>0a;*L*S;zQ^1P%)r9keM))iGXNaa8-mb9xN$g|SAj;op= zlS*1t6=X?iT~QSVc~H`#(jdo4>x!y6$YPQf)rV9dQiVt*BGrggBvO?~WSR`0jpG)F zR$z95<=;=bg;QIfR|BZ{k=7%FW59w-S{C9wpVT}I{Ao4pNVj%vb z{pbH+{)aiAzW>2BZdt7HACK|hLCzZHZZvnf_-l0|IXl~}=T~SgCPR@QPL^Kc(9Lpj zv56@U!e<=Br@-+2fA>qk!2KVorji&Q8CK+X>e0g#)6 z@dUuK3}6apYu09*vX znm!5vu=b8Z0L;v^6bQklmI7jCCS}XN6`)n1l|VJX%uKdX6)-c?y7pBeFf)@Dl>##} ztt+Z(U}h#Qst0CfT31vh!CNoVqM~4CrgcSC7r2GAs4|$DXJmbGf$=ejIaDU{qjK;EfgdABYgg9smFU literal 0 HcmV?d00001 diff --git a/test/cases/tar/star.tar b/test/cases/tar/star.tar new file mode 100644 index 0000000000000000000000000000000000000000..59e2d4e604611eeac3e2a0f3d6f71d2623c50449 GIT binary patch literal 3072 zcmeHHT?)e>4DRzz;R#BjQ;)ERouag*479>@u-$$NbG3!-WyoMlUh?xvNIv}HZD&jy zuA!-C5KZlY0Y@bP833Zfm_JQ2M2yBQ2dTK6K{>VDLBV=D{z>IvVF` zUD#xgUGh?F1AikeIW6NnOIrMRGU4UU`62nAWxyx>^STEhN#m{lQEc_E4Gd!2kkq(FP`FW-vLBN(KWX14Anam zFj`@3XrNG#Sdw8&v*@Q?!WuA>xdvlQlIJEmL^~{RXSF)#oEGZPaA5Df(AG_n|kZD?R%Y|fxyKx21-jV~=ONh|_7iBh{jE;leR XgnG`9QsYMTkA}c#2#kgRtwR6+ua*#N literal 0 HcmV?d00001 diff --git a/test/cases/tar/v7.tar b/test/cases/tar/v7.tar new file mode 100644 index 0000000000000000000000000000000000000000..eb65fc9410721efd98cb7c5e274f547ec530252d GIT binary patch literal 3584 zcmeHH&ubGw6n?3{z(^13q0owB@t_Dbv)ODTf|dgec!sXT^AK{$jKc@-kWdUe(&uh-&e0L+xARj zwLzm>LI~3|1sT#R&XkBIzWbfCPrYEK7fr^Q@7vXO;&pw$QCTT3-?&yO+jq(<{6qS`FS_vP zIBhMBjnmsnS~{|C9LMN8#r!W{zj5l&zcE?^U_t*||1zJ{zqInH{-Zy}2$O|c?WSFx zxn8RtM3-UpAJiW`Z@Zar#$ojz)NjtWBfnULUzD=jj5!>iG>O2k{o(=ZAg=$-urC7q zVm{n!{kK`S@p|Vk`q%aFg#nw)bMB-40yAj*%7=F37m@ziFINBH7pTSD@Cfil^^9T6 zxL-iu+Aq)#ev#CF(l2&S@A^eC<`;^e4{ZQ#s9$Y4r}$iP3;;e3V;a&MNN*s$f%FFc H(;N5+1FUK9 literal 0 HcmV?d00001 diff --git a/test/cases/tar/writer-big-long.tar b/test/cases/tar/writer-big-long.tar new file mode 100644 index 0000000000000000000000000000000000000000..09fc5dd3dd7fc5de3b6d22461fa23152fd499a41 GIT binary patch literal 1536 zcmdT@%L>CF5cHg{@C({q<0CobV>|>an6xwspR=A26VBn zaX^Kt?_`f1Z)$wO|DLIY?J3lf^OSK^BIf(k6O@V|Yg?ui2v9Nql1oNtkxU->H^Dlm V!!&06{D$v3HgTJv%r&)bzX73UunhnJ literal 0 HcmV?d00001 diff --git a/test/cases/tar/writer-big.tar b/test/cases/tar/writer-big.tar new file mode 100644 index 0000000000000000000000000000000000000000..435dcbce6abc74dc5efa1f4dd34129eb7701c697 GIT binary patch literal 512 zcmXTPEzmbKOV3Q#E2$`9pbanp0y7f>1_L8QGgAXY1_J{_Lo-7Ih6adrEFj9z(8$cl z$k@=p6sXS7*wDzBLBRkbPg}CIxFoSiL4hHqxH30CFQpilZK-+bxTL`1AWs4T&~spb JSM4B@1OOWT7M=hA literal 0 HcmV?d00001 diff --git a/test/cases/tar/xattrs.tar b/test/cases/tar/xattrs.tar new file mode 100644 index 0000000000000000000000000000000000000000..9701950edd1f0dc82858b7117136b37391be0b08 GIT binary patch literal 5120 zcmeHJv2KGf5M|~o_yWg1+khiw>d;i}P^nX=$R$ooYd`|ilD{uBAv6g^kxC>6-(uu< zHg^v_-l5r}td>fyRbC(vfcdOQq}Iq(#u+Ja9X?}Dv(|CCVoJF~09ZgF;2a!G7^%~| zYNYoMUQ-rE=5KzzBJ^EKyr-Mx-NQ4gq%k=v3zee}wOxElT`HH-ei(K*xV|_} zC{$GDvDuoW?o>&odUrVuVHkt_w?IH zW3PV_@V!Jxt@A^i>Yrj(>;K=H?5X8!tJS~MYVd#a^`?|QJKb&Uduf~MfN4M7$J!Lr zF40zZMF!9x{tqJ#0F5+;{2!=)=Knre|G(mAKU`hAc#r>!#{V(9d;sW1hxVv7@B_zF ze)#eKF~#1~>@WTI`#+&4`lkel_5U6!N8h^5vRAE8lqGgr9-Ul!p=H1_U>TS&1K)l2 B)fNB% literal 0 HcmV?d00001