[Pythonmac-SIG] Re: PythonCGISlave update

Just van Rossum just@letterror.com
Tue, 28 Mar 2000 16:54:34 +0100


--============_-1257863612==_============
Content-Type: text/plain; charset="us-ascii"

At 10:37 PM +0900 28-03-2000, Noboru Yamamoto wrote:
>Thanks for a PythonCGIServer.py program. That is a program I wanted for
>a while.
>I added a little enhancement to the program. It now can send back data
>longer than
>32 KB to WebStar server. It uses  a <SEND_PARTIAL> mechanism to send
>back data to the WWW server.

Very cool! Thanks.

>I have tested it with WebStar 4.0(demo version) and it should work with
>WebStar 3.x.

I would like to incorporate the enhancements into PythonCGISlave, but I
wonder: do other web servers support the same mechanism? In other words,
can we turn this into something independant from WebStar? As it is now it
would blow up if the CGI would try send >32k of data under *any* other
server, since it explicitly start an AE connection with WebStar. I think
the incoming AE contains info about the web server, so I think we should
try and use that.

I've appended my latest working copy, which besides PythonCGISlave now also
contains BuildCGIApplet, which does what I've described earlier: it
converts a CGI script to an applet, but wrapped in PythonCGISlave's
compatibility layer.

Just

--============_-1257863612==_============
Content-Type: application/mac-binhex40; name="PythonCGIStuff.sit"
Content-Disposition: attachment; filename="PythonCGIStuff.sit"

(This file must be converted with BinHex 4.0)

