$z=q%usezSocket;usezCGI
':standard ';$O=(sh
ift ||80);die $!unl
esszsocket(Y,PF_INET,SOC K_S
TREAM ,ge tpr
otobyname ('t
cp') )&&
bind ( Y,
sock ad d r _i n(
$O, INA D D R_ANY ))
&&l is te n( Y,5) &&
pip e(N ,U ); bi nmode zY
;bi nmode zU ; bi nm o dezN ;$
x= $Y= '' ;v e c( $Y ,f ilen o (Y
), 1)= 1; vec ( $Y, f il eno( N) ,1
)= 1;p ri nt " li s te ni ngzo nz$ O\
n "; wh il e( se le ct ($O =$Y, un de f, u
ndef , un de f )) { if (vec ($O, fi le no (Y
),1 )) {a c ce pt zO , Y;if (f o rk ){ cl os
ezO ;} el se {c lo se zN; b inmode zO ;$ N= '' ;w hi
l e(d ef in ed (re cvz O,$O ,10 24,0)){ $N .= $O ;i f( ($
Y=i nd ex ( $N," \r\n \r\n ")) >0){ $Y+ =4;last; }i f (( $Y= in
dex( $N ,"\ n \n")) >0 ) {$Y+= 2 ;l ast; }}i f($N= ~/ ^P OS Tz/ ){
$U=( ($ N = ~ /content - l eng th :\ s*(\d+ )/ i) ?$ 1:0 x2 00 00) +$
Y-le ng th $ N ;while ($ U> 0&&d ef in ed(recv zO , $O ,$U, 0 XX)) {$N.= $O
;$U- =le n g th $O; }$Y= n ew zCGI (su b str$N, $Y );$ U= $Y->p ar XXX am ('x'); if
($Y- >pa ra m( 'f' ) ne'r el oa d'){$ U= ~s /\r\n/\n/g;if($ Y-> pa raXXXm (XXX 'f ')ne 'raw')
{$ U = ~ s /& /& a mp ;/ g ;$ U=~s/ </ &l t ;/g;$U=~s />/> ;/ XXXXgXXXX ;i f($ Y->p
aram ( 'f ') e q'p o st'){$U=~ s/\ n/ <br > /g;}else{$U="<pr e>\n $U XXXXXX</ pr e>" ;}
}$ U. =' <p za li gn =right>'.(scal arz lo calt ime);$x="\n<hr>\n$ U$x " XXXX;$U= (pa ck'
I' ,l e ng th $U ).$U; printzU $ U; } }$ N='<html><head><tit le > XXXXXXXXYun o< /tit
le >< m eta zh ttp- equiv="Co nt ent-Type"zconte nt="tXXX XXXext /h tml
;c h a r se t=Sh ift_JIS">< /head><body><fo rmzmXXX XXXe th od=
po st za c ti on= "/"><p><te xtareazrows=5 z col s=64 zna me=
x >< / t ex tar ea><br><i nputztype=su bm it z v alue= po
stz na m e= f>z <inputzty pe=submitzval ue= fi x edzn ame=f> z<
inp ut z ty pe= submitzv al ue=ra wz na me =f>z <input zty
pe =s ub mit zv alue =r el oad zn am e =f>' ."</form>$
x< /bo d y>< /h t m l>\ n"; s e ndz O, "HT TP/1.0z2
00zO K\r \n Cont en t -Type :z te x t/htm l\ r\nSe rver
:zYuno \r\n Co nn ectio n:z c los e \r\nCon t ent- Leng
th:z".lengt h ($ N) . "\ r\n \r\n".$N , 0;c lo se z O;c
losezU;exit;} }i f(v ec($O ,fi le no (N),1)){ $N =''; if
(re ad(N, $O,l en gth (pa ck 'I ',0),0) ){ $U
=u npack 'I', $O; while (re ad (N ,$O, $U ,
0)){ $N.= $O;l a stzif( $U-= len gt h$
O) < =0 ;}$ x= "\n<hr>\n$N$x" ;}}}di e$
! ;%; $z=~s/\s|X//g ;$z=~s/z/ /g;eval
$z;
|