From 4253ba4773018856755587a59c3ec24c85b8da9d Mon Sep 17 00:00:00 2001 From: hmandala Date: Thu, 14 Mar 2013 10:11:17 -0400 Subject: [PATCH] changed ssl implementation --- sleepymongoose/handlers.pyc | Bin 0 -> 15530 bytes sleepymongoose/httpd.py | 15 +++------------ 2 files changed, 3 insertions(+), 12 deletions(-) create mode 100644 sleepymongoose/handlers.pyc diff --git a/sleepymongoose/handlers.pyc b/sleepymongoose/handlers.pyc new file mode 100644 index 0000000000000000000000000000000000000000..45570f34fe430208d1a6284af22607f88777bdfa GIT binary patch literal 15530 zcmdU0U2GiJb-uH^Tyj@jk|HTejHGx>OV-+9D5*{9nvw0;`m>stc4nPOp`xybyF>1f zyF1Idvl3~OO&b|STLf?s^q~d%R-g|>3&iO|fIb#2&=zQcJhedkQZ!FR3k2v(9}1-3 zckayW@>e!Or75Mod*}Yox#xW6=ibf!SE=}y|MdD-YbyR5!1tH%(f^2~j{lZwD%G;o zlBFy@XH+wzT3NM}Rjr&_%Bj|XS{g8QS=G#|)}UG%RIMSkG^APuwNy~8qFO4N7CF^C zp<2UgY1ljusAfqmmDJXlOoqo1wKSscw$H1aH>%c)D*OXwSu!&!$5`36)V+FMtza>O z>O-X-EA@?~ld3)>MTN9zT-A$GbRsR9Q1t;-DG%e_{GZ^jY#|qAkyPGZEb}`mBDo&4 z+g>g5gLYKFo>ch7mb_J6@RrGx*X|d7zSZ9 zhT^w7o+(P&mQeV5HwqlDW+pbv;?!$8Xji+D-&~Bi=(mFQYVfApt~b3f-7>D?4Se(r z-o{hhsro7I54H>YgB=8sutg}u?$xvE!;D(Wt9nk#2T2k(7*ZfAGX-gh#`q5cW2=jO zB|}njqOSxLN1NfklA@H9`bw|`Xfx7RGAt#deI+F+0VANMibjw}$ZuwrbUWtOxUG<{T{+db@ zdTvYPqv^F}!qDq9-I^D1N!55rsR*<*E_0PKyY`wZvgQ_jGjiR3{YQQxO}-8)Z8YQx$p}wUAg*FjhH}M^0kCT zHju$?V_&${;4JWhrP@*mzFD)>dR~Q>$wSDa<#c6hio8PJ5%GI$S>T?#?K3I|5`Y{l zU>g8kH3quMJ@P`*{Td!Bf;5W`w^4Se?M07*aJ?G&Ee{m*$;f3ww-9$RXnPKk#vv~_ zT)x9f8O1rxN0MCV-wl01wH|jI|4wkSDtIg57qH+Qiu5EBWesB^My(T>tTkm#SOeIe zR4%!4A^Kk+LqZD)DSAR~N?ca9p-k$6P@rT50wWGAKV-9vF>e&HQ=Cya)@;T zp~3PR%z|no2-c0Uz@?&4NE>;rj-j#ZhsRIT5lp39)xIT=G@4d{$dGjs@{`N#2P};S zTjxkPgGZny7-=mFY8V`P9ykOgHjv=Z4dRfYCa5tjiYfPs)( zq%CbKki{)rbUu$%UqSN0Ot3y+Ilndx3Tf$*wi<^O4*Rr9qGJ(FYbK8x1 z#t!ddJb5z0MJ54uxlt6#2)Ep(_IgMv>;l#2oJBi_uy*`gPyQ2e!du)&KGtMe>l^@c z1dw?KDYl+Cz&GHx2+tXa6Su5iS7k+48D=04sGYpphSg!(yc&y9vguSq5G_Ee>^zFW z7&K(S3$PqbC!d+h)_INtRGkK_vQl`8Og02%cLz)c@PwNC(}cZ%uxOuEQ>T;Ja$qs+ zd#n$Cm^75al)3J0!%`gr_7((-|9ki9P?uHL4EzFd*NTeG!SW~6+Avu@nX61-G%8iU zjO>&66Fgw|l%yR6wipdyRDwXQRTu84HN4uoo$&OsbekBO^wZ^Rd$g>-6-F9u=^j8}Zp4|@YaJ%I;SGsNS zG-vJQZe;6MF-o^FH#cW{F!Z+~D5up++J?)x0{S(#Y`598Lm8wUJesrbdY3}aUh&&r zlGn2sf~{C+H#}6MFG?%viuplnvl6!XPpmFpnqf!92ig^NV6E3!*(%@Yh~c-vmIx z0}~7a5)r|Wig`Fitb=g?+_|=K0rml0I~am6-|_^*6dgo+i4o?|ZV_`@v+$x`xL7y# z6-{ih>Zo?`X=yREoJ;ILadF5K;=LVBS?4Aj-(X{Wj@J#MC|5P~S66=r*_g5+%b4KcX9qJtUB0XN`M|9m2*A38KU9hvEHKvM!W} zB7xqJLEDp3T-Z~LZLbLG>x+2Hq8KJ;Xj;@+*hGo2Vi&tzt6mU(w#-dJzCxX0aJZUU&c$OQsQ=D z!L%d4=0;v>&$yAh>}qc=ZRL>7^e-VvSaYu&L1EPo7owleO4FY^d}7#MiRdDp2CZ3- z-H$E=hn#zq`;oLcWQdNdH9|G@qlQS@>>onU9lq*5szZ+K6$GBSa80a9D13FtXsR!x z%=rovu>d7%K+myn3{QkpLKRO?R!>Jy(MYZKujgYF=ouu57>+Vn0E;b2OURWnWqia~ zV9J2WO@_fUJL`?Lk?9eI>UUr0CV zIS(2lqz}n94c|x_7JChgqIwNnAoexQ!1M`m>&)Dk1#@8tz=X=};5-0}#~HwIGH5YF z;+l6K-nDo%K|}NIewvfBc)ZT~cfCIY;QZtb&HX zvyC70l@|I+?{34{!_rCy!SKQu&%Ek;890KZ3C9LKF;4hihDPA9S}W1MWZx0IlUhZq zQ8kZ)2OK%f*T)%oT^qxY;zELqIQhXV)+Yorzn#I6k9h;KP8yr)y?`caRmNNlviKzN0d zrZ4RsMtgVLJ1|PZE#q?@g3(_B}CIPJ!Ib4J+1|b8@V4V#nPzJ z4i9~o&Vq3+S9rRi#gA?JE#DkJ=yl)3>U0NQ6;-!JfKrYGi9rJJo%@ zfP~>$RqKZ6rzI}y*L`t%2|>$lRBKeV|Gp>mcMgDG@xqJwks?Q}eN;eapY z(0_LBB~6xtpxN^(oNus_4w5+);Bp$SmM|6b+Jvl}0`lU4SIuIpe%*PAW#^Gp-|9P0 ztX6T7(CJ3i_=U>^)K8!aoC@2$%j9cJzK%p*#Y|{kfF#pVx8v8Vq_k{@?2PkG_F+`Z zd4S~j{U5qERg(7~kkKnh_Ue-}qE#3H_zXUSnccb5@_afoo0jKb0G2F92~KCmGPX6J z9hDQMF&twQt+BYh=p-^jY8d_v9`+iB2k4~Ow}Mso${zK?LnMF_3^-~N!g*fK9tF{3 ztpdaz6qE4Rq_en2si%c1Sb)=1G6m5UsS5a5PN*@?p>Mi!tZQE7r)ic{ax9IzIY8kgUpi_tq7)`GT;r zcqs^_tOF*$Am`V{n}C9r(-v!ESlzwb{vZtptj953fF4|qUN{Hl0QhUYed z>1qqVr7ENEj8NE*5oO^)0cUw5QEb7=@q;oWXM6R{%j8c+kX0^^sO%~0EaI}yA}Tv- zT|`>S#3vlYRFX@W@-=kYi>U|1tB7L2uPnJMKJPI0=b_H_k#>G;;RB+-BPeSeZ}4!1 z6N$}Bhgu?vV86Wv{}04s$DZ%9_WzYPI>?!+D~`1e(Y6CW!Eld#cQM8R$1*2v@PfJq zcn+Uoj7^+-pfv13vCfl&kfK_HWr(5^v7wvrIZZ@5f|@R2kAd58d?VYn>p?9oG{8;U z;Sl`9T?^^fgYG?Hu>V{0kbs8w(P9lB@(L|qYX~Ucn@5oBqTLlwGJy{>l8k49sbY4O zNATRI15)qWn0E|!nFE#gkdw}aMsk|mba6Ny57v|2o_vzgpP)f*ut|r>29ujej$c@5 zPR4utHf5ArKhYtHPi}0e{&N*tQD>l0&f;tZVX}SdgdhpY#q|utn8EgRcwc02k0Kyp zexnS~fbLCBh4(4IJhw(KIJSvGfItAkL0tHUFC&gI-!J*ofb95AUrPyqvgN+Oh+r`fnZa~|undW0G8R>V#A2|r7@8Rtpq4lQa=V>6EsIYJ zxpB9jPskO|P`?01Ohj!@G$Dc8#A^rSQn=dQqhNVWUwU#!(=zUc`%lnXV!gC*p6nYF z{L2_+Pw4Yda5mJ8XbJ6cjr%3fSYdLFZufzA-$8`{vpB|^oPUeS`$(P=I-7<61|i`Z zW;p_#fyX@c7Nm~zJ@`12xzIZkOl_z|?}V%GF$QbN&Bg7K^X>CAs#+CXTY zWthBDrZ=gHtf`EO_iA^-pyp|f%T{u=X|D($aZ9Ue1~^oLCDt6D?`t`bzHhEGWw8nb ztVDQPUepNcec~b7LW0D!hUpwh*I7v)lv&f~ODynFJP0|iW0!ZsuIHR&Io&W5+hw$% z)iA+t-1_0|M@J&Jys#wBhd3L!>s7^NT;At5_rZ?VU%!sdqDfbL#JA%(xLjwD_jIti zap0QQm#8XC@c8)k8^<==@wXKDMLZ_z&8RYltx6E}e5NRta7n^gy_D*$h|d_5-e~3& zas}KqW}kd!A~Tp-G%?9wgfZZo;V zgqH{$he?A8q)w)w2;mR%oX7^RT<0@|(b3VuWT99X z89zUsA0I+`e*CTR&kj$GKVKLgpB+CZ%){4}Kakw~w&*!z5GLYpi1$FYM1yaNf4Ix@EVSeUIlpju3c}Xuqq+M65lfC60$i1R-zq^ZC z$I87_;3cl1$Gv5ukLd7a-0`2ohw8)p#ILg@7tPIYxyS}`I2?^27gx>61#R8?p_d#0 z$f1BlE;*(-Dt?aL8PgJ*;7*G_%eg5(Of8~N`z;(y@V648I*b{?)%MutI0+%|d(9}@ fS84p{Gf2kptA-g-)>)jf;+!=z@e}p$6UF}p*oR`6 literal 0 HcmV?d00001 diff --git a/sleepymongoose/httpd.py b/sleepymongoose/httpd.py index 53629d5..701b367 100644 --- a/sleepymongoose/httpd.py +++ b/sleepymongoose/httpd.py @@ -16,10 +16,7 @@ from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer from handlers import MongoHandler -try: - from OpenSSL import SSL -except ImportError: - pass +import ssl import os.path, socket import urlparse @@ -45,15 +42,9 @@ class MongoServer(HTTPServer): pem = None def __init__(self, server_address, HandlerClass): - BaseServer.__init__(self, server_address, HandlerClass) - ctx = SSL.Context(SSL.SSLv23_METHOD) - fpem = MongoServer.pem - ctx.use_privatekey_file(fpem) - ctx.use_certificate_file(fpem) - - self.socket = SSL.Connection(ctx, socket.socket(self.address_family, - self.socket_type)) + BaseServer.__init__(self, server_address, HandlerClass) + self.socket = ssl.SSLSocket(sock=socket.socket(self.address_family,self.socket_type), ssl_version=ssl.PROTOCOL_SSLv23, certfile=fpem, keyfile=fpem, server_side=True) self.server_bind() self.server_activate()