:%P"jG'K[EN0(590dG@CQ,R0TG!"6594%8dP8)3%!!!!ELJ!!!!"fB&0*9#%!!3!
!'iTb6'&e!Yi!!!!@hYiJ)!j3HA4SEfj$4dP6G(9QCJ!!!!!!!!!!!!!!!!!!!!!
!,qd*KJ$Q!CF#hJ1B!!!!"3!!!!!!!!!!!!!!!!!!!)B!!!)3rrrrr`-!Y3D5RE8
'NbS!!!!!!!!cU3!!!!!!!"X%rr$rq!!!`d!!!+(!$3d43R9TE'4$4dP"F("XCA3
ZF(N!!!!!!!!!!!!!!!!!!!F@#BB!!!!!!!!!!!!!!!!!!!!@!!!&e!!!!"Errrr
r9%9B9&"TC'8"!,8'6S+e"T-3!!!#"`!!"jF!!!&0!!!$NH$AU9%!!!!!!!#5V4%
!#"cm!iFJeSEji-`-bV)UHabe,eD6M[6qQ6'1F&NNR0QS8+ZX5(UiGG[f#G&S1T@
qk&#4)J3AQG'K'5NdNhT53NNp3i&)Q#*3cQ1jiqphFbC[#j!!k`!!6klXKMb+3bR
)'B*h[Vl@MZ1UV@(N+%J$'!l3"m()E5#-M-E"b'e"aQLYh32EH5!I,`KSj(D3!*U
Gj3$Q&'N(#&E@Nc9'G11q1)GFT&IYNc`PMDB-V*aMeVVXrGj@QENFfNrkC8D'862
m9QhGULqM,jp$1MQ6Q96+#%[0V'aZ)YXK680P'QGqcRL0)''CTZT@Vd1-kUBF*dD
2bb,-ZDr02)Z&XhYXlHCdh0T!+bmjS9Z[GXVhjAANl9QX$mRXNd%L,$XHHl&,l%L
4%Fkb0pUJ%j'8cMpLiE$0EfRDf&%Se0BlV3XkQJLMX[F@cSk9"E+RN!"RV6S*!!T
19r*iJJaJXNCqP4+qRZ3SB@5dNP[*Vmb654Jj*RFPE1d)Id)*)bX"@$eJI!I!9i$
1#-#[RA+#I[3#KEmmXKlKP%YBK"pj6K$!bC`6*(!Ii26XKm2Kqi-ffHhpahP9'3j
*9G0N3VH19@"5K%05c5APcKDi@0CKCd[bUG095+*S9A'UMIk0-hTKjc9ZE8k0UpE
5Q,K8'k2,EDFYTPTp6m(5KU1$KrbKc0M4JdVTP6INfBNI-RV2p"0[9N'jK"jh61Y
eSA5jAP2Pl0DTJV52@QF`YM,UK8&a6+mlRHj%id9Rl%%ZY8@PJYk!9UM*U*SGf"3
(Jk0b'cf9qMMaS6Cm!C63LTZ$pCI&r1jKNB3MSQ!GC4b80Mk*N!#K+0*&C9dJAr[
ZbrBrK8VcrK0i2kqkcbrFhbf8Vqqd-REERf`N3m&Ddep8pGUaY`HAFK4&'HI`TX[
iHKS0JU[a'M5Dk9DhQBf[S`%I8kiZCT)QQ`[R,2#h&%Aj$#"jB1r9PZ2fq[VNp3p
[8$flZPZmIlUIh85$D("&(h5C88"@!aF9mX9b&12!mFK6DDQbZJbN5mPRbTa*1qJ
F`DG8P5-N6!cS!(j!Hr*!X`Y&8HJZKI1V!aIdaib'hmTJ'!eJVV55bJ3GX%[iU(h
`mAFT`ASfd`Rq#Q!aiJeP6YH9ie`Iac5F)Xr64`%bKBNK@UG9EX"GdGc[Ql*S-iX
dS$a1*,cdCUl4HdL"'&0Zqr*m-rhDXlSF#46[d#0q6(B2,NfT*%YdFKAZ1Ac3KZ2
4LJfRi96EEB&04f-D25jqIT6hI,Rm0!+D2Jelm69`(!kZa%m1&k8U*'QYf86jYH#
A)`RC)22K,&,X83IGIpapG$T[V&$JCDCFYMadY*!!Z'CFk"30M&fJ[0!5)S-ZGK[
P@h0RipIr%2bG6d[K'm5Q4@c*FGFII@c(+*j@(G9iGS`D0Cl&kK9pXVBLLfe#bTK
'll4LfLlcQ$)5*D5q*r'@m!EC[dRkMpCT'rcP#Hi4RZllHI*ZqT9Q-aUKr%C#jNb
P&jP1hU'A[Pr5$c4-B"-0ffD`[lb-KVrTS@-DF'p,iK5M2a8K0UBEa1)+0aU6i&5
X5[EGmTGEkZB4)SG-3Nkij!#'UC9mVVM%ZfNIXGf[*MPqmYcG3P'5GejELBcIUKD
fF80Y+)[`BIla4e3qaS#a+TX*&k`5Y%*[kYEB0eZBLMN@V#3%#eCbemeC#9mljk,
r!3d!%d*eD@aN3dG*3A"`E'9d,R*cFQ-!!!!!!!!!!!!!!!"SkJQ'!!!!!!!!!!!
!!!!!!!!!KJ!!"bd!!!!@rrrrrh*cFQ058d9%!3#e"!%AY3C8k`!!!@S!!!!!!!!
!k3!!!!"J(3!!!!!!!!!!1fJ4!!JFR1X3a-#1B8!M!ik5!fMR0Jl1EIJJ-%Ih3Hl
F+"D+Y-U+T)GEYffI%)fQ8qN6Q5*&##ibSd-c8QJQpBc6MP!`+4'"FKj,(Rqr'iX
fb&E)!)#mHlbb@HkYhmV)Af'E-`VFq1c'-IQVljkhj'CaX6eI[6&ZTrLhVfbPJdL
Y1i,CN9('95MSm!b@PClZF!S`*mGGFGc1FEI@Ih9fBE*c1ih,(RMT08I0KG`c@m5
H0hCQ6P62#5Ae$(@YQT)'ifV&0ibIC4fp%D(i3GXhV'9kX`YTiP(TD&,EEZHf0hI
bY6QVcd0'`kh!!Jd0$N0(59p548&%688ZG(Kd,R*cFQ-!!!!!!!!!!!!!!!"pM!Q
'!!!!!!!!!!!!!!!!!!!&e!!!$J-!!!!@rrrrre4&@&43D@4P!3#e"Q20Y3CT8!!
!!JF!!!Z[!!!!m3!!"AAD8m!M!!!!!!!!@M%4!!JFr!1()0B#1U[T@9Ye1&JMde-
[UhAEpRfk*L8NqT0mFSMd4BH+&#'ib)`1c8LKQG3$SD5HS8!N6"%Sjk8Er'l1P"X
"mTi+i-Re8F26-,cIfbT6$p&2qQ9'KY(+(NIE'UX*ANCI2SGdFLBcUC34PTTC@9[
l#MLNDDK-imc2'Dm4*#`cSVYXp6TNASa@$$P1M"kA49LB$ql(XeJiZmI@0c940,R
%#GekZe1q,kmMEmpLI8KQR``5BGRaf+Z2TY-8'H%XHk2G1@H5d[P(,"bfq5dYUMS
+"DGEdp!H38F6B96fhX*CEjFUN!!pK6aVe8N!!!Y1'AN!JJaJ3XQ!GGiDRT-a)j3
``PjZjj'RhFS*P4&qNKR!kJ(M8dlalh'!!68m*qK(,e"P0E"kMdci%D4aIcf"p6U
!p43l1p,jcqmTM3elZY$eadZP0Td*e0TH2URY',8C!m@pT@KYMhmk(BP([HfClL+
%fKXA`aa&)3TYGH#'pVbP`2kDI9K4EkkBIZAYCG4q4EmNdq#(TE@h+rV!FHdjm"M
r*1[9DqGkIKTSMF0fe,fFRA085VfaX5XiH%LpMNbI4R0$)8kJ!Ka2%9Eh[GfEF3H
@!1PY#14`#[m1kSjB4Hp(#TheF3@f30pTjaM)Yj2J4q!S)I4)'FREDa!#d6%U()J
Gha%Q-dC,0P3mAKX2-4T64`0kIS)ad4Y'fNYQfM,3C#k$pD`DKQ4p1),0N5MdCYI
&IN+8YQ8[f9hbcJB1,p4T%4!d,hZ0Dl1@N!$LKZXNbFQfLk5,S$TVB%Ck9VQ*&&(
NQdLY`Gf+0NHH3`S4X-5$eZb5Kmm!h1QaJ@Cbh[-IL8--L'(P),iq)URSJifLiRd
48%M13EMF*4@ph99,+5"(BaRbEP0mD!6jLNBE+d"rNdcI)'$f-G,HD`HXIjF4G-4
RY4fFMQCVHK-Rk[A%U"i3406D-kT$EX[4*8jRkSjUq!l`XdM!$YIe10e"K+`LLd1
[5"T4*)KY+8KE2(UT2G0hc`RPXV1f@G'Tr,A9cIF[e*2R"aYQ,8@VE1-+['RNf6Q
"6+a"CQDVRTb+$XYY)C3Y1e5YQ'PJ6fkB,%&[DY$1T,,-N!$#M[p"I23-%1pac9,
NG#@dI!aZiCL3!++h59T*N!$P3[Q,T9+IrJQXe)rH1TTXm[G5Bj(BadX9[BET-k8
D&J$0@ENfkS&I9[A1U,f"(Y*P@IUQSJXd&KQ8%*B0*-"pa29'aN4[SBU`JirblE[
0CSd+UY-J"4`pFi@*Jbd6d)NcSIX9F'[!X6#"BF&8q[C651!e+@!iAUfYpea,m81
bKPZGHZ`6@&+A($LRXAH3!%cl"Md9-9P!V&,[feYP5PLFm6,0A*iF!V3e(L*'-c#
k--1JXh*X0SDpYc"DS#bqh!FVGY8kBBM)0Z+EQTdSX`+YEGV"R"DY9CcEHa-"5'A
9-"mP-!UdD(mX5kA@[3CP`I5P4JY11r#q`aMk9dmkAea5Ar3-&YBr"4LRd9A,JXP
U(,Vhkj!!q3QV9%CShUjj+HjNP+$GGKdmcGY@2T0G9X#8981[Qd'fL(1VSK1N'hP
2*cV[`a0m*Z@0&PKrhVclq!(rSkf[*!0QbXPjCc(i6Q384C550(AJ([9!JRDf!X0
5&*(8JD0-9Zc*8b!5P*HTE6'2,h"+2RbN%1D[Ur9RF*dFdqEYEjYb!e)m1mbPM+%
J@K$2",%TV8[Z'`5PhQ(XJZhHqUZJ&$bDfrpZX"8,aDZ(!CS,"!Z`HGcIFfIR'Er
J[l"S0!mYVM81b*G1Hh4CP-%T!bbLX%GU[4ebbVXdJRHAHa)QS(ccM*FEhkCmAXN
cr&+$Z,eXEK6Pr)"5hL9#ITJi26a-b2`H%Z$,$-H6K-%b3UrEKcH8h*&!TNT[iT+
2@2D6[&1N[X(bff2YiDSS99j[Y,cI(!IUCCi,CGa)FbiVQV!0NE#&'l1+aEq(XB'
l8V(b)1)EE"6C[hP*B%I)f1pBbr#3!0jrh"3Lqf&cj1&`[a$)eR@5E6%lG!YqKEH
)@eCCI4&!DLTk6)+YPNUdbf#CPjlkZPYbBdQB-C1Hhc@JSr!1c)0X*eRLC"V@+rT
G9LP`e(La8RYFBRe&!f2EcV)r)-'F`D`@ZQL+j'6JiX)SMbM&)UQm06+J+aY-F04
dLa@rd$Z6Y+m3"c$!UX)dIbQiIN!YRVPFLB1Z6i2C[CVrVDcI[Dc8r`d0%9"jG'K
[EN0(590XBACP,R"jFQ-!!!!!!!!!!!!!!!!mD!Q'!!!!!!!!!!!!!!!!!!!(,3!
!'F%!!!!@rrrrre4&@&43D@4P!3#[B`PqY3CV*`!!!JF!!"Gk!!!",3!!#L(#VBL
U!!!!!!!!TPF4!!JFr!1()0EL,E1iT*Q0ilcH6-QMZ"QZ%4rR&94Q#BC*8"B+$*9
TR,9ZfckB6JC4Ah5S5"'#LmcSd)`8QNNp%%VU'3T%`K5"FKlV02iqP1,G'Q#$B3#
HA$8qHTRPFBMd5kF4560`5MV*c-39F3CeDVGR1YiY0$hD2bXGpqF#Cj!!J4'@LU@
13qr*2Umq0XM[EC@Cbk'X4&pN'+hXFE5YXCVJCI6PFdJRCc+65ZPdlDZXVAd&('*
H3J0R[%D3!,$-L"jhUpFKmf+dBXKaB[5i,-,#I(!rRXA#f6ff2UM*I%dqj)4Z[G)
ThjIANEGRX6iNXdm'LE$XH1c94p0TLSa`PVe4PV1238VR(l&`f1Dh0#rS+"4Ukjh
@"4e0K&(C"bLFlAQm32B8mUa9*`%!!!!-6PIbH))-J,e''&QPYBDRhh9N(eNh-h,
VTUh-h1`mf9kIEID%2X%6!)Sreh3cI$i(q1Ll*BbJ(l&!AAf$EU%A@AM(b#DrbA0
bQb"RNdd*&8"Rq(DlrAjKChPfH(3m6Z@e#SU&jdeQL4'&cUqdR)Y)CZ*5LG+S@#5
CX$HjZ*%,dr0f40m)+4bq!!&K)Td89KLPVj8@deb,'h9C24YKbU,)Y8fb+p(Z4cE
*-p2ZLM6jSX4(G6Qf8JFeTaXYLk+L))8"C+SHLAEGIEB3l5LI&fNL-pX@*c*Dd3i
mEk`8JBDM3Ir9b5#`YjCajlP@)PC@*UN*2"M"mlDm,I&4*pBU5,i3Ibk0&GH3!(q
8'e21Zq+bY++3!0UQ#f&XRJ*PU[1j8,F5l*@)mPJaVSbq"#$MHHq'TdIKk-2TkI(
TN6J3qd*XLH1TX,T8A4(R@FH+Rm[%#MQe8&[*D#DdqVP8aN)h,jQ6AdM3iGMMAm%
iQURi[B3[MErA&A[E(LY`NQ4*Ir!DCdT8U2h"Q!h3GFF&l"&*-Ph$+cIeLl%D&UY
ISc%r(`qEmd@$C,@-e#AdV3rQb9cC2%q0ji8Kf4`-`a"DGji(ccS3d9#UK('LFC1
Ei%VCk#EfYh'j*G,m5N`61)ImU,61YI&!0M!faLX"&LVck8,UUqZc[3[aJfJ($JM
4dCBrY%%N9P0B,`0jqhSm,P6N6ihClRNYV@bTi9%$I"-@dXib'+6LhKq)RCHNL-U
Z%ieFQ50b),[aT(T@hab)Ala@j`[NkI4%jbmI"U22iAJbJTXlA4bqMC+#$NH$Nq&
N%2CI[4VaRER1jR3h(Scq1KL&Trf63A9Af0AGqq&S`RFbMTPJaH20F1cZ6&6a1"`
G[jmXHF"b-iF(5FD6m'3`H60maDH4AE!NKm26bH"d%Niq[bI-Vp"m-"S04m!DMrY
(!dL,b$[h$[--D@Gh!+Yk`UTEZcZcmp6cAY$2PrLTC)bI0V'THMNJkb'L6)(`9Lp
fhCAhBVG#ZFcM"@(Z2b$Ka(Y49'FFP%rLJ#j1P$(b#YbI))9Il&B-@)5A,TACi-L
0-,T+3S,fbG`FT$HUJa#Ah!QUcY!9GXCjleK#J54@KTS,UXVR3cV)5afT`'Y9%6C
5TJ[hDc16UGHbHJ&f,3BrS0[J50P6j%D-0dEf1m5MJrbK9R(52cj&#VA8ED63I3L
3!%8Q%P8!RHDC!N"Ue1US)KbNZBb06h5$@&TjpSIH"3@8&kA5Q+Vce1A-ralUj!L
[48B*3ecD-2505UGdeU+()0,Pr$*9IiF89%6fk%mm&Hhc[6BJlYN%Gb3!8"0r['4
f5@DX6&1TCM+,8kApMP6A&KETj$!PIM-+TAQ)pppJU4A9X26f,mL2(cqH2r[p6i4
UiMbU84%@&34K0cC`YVj,NrSicE1V8*GC4KAe3+c,Qk13!%`VEX3#&CQ-63jV&5K
-9V5I'&&9)+4C&e%Mii@`ZDZL39Xm%@`EQ)MG(BCiS8S5KPhiYQP2*%LG&NYUrmm
(rB9k6A!TMH*bXbT,PHj9S$Q*jc,*dM`[@(3A@F[MZia`UBA6TT!!"6ISaXT[liJ
fSZ2j(YTBjccV%*@+RFYb[rdK8lFSBKD6J5-*A5NN+jbiR"GKeE&BL@mNRaLU"1F
CU8cAi)(SQHEqpPR['@RViJj1PTGjLFTqDjH4ppfS9IMHMalX9Z,pDr&RTkhmZEE
R(D(011%+58b%rP3QDBaEbPL&ZTr&X0!jiEGDpeTd9a(b52a1p,R+bM[KDcRkG%l
qHEkrreY11&UeIBN0'T'jFPkUQMq+2JAP0k-+riRCGNleJBS'"La8EQ`mB-U2D4l
*G2R-,p[d9h2I4-+bZMb`A49fP(13!+Eiq+)@aXd,e@e!&j`Xp"!B#-L[Y$2JJYS
J(EVSHq!SB"`+RfkPU9D&pS'h64'-TbA2-eaGX)VID(aekMKpUF48aRVk&-EMJF+
P)Chb+SCH9X299HN4XN"aU&'@(DI#)Bm6dJB4QjB5DPkQdLSZaf@@h0+'*h,i,LI
Q#*mH,6(THK#j5H`-de!jRD)VYjDZ@d+iJV%PALIDd"UA)0H))'TBL@bb3ZHj$9a
4VqBZ4"H+q+[MdB#@0#34KLrX&L!"##Za"6+"4+-pj*SPXUXe%UNk5l#5cD%H4XN
EL(!PNLN6`)i@jmS3bc4"U"-4'GP5TQ*QEA'R#LDR&'BPC9%@b#["$#-4r1ah5*d
1@kG&`#(M(6$)Q6ZqZ"q8J"5VG)1`,JPV&XdHY[38))H((djSVKN0Kj21"@!Db(m
hcbd4S4E#f*+(ceS6DSQNrq-i5iXTYa$12RF$9AMb#a"[+3Bqh`R*mp-&H[8ZPHY
H9I3BNX9h@F#piQq)%Er4$"@F86C&pJjie6mDK6-BT#DNEK0MMEm#GBE8e`"[[jP
-hZrZ"h[LaldIi39bFjR&b0X'!Mpq%(H,&j)FF*KY'N"A5D[1T+rV1(Xle6q6bFK
!2#`MT&b%01-Xp-TiZ6aBcU9"r9$CKfKdZ)92+4r6K'Ze`iA6C%`A("liKpk%ifC
0$DTCc(G`[23b6UN6a,c1E4lPkG+i"YZ0p4ZHffIl[HFF3AA#e&2KKp%aj`YiV-r
V4A)dR!`2KqmBSQCCfq+%dKRELl-#,AkdkXYV$1J5Xi'3!%D3!#r$TbJ#+Sdajfd
+&a5ZDKNEZD(1Q"fiYC)5A`P3RlN,*!$$Z$XdqSEYl@f5"hbiIYAb6,6-%+j9am'
mfr3,3phL5jEIF*Y``BJ-e$Qf&F,E&*SYJBUJ%mai6R!#3pJb"eGKQ-P'p[jJ)cV
Dhjck+,F+IQ5AmmY$&dAIPfQ*8-p3B!$!jN!BiT3'l`1NAGMQ)fb5'ATLbDX-PCC
QTfkU#j98Ki9,mKe%D&"UYbbpjd$)6+`"fl+1kk9"SHk$2BNSiH,)Cq`URVB`J,V
bKY1B0JMD1[#8C13-Jqj$4blr(8*e"[fEUi5-q(mi[dBYm5jb)'!lV5f(MZPhk)J
f@XjiZ+8'Z3ZIHLCr0cJpQVcKf#0*m@Q(A`0bZkrV2D[d6BB'V,E"'$fh,0BGV1*
-$C3NGm@Qq5k#5`pHh6LcDMhN""0%-pc@GhLU&`H'a5D+EarSHj!!4`$Z@$h5p@c
&LQ+!Q*S#iBVEApVe%0RZ)@p#QJRapK8`piAV'@EMi9[AY&EMi[GqbXAHMI59$cB
I#EQNZ984YCbelPh4k-2q@qE5NY"QpGr3Ahm#d&"F3f4,HXd3+XB,J`3Hh#CZ%kA
GK)K5,88GjBNQP[0jBRmRrVM$UVJajVmD$+NNiRm@e1E,R)!Aia#S$p2U0#h0V,T
kA*j)m8qI2P(4-E1m6'28A@l''%,jQa[d(2F0e2'k#Fh`(k@UYq0rkqFr)5k1mB8
*FLee**VS`(+4+P!VLh8B"A5Nh6aGPC[P4C0i@XecI!la'(G09DLDa[,-p3XZ'T[
"i@(jVlcrMqqbrZQGjIE+b`1S8`hKDX3I(0erb,(Yr3m!$3!68(PdD'pZ3dG*8fa
KGQ8ZFR0bB`!!!!!!!!!!!!!!!%*L#BB!!!!!!!!!!!!!!!!!!!i$!!!E'J!!!"E
rrrrrFR0bBe*6483"!,8%!4He"EJF!!!"DJ!!!!!!!!$T!!!!!1Hj!!!!!!!!!!#
FBK%!#"bFka$%`)jK3#-$MT)$D1Ff$XjYq#!`4rG"lY`S&SS%KXSdcPUhE4p-*i1
S6f5+&#'ib)`1c8LKQG3c6MY#`D4%"-Tj,(Rmr@iXfL"E)3-!mZlabQDjYhiV)hq
&EFiSF11c'mINVljlhT+EaFAfI2A'Z*hLhlkbP3iLYHi)CNG''9HKS--c@&CkZX-
T`*`FGm9a1mIG@[r9fBA*cZdd,R[JTGFF04Gbcf`4HplBQ6P4AdiSU@HSDp@80"K
G+ljKr+cDScIL$MHjSXN$TMHlN!!Q(T@1*VAYGQjlFbGIQl2k2'3dh!SX!#%K$P"
jG'K[EN0(590dG@CQ!!!!!!!!!!!!!!!!!!!!!!!!!!Q'!1B"P`,H!jJ!!!!"!!!
C`3!!!!!!!!!@!!!!KJ!!!K$rrrrr!`#e"T+GY3D6+J!!!!!!!$1T!!!!!!!!'T6
rm2ri!!$$3!!!i0Xa5J!!:
--============_-1257863612==_============--