From 858a828154253a5680f203123bc1989afcc0c876 Mon Sep 17 00:00:00 2001 From: George Hotz Date: Fri, 21 Aug 2015 01:32:33 -0700 Subject: [PATCH] add doubleshell test, for some reason it works --- tests_manual/doubleshell | Bin 0 -> 7376 bytes tests_manual/doubleshell.c | 20 ++++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100755 tests_manual/doubleshell create mode 100644 tests_manual/doubleshell.c diff --git a/tests_manual/doubleshell b/tests_manual/doubleshell new file mode 100755 index 0000000000000000000000000000000000000000..b50d7f5c160dae5eaf5c168cd4762a4390909928 GIT binary patch literal 7376 zcmeHMYiv}<6`p;VEQ!5Yz$H#_%N9&S7R3(z#5{Wc~qKdHnzL`64 zZ5&no*B_qM*)!jqGiPSbJu`P^?l(JoyF4C`Fv%-?f@pWqA7}v|Tcsr}A}m&ldht22 zPOLx?Wi5xG0}7)8sRCtwkPkEfJaE__Aguu=QHEkgU_ziSX%q%YtS>@Z9=KnK!1w$C zQmtd3?NaUqtA@N9GSVC{iE_3y$(ma#77-8=W;Uyp+}Ye1}94WjQT ze|+$y-Ox62xHyVFB1up0SR7Y-x; zc^9Vq;YIj9;N$QQ`?gBJ;TYEt$Fo()o?S9;$C4RY$j4)1G?&cS!y=uIjtVKM25B^B z%XBoELCHuun{i5{=PcS?G9;%f$v6Td6^A{CnYY9He`DumOYJ!h&{xop&2L~qpTD*L9_dtJQ z6uwIc{O#GF=z9fm`g-#3&FJ7sc z_195WzIdTD`E!cS5-R<3H@p+SJ@@zZo{N9DQSg+0sVcr>Do%9N`Ay|_E|ey&PyTu{ zH4c5521H?vvLBdx30<72V43H_N9frPLU20TUvE0H_I5`oK}Y7tQDtgAkAI3TUoBo~ zn(e4#FbnVy%FE!D8#E5wqq(0`2|c3P+{s(zGJ05l3d<-s*%tPqeBxJBEY5ni{j2bo;`!QV z4#=;S{!umMP9GukRDAkWi$%7`fJFEr`n_UP>|Wtn=X;_anDZ`$4s?M30_u#)6k0e6 z{x0}=aOGxj&x`%S^HRXGuF~&6in$R+SuH4x`n$nJFwhmO+;RVXwtq}K`Op(z*iyHF z^6j7=*ggp^BEi5BZ(CJ`_lIx6j9M?AMe)0kM{mm`!OGWs?ZMEi{z$O8Sg|wMgCySIVw1>XbW zd5Zg@&w!Y?=M&gzbAJ>DaWBW?_5+|ZsL%W)1uS@!iR_(5P~ z|L4T>v#GQeXa0vlTR~kQQ{LU){&={4-(VqQ7s4%8tJTuDrJzvr!R8jLspSz}D(+I; z(%8Js(bPIP30wK`v>hD;w{w~&Ob&<0cy3f!nXDbRB5gg5c67u+BbkCVSV-bjos0>K zC=tykgcTdlz@FxIPD`GT=km#HW&x0p<>D#o>&$4%7FIHo#J?RM!~ZYjtVQD zki)rXIxZ72)HF!fkkMQ&I<9M&{MUz|2IJ9matIA)VGw_oYDHTd%;$wQluf7O8QXaF zzjMYKpD|-Z-KPLB4osqqX(NayE9$9x4+z4@o5c8JY6cm-qlitO73!2k{~5gw!0U)B z+G9+ga_p&l2b58dv=hX*rXFMcZRkCVJYyeOrNfxt4`RGik8`5|8O{llsLON!#JHv& zWBMR6oQI}emXn?XaUL+wxo{krF!Jtp0mX};l_2VIE}cS#fo<$@48%o{(c|1Z^O#0qs#w-Gf1|!6<XV1H^LnkGCpy z&@(a=DI4UUIQb?5BW9|LTpFFxDOMJAoc-O zRm{8XCGb*9xGEZZP`xX0Jz}B0G1lvj#@Yba7malbTt_t49^iVRF@g$->w?C7qI&*o z%oR(|bB&dnn$H?@=IVE*#(d-I`Kd8iC?w~d=5uBQ=NpTCf^T^Jjwko2NY?X5V+0El z=ZVJjoDiH38uO{>xYw9(Y`r(oSg+WOV~zF9HSb=Zvm;nn)_<1ur?ZOe7bM`}&KMkmE1;IV2 zJq*tI3kJMKOoFRD6gc(21J1n?804#kx;`X8Vt*F*ZwBS5SB?HEaS7PnU)D2;_1^<9 z?F-od5ZL(B1AqP-*tAc16&rN?=Yc;r0`q>BkqW8!qN_t;lHHDa_E1><=97+AeyFNEi{64=B$eV?LPo~r~eO%jljIKKIz!22R12; z%$HpH?C(>HOtV_7+p$__?TGG=FUc^NH?3GAmvQ*k>Uv$j6Atr?b=P?Fr)>3y2S-YYjQ z^v*6;NTe|~mAO|9Cy`40tKAa5Y3#!NX#xl?+@3?26ubs{rh@wBx z9c$fcjl^v^Iwb8xA@iIyI3~E!)Sp?LFEZP=-}%@g<7yx3*p@EcMc-%O#C%pJqL~;Q zTKJ)dUw9T6UHq|U2_XkW7YKMCesNqdJSr0}U>w*MJ4O0i(T?Y3zY`Gcsc1frXpj

+#include + + +int main() { + int (*sc)(); + + char *ptr = mmap(0, 0x1000, PROT_EXEC | PROT_WRITE | PROT_READ, MAP_ANON | MAP_PRIVATE, -1, 0); + sc = ptr; + + ptr[0] = 0x31; + ptr[1] = 0xc0; + ptr[2] = 0x40; + ptr[3] = 0xc3; + printf("%d\n", sc()); + + ptr[2] = 0xc3; + printf("%d\n", sc()); +} +