ELF>PS@ @8@tt  ?? 00 0 $$PtdQtdGNUD#w og"|| h[  N .i ]+@} I/     JY Q}^~Y   _  =  +  9;   I~2 uO R t Y l   ` h p   H Pmlx   I_`   E  F  ,       l}'  6   i  j   pc  01__gmon_start___fini__cxa_finalize_Jv_RegisterClassesPyArg_ParseTuple_Py_NoneStructSSL_set_connect_stateSSL_set_accept_stateSSL_wantPyLong_FromLongSSL_get_peer_cert_chainsk_numPyList_NewCRYPTO_add_locknew_x509sk_valueSSL_get_peer_certificatePyObject_GetAttrStringPyEval_CallObjectWithKeywordsPyString_FromStringAndSizeSSL_state_string_longPyString_FromStringSSL_set_shutdownSSL_get_shutdownPyExc_NotImplementedErrorPyErr_SetStringSSL_get_client_CA_listnew_x509namePyList_SetItemX509_NAME_dupssl_Errorexception_from_error_queueX509_NAME_freeSSL_get_cipher_listPyList_Append_pyOpenSSL_tstate_keyPyThread_delete_key_valuePyEval_SaveThreadPyThread_set_key_valueSSL_shutdownPyThread_get_key_valuePyEval_RestoreThreadPyErr_Occurred_Py_TrueStruct_Py_ZeroStructflush_error_queueBIO_ctrlPyExc_TypeErrorSSL_ctrlSSL_renegotiate_pendingssl_ZeroReturnErrorPyErr_SetNonessl_WantReadErrorssl_WantWriteErrorssl_WantX509LookupErrorERR_peek_errorPy_BuildValuessl_SysCallErrorPyErr_SetObjectPyErr_SetFromErrnoSSL_do_handshakeSSL_get_errorSSL_renegotiateBIO_test_flagsPyExc_ValueErrorBIO_writePyString_AsStringBIO_read_PyString_ResizeSSL_readSSL_writePyBuffer_ReleaseSSL_pendingSSL_get_servernamessl_Context_TypeSSL_set_SSL_CTXSSL_newSSL_set_ex_dataPyObject_AsFileDescriptorSSL_set_fdBIO_s_memBIO_newSSL_set_bioBIO_freePyArg_ParseTupleAndKeywordsPyObject_GenericGetAttrPyExc_AttributeErrorPyErr_ExceptionMatchesPyErr_ClearPyObject_GC_UnTrackSSL_freePyObject_GC_Delinit_ssl_connectionssl_Connection_TypePyType_ReadyPyModule_AddObjectssl_Connection_New_PyObject_GC_NewPyObject_GC_TrackPyTuple_GetItemSSL_CTX_callback_ctrlSSL_CTX_ctrlSSL_get_ex_dataSSL_CTX_get_cert_storenew_x509storePyCallable_CheckSSL_CTX_set_info_callbackSSL_CTX_get_timeoutSSL_CTX_set_timeoutPyImport_ImportModulePyString_TypePyExc_RuntimeErrorPyErr_FormatstrcmpSSL_CTX_add_client_CAPySequence_TuplePyTuple_Sizesk_new_nullsk_pushsk_freeSSL_CTX_set_client_CA_listSSL_CTX_set_cipher_listBIO_new_filePEM_read_bio_DHparamsDH_freeSSL_CTX_get_verify_depthSSL_CTX_get_verify_modeSSL_CTX_set_verify_depthSSL_CTX_set_verifyX509_STORE_CTX_get_ex_dataX509_STORE_CTX_get_current_certX509_STORE_CTX_get_errorX509_STORE_CTX_get_error_depthPyObject_IsTrueX509_STORE_CTX_set_errorSSL_CTX_set_session_id_contextSSL_load_client_CA_fileSSL_CTX_check_private_keySSL_CTX_use_PrivateKeySSL_CTX_use_PrivateKey_fileX509_dupX509_freeSSL_CTX_use_certificateSSL_CTX_use_certificate_fileSSL_CTX_use_certificate_chain_fileSSL_CTX_set_default_verify_pathsSSL_CTX_set_default_passwd_cbSSL_CTX_set_default_passwd_cb_userdataPyString_SizestrncpySSL_CTX_load_verify_locationsTLSv1_methodSSL_CTX_newSSL_CTX_set_ex_dataSSLv23_methodSSLv3_methodSSLv2_methodSSL_CTX_freeinit_ssl_contextssl_Context_NewPyErr_NoMemoryinitSSLPyModule_GetDictPyDict_GetItemStringPyCObject_Typecrypto_APISSL_library_initERR_load_SSL_stringsPy_InitModule4_64PyCObject_FromVoidPtrPyErr_NewExceptionPyModule_AddIntConstantPyThread_create_keyPyCObject_AsVoidPtrSSLeay_versionstrlenPyOpenSSL_LongToHexPyString_Formaterror_queue_to_listERR_get_errorERR_reason_error_stringERR_func_error_stringERR_lib_error_stringlibssl.so.10libcrypto.so.10libpython2.6.so.1.0libpthread.so.0libc.so.6_edata__bss_start_endGLIBC_2.2.5OPENSSL_1.0.1  ui 1  0!+j=  t   Лw  ( ( x  l  l    T TH  k J Ė F( U8  @ wH jX  ` eh ix   _ ` \ pi  V Ph  * Ph  I 0g  ?( e8 @ @ 6H eX @ ` 2h dx  & c   b  ݕ a   @`   _  ݔ( Y8  @ ҔH YX  ` h mx  ˖ `_  ` ^ @ O ]  ; @\  ؖ \  8( U8  @ *H PUX  ` -h [x @  [   @[ @  Z   Z   0Z ` ( X8  @ H @XX  ` h  Wx   V @ x V  f `V ` S  V   P  X po`  p @ 0 ҙ@ H X  ` ih Px  L   0  @       ݘ   Ƙ(  8 ` @ H pX  ` h x `    y @  c |  O |  = P| ` +( |8  @ H P{X  `  h zx ` ܗ x  × `x   u   u  \ s  8( q8  @ *H  qX  ` Kh psx  >  s ` x q    `      % ( >0 F8 @ UH P X ` h p kx   y                 (  0  8  @  H P X ` h p x             ! " # $ & ' ( ) * +( ,0 -8 .@ /H 0P 1X 2` 3h 4p 5x 6 7 8 9 : ; < = > ? @ A B C D E G H I J K L( 0 M8 N@ OH PP QX R` Sh Tp x V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j l( m0 n8 o@ pH qP rX s` th up vx w x z  { | } ~              ( 0 8 @ H P X ` h p x        H b MJH5:y %%Bw h?%:w h@%2w hA%*w hB%"w hC%w hD%w hE% w hF%w hGp%v hH`%v hIP%v hJ@%v hK0%v hL %v hM%v hN%v hO%v hP%v hQ%v hR%v hS%v hT%v hU%v hV%v hWp%zv hX`%rv hYP%jv hZ@%bv h[0%Zv h\ %Rv h]%Jv h^%Bv h_%:v h`%2v ha%*v hb%"v hc%v hd%v he% v hf%v hgp%u hh`%u hiP%u hj@%u hk0%u hl %u hm%u hn%u ho%u hp%u hq%u hr%u hs%u ht%u hu%u hv%u hwp%zu hx`%ru hyP%ju hz@%bu h{0%Zu h| %Ru h}%Ju h~%Bu h%:u h%2u h%*u h%"u h%u h%u h% u h%u hp%t h`%t hP%t h@%t h0%t h %t h%t h%t h%t h%t h%t h%t h%t h%t h%t h%t hp%zt h`%rt hPHHn HtHÐU= HATSubH=n t H=l H{l L%ll H} L)HHH9s DHH] AHR H9r> [A\fH=(l UHtHn HtH=l @ÐH\$Hl$HLd$HHHIHt#HՅtH$Hl$Ld$HH{ Ht LՅuH{01HtLHH$Hl$Ld$HSHGHHtHHHHt|HC HCHtHHHHtLHC0HC HtHHHHu H{0HGP0HC0HC81HC@[DH{ HGP0HHGP0tSHHH5>1HHT$1t0HS0HHHHt'HD$HHD$HC0Hl HH[@H{0HGP0SHHH5i>11t HC0HHC0[DSHHH5G>11t HCHHC[DSHHH5$>1S1u[ÐH{H l H[f.SHHH5=11u[ÐH{Hk H[f.SHHH5=1u1[H{O[1@SHHH5=1u1[H{[1@AU1ATUSHHH5Y=HJuE1HL[]A\A]DH{HIH1HcII5@HxH =AHID$H,HLgHH9yHj LH(HHHuI$HHI$;ID$LE1P0+fDL%Ij I$HL[]A\A]fDSHHH5n<131҅uH[H{HtHi H[HDHi HH[UHH5<SHH H1Ht1HHHHHHtH[]f.HSHHD$R0HD$H[]DH\$Hl$HLd$H(IH H5;oH1Ht&I|$1HHHHHHtH\$Hl$Ld$ H(HSHHD$R0HD$f.H\$Hl$HLd$H(IH H5;H1HuH\$Hl$Ld$ H(fI|$1HHaHHHHuHSHHD$R0HD$@SHHH5:1C1҅t0HCH0HtHcwH[Hg HH[SHHH5c:11҅t8HCH0tH [HVfDHg HH[SHHH5:11҅t8HCH0tH [HǤfDHAg HH[SHHH5913u1[H{[HVfffff.SHHH591HHT$ 1tH{t$ Hf HH[fff.SHHH5N91u1[H{[Hcfffff.HHf H5:H81Hffffff.H\$HHH58Hl$Ld$Ll$Lt$1L|$H8u.E1LH\$Hl$Ld$Ll$ Lt$(L|$0H8DH{HIu/H\$Hl$1Ld$Ll$ Lt$(L|$0H8fDH8HcAHIvEm1?@HHe HHtoHcHLA9*LkHcHIuI$HHI$u ID$LP0He E1H8]LI$HHI$ID$LE1P0HEHHHEuHEHP0AUIHH5O71ATE1USHwuHL[]A\A]D11I f.I}HtHmLHHHHHHuHCHP0fff.UHHH561SH1uH[]HIc ;;HH}; HHu7|>tH!c HH[]fDHb HH[]fD[1nHUc H81XfDHH@t%H811ҾHb HHHb H55H81fDSHHH551u1[H{11Ҿ [HDSHHH551HHT$z1t H{HL$1Ҿ7H>b HH[@SHHH5e513u1[H{o[Hcvfffff.SHvHb H8H[ZfHu6Hc HDHa H8H[@Ha H8H[@Haa H8H[l@HYa H8H[T@T$HT$\xfH4H=41LHHt!HH:a H8HHHHt H[DHCHH@0H[fDH` H8H[,@H\$HHH54Hl$Ld$1H1uH$Hl$Ld$HfDH-` }a}HH{}AHUpHu#H{Du#H` HfD31s@H{D1Zff.Hl$HHH5H3H\$1Hu1H\$Hl$HfH9_ ;;HH};HHuHcH\$Hl$Hfc|fDSHtNH uMHuLHtKHl^ H5d2[H8@H^ [H8HH^ [H8H^ [H8H!^ H5/2[H8AfUSHHHH{8t]HL$ H52H1o1uH[]H{8T$ H4$'`Hu3~?HcH[]H] H50H8H1[]Ð1H{81낐H\$HHl$H(H{@Ht-HT$ H5i11u>1H\$Hl$ H(DH)] H5s0H8*1H\$Hl$ H(ÐHct$ 1Htl$ HH$H{@HƉbHu%~K;l$ tHcHxAH$gH$HHHHu H<$HGP01:H{@H$HHHHH<$HGP01fH\$Hl$HLd$H(HHL$HT$ H5A01u1H\$Hl$Ld$ H(DHct$ 1HtH-[ H$}$}HtH<$Dd$ H{DH}A|HHt2H$HHHHu H<$HGP01OH{Du$D;d$ u H$'IcH-yH{D~H$HHHHH<$HGP01DAW1AVAUATUSHHH5.HhHL$\H.1L4$Dl$L%Z IcE)IEA<$HA<$HH{DLA<$A1HHuoH{Dtt tuH{DzH1Hh[]A\A]A^A_ÐHHAZ HHh[]A\A]A^A_fDK뷐Hl$H\$HLd$Ll$HLt$HH5-HL$\H11u,H\$`Hl$hLd$pLl$xL$HĈL%IY L,$Lt$A<$ A<$HH}LDA<$AH{HHu!H}Du!IcX@S1H@H}D"1/ff.SHHH5,1u1[H{/[HcFfffff.SHHH5,11҅uH[H{1-Ht[HHyX HSHHH5f,1HHMX HL$c1u H[DHD$HHD$H{HpH{HD$HCHHHHtHW HH[HGP0USHHH-W HHwHHW HGHG@HG8HEHo0HGHG(Hx1HHCH1H{ H9t xwH{HH[]fHHC8HHs8HC@HtHtH{HuLH$Hl$Ld$H@H} HHl$H$Ld$HDSHH{HtqHH[H\$Hl$HH;U HHxHH5)HHt1H\$Hl$HÐHH5g)HHrH\$Hl$HH\$Hl$HH(H=T HhHuH\$Hl$ H(@HHHHtHHD$pHD$H\$Hl$ H(@H\$Hl$HLd$Ll$H(H IH5(HHu"E1LH\$Hl$Ld$Ll$ H(1LHCIHHHHMt1LHLIHHI$HHI$H}L2HIEHHIEHH}hH='1HHIHEHHHEtXHHHHHCHP0fDHCHP0,ID$LP0ZIELP0oHEHP0HHHHHCHE1P0H\$Hl$HLd$HHHIHt#HՅtH$Hl$Ld$HH{ Ht LՅuH{(Ht LՅuH{0Ht LՅuH{@1HtLHH$Hl$Ld$Hffff.SHGHHtHHHHHC HCHtHHHHHC(HC HtHHHHtlHC0HC(HtHHHHt1uH[]H-@ }t}HIT$ H4$H{(}^HHuft&H@ HH[]@1H@ H81dfUHH=SHH1Ht4Hz HHtPH}1HHtH1@ HH[]fDHHA@ H81DH? H5tH81fDSHH=g0H1HtHrH{tH? H[H? H81[ffff.SHHH51HHL$ HD$ o1uH[fH{T$ H4$tH$? HH[f.H9? H81ffff.SHHH51HHT$1u H[@H{Ht$tH> HH[DH> H81DSHHH5M11u[ÐH{tHL> H[fDHi> H81[ffff.U1SHHH5HH-> HT$HHD$H,$1u H[]H|$VHSHHHHtcHD$H5HHD$H{HCHS HHHHt>H$HHH$H{HC jHEHH[]H{HGP0H{ HGP0H< H5 H811H\$Hl$HLd$Ll$ILt$H(H< AA;aHHM H=DD1H}I1HHIHHIHt.HtaHEHUHHHUtoE1;M;HDH$Hl$Ld$Ll$Lt$ H(fDHEHHHEuHEHE1P0IFLP0_HE1P0DHD9HDNAIcHLHEHHHEJHEHP0;SHHH51HHT$HHD$H$v1uH[H{H$Ht$tH3; HH[fHI; H81ffff.SH)Hi: H51H8H[u}HHHCH: H1HHCHHC(HHC0HHC8HHC HHC@H{cH{1ɺ!HHCH[fqfDafDQfDH): 1H8wf.SH q HHHHH1LD$ pu 1H[@H0Htt$ HSHH{vHH[5ffff.H\$Hl$HH39 HH8xLHH5{HHNx2HH5IHH4H\$Hl$H1H\$Hl$Hffffff.SH=8 HtHHH?H[f[rUH= SHHt-H9H5HHtH8 H9PTH=8 HHH8 H H^8 HH H HPHd8 HLGHhs H5at H=1AտHHH7 H=t 1Ht H7 Ht OHtHH5HHľH=114H-7 HHEtHH5HHU荾tH[]f.HuH=y1H77 HHtHH5dHHAuHuH=Z1H 7 HHtHH5EHHuHuH=51lH6 HHPHH5HHý2HuH=81)HZ6 HH HH5HH耽HuH=1HO6 HHHH5HH=H5HH5H譿H5H虿H5H腿H51HtH5H`H5HLH5H8H5H$H5HH5HH51HH5H׾H5HþH5wH课H5oH蛾H5tH臾H5HsH5H_H5R HKH5\@H7H5bH#H5jHH5dHH5DHH5U HӽH5H@H追H5PH諽H5P1H蚽H5P1H艽H5P HuH5@HaH5>HMH5: H9H59@H%H52HH5,HH5*HH5% HռH5HH50H譼H5@H虼H5 H腼H5 0HqH5 H]H5 HIH5 H5H5 H!H5 @H H5 @HH5 @HH5  HѻH5  H轻H5 H詻H5 H蕻H5 H聻H5 HmH5 1H\H5 HHH5 H4H5 H H5 H H5 _HH蠹HpcH0 DHH0 HSHH5n 1HHT$ ͺ1t|$ 輽HH!HH6H[ÐUHH==1SH葽HHt`H= 譻HHtHHHt H[]fDHEHHHEu HEHP0HtHHHHt 1DHCHP01f.AU1ATUSH'H@苼HItkLLIиLH5H= HHL1讼HHH@HEHHHEuHEHP0 HIuHH[]A\A]fHHHHHtHHPHHR0Hffffff.H\$Hl$HH袺HHHHHHHtH\$Hl$HfDHCHHl$H\$H@0HUHSHH, HtH, HHHuH[ÐHOHO:set_app_data:get_app_data:get_context:set_connect_state:set_accept_state:want_write:want_read:get_peer_cert_chainOpenSSL/ssl/connection.c:get_peer_certificateconnect_exconnect:master_key:client_random:server_random:state_stringi:set_shutdown:get_shutdown:get_client_ca_list:get_cipher_list:shutdownConnection sock was not None:total_renegotiationss:set_tlsext_host_name:renegotiate_pendingUnexpected EOF(is):do_handshake:renegotiateBIO_should_io_specialunknown bio failures#|i:bio_writei:bio_readi|i:recvs*|i:sendalls*|i:send:pending:get_servernameO!:set_contextO!O:ConnectionConnectionTypeaccept(OO)OpenSSL.SSL.Connectionsocketbio_shutdownmakefilesock_shutdownCannot make file object of SSL.Connectionnn(O)l:set_options:get_cert_storeO:set_info_callbackexpected PyCallable(Oii):get_timeoutl:set_timeoutOpenSSL.crypto__name__X509O!:add_client_caX509NameO:set_client_ca_listclient CA list is too longs:set_cipher_lists:load_tmp_dh:get_verify_depth:get_verify_modei:set_verify_depthiO:set_verify(OOiii)s#:set_session_ids:load_client_ca:check_privatekeyPKeyO!:use_privatekeys|i:use_privatekey_fileO!:add_extra_chain_certX509_dup failedO!:use_certificates|i:use_certificate_files:use_certificate_chain_file:set_default_verify_pathsO|O:set_passwd_cb(iiO)z|z:load_verify_locationsNo such protocoli:ContextContextTypeOpenSSL.SSL.ContextmethodO:set_tlsext_servername_callbackOpenSSL.crypto's '%s' attribute has been modifiedclient CAs must be X509Name objects, not %s objectsset_tlsext_servername_callback_C_APISSLOpenSSL.SSL.ErrorOpenSSL.SSL.ZeroReturnErrorOpenSSL.SSL.WantReadErrorOpenSSL.SSL.WantWriteErrorWantX509LookupErrorOpenSSL.SSL.SysCallErrorSSLv2_METHODSSLv3_METHODSSLv23_METHODTLSv1_METHODVERIFY_NONEVERIFY_PEERVERIFY_FAIL_IF_NO_PEER_CERTVERIFY_CLIENT_ONCEFILETYPE_PEMFILETYPE_ASN1OP_SINGLE_DH_USEOP_EPHEMERAL_RSAOP_NO_SSLv2OP_NO_SSLv3OP_NO_TLSv1OP_MICROSOFT_SESS_ID_BUGOP_NETSCAPE_CHALLENGE_BUGOP_MICROSOFT_BIG_SSLV3_BUFFEROP_MSIE_SSLV2_RSA_PADDINGOP_SSLEAY_080_CLIENT_DH_BUGOP_TLS_D5_BUGOP_TLS_BLOCK_PADDING_BUGOP_ALLOP_CIPHER_SERVER_PREFERENCEOP_TLS_ROLLBACK_BUGOP_PKCS1_CHECK_1OP_PKCS1_CHECK_2OP_NETSCAPE_CA_DN_BUGOP_NO_QUERY_MTUOP_COOKIE_EXCHANGEOP_NO_TICKETSENT_SHUTDOWNRECEIVED_SHUTDOWNSSL_ST_CONNECTSSL_ST_ACCEPTSSL_ST_MASKSSL_ST_INITSSL_ST_BEFORESSL_ST_OKSSL_ST_RENEGOTIATESSL_CB_LOOPSSL_CB_EXITSSL_CB_READSSL_CB_WRITESSL_CB_ALERTSSL_CB_READ_ALERTSSL_CB_WRITE_ALERTSSL_CB_ACCEPT_LOOPSSL_CB_ACCEPT_EXITSSL_CB_CONNECT_LOOPSSL_CB_CONNECT_EXITSSL_CB_HANDSHAKE_STARTSSL_CB_HANDSHAKE_DONESSLEAY_VERSIONSSLEAY_CFLAGSSSLEAY_BUILT_ONSSLEAY_PLATFORMSSLEAY_DIROPENSSL_VERSION_NUMBERi:SSLeay_versionOpenSSL.SSL.WantX509LookupErrorOP_NETSCAPE_REUSE_CIPHER_CHANGE_BUGOP_SSLREF2_REUSE_CERT_TYPE_BUGOP_DONT_INSERT_EMPTY_FRAGMENTSOP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG%x(sss);^4<d\Ե4t$4DT$DDdT$TLtĿT4TT<Dd< d   4< d d 4$ 4D l t 4 4 d $ t < d d $ d LT|$4,dd<tt4<dD<\zRx $MI j H uDpA F $dmAS F AE H+AiX+Aih6A] B U6A] B U 8A[ D J,Ȳ8A[ D JLLBDA A(Q0P (D ABBF (D ABB$XA^ A ^ J O4kAKD0s AAK XAA$(MI0V D $$MI0p J LPAs L Ol(XAu R OhXAu R O2A[ D JȵDAS nA2A[ D J !D\,$0Hi@q F u K <TBQD A(D0M (D ABBF DAPD Q AAH W AAG O AAG JDh D ȸ;A[ D SLAS vA<2A[ D J\\8,AD S AG f AI N AI N AI N AI a AF O AH NA$HZ _ G $HU Y J R N 4 HAS L H H H H H H ODDAAJ0i AAI m AAA Z CAB $(.HI0q F f B $0[MI0t F dhBDB B(A0A8Q 8A0A(B BBBB W 8A0A(B BBBG $D MYA I l2A[ D J$8MA^ A Q O ,`AS ] AF F AA 4AAG  AAC C AAA $oA[0f AE $D{MI } E ^lH(Ab$X}N @ B i$lMD0b E s$MN0y D $MI j H Y,A F $LmAS F AE t0+Ai$@AS m AF 4BCA D0  CABF @IAS sA$ pMA^ A [ E ,< AS V AE R AE $l (WD@ N  2A[ D J BAS lA$ PHTN0k K $ N0{ G p$ PSAv I R$D M[PH H ,l kAS V AE a AF $ MI0q I  `2A[ D J 2A[ D J DAS nA,$ AS a AJ S AD ,T pH_@  F , sAS Y AB d AK  MAS wA$ PSA] B Y G R4 ADG0l AAF e AAI 44 ACQ0a AAH a AAE ,l AKD G AAG  SAv I R, HAS a AJ d AK , kAS V AE a AF $ SA] B Y G R4D ACQ0m AAD  DAD $| yMMI0 G , PAS j AA e AJ $ Dp D  J $ YA[ V AE $#A]$DN Y I PlX6Al C A,xAHD & AAK HAP uA,(AMD u AAG 4 BDA A(D0(D ABBD1DX D O$d cN s G Y(      I oP K  p;# o#oo!o0 IIIIIIJJ.J>JNJ^JnJ~JJJJJJJJJKK.K>KNK^KnK~KKKKKKKKKLL.L>LNL^LnL~LLLLLLLLLMM.M>MNM^MnM~MMMMMMMMMNN.N>NNN^NnN~NNNNNNNNNOO.O>ONO^OnO~OOOOOOOOOPP.P>PNP^PnP~PPPPPPPPPQQ.Q>QNQ^QnQ~QQQQQQQQQRR.R>RNR^RnR~RRRRRRRRRSS.S>S Connection(context, socket) -> Connection instance Create a new Connection object, using the given OpenSSL.SSL.Context instance and socket. @param context: An SSL Context to use for this connection @param socket: The socket to use for transport layer Get session context @return: A Context object Switch this connection to a new session context @param context: A L{Context} instance giving the new session context to use. Retrieve the servername extension value if provided in the client hello message, or None if there wasn't one. @return: A byte string giving the server name or C{None}. Set the value of the servername extension to send in the client hello. @param name: A byte string giving the name. Get the number of bytes that can be safely read from the connection @return: The number of bytes available in the receive buffer. Send data on the connection. NOTE: If you get one of the WantRead, WantWrite or WantX509Lookup exceptions on this, you have to call the method again with the SAME buffer. @param buf: The string to send @param flags: (optional) Included for compatibility with the socket API, the value is ignored @return: The number of bytes written Send "all" data on the connection. This calls send() repeatedly until all data is sent. If an error occurs, it's impossible to tell how much data has been sent. @param buf: The string to send @param flags: (optional) Included for compatibility with the socket API, the value is ignored @return: The number of bytes written Receive data on the connection. NOTE: If you get one of the WantRead, WantWrite or WantX509Lookup exceptions on this, you have to call the method again with the SAME buffer. @param bufsiz: The maximum number of bytes to read @param flags: (optional) Included for compatibility with the socket API, the value is ignored @return: The string read from the Connection When using non-socket connections this function reads the "dirty" data that would have traveled away on the network. @param bufsiz: The maximum number of bytes to read @return: The string read. When using non-socket connections this function sends "dirty" data that would have traveled in on the network. @param buf: The string to put into the memory BIO. @return: The number of bytes written Renegotiate the session @return: True if the renegotiation can be started, false otherwise Perform an SSL handshake (usually called after renegotiate() or one of set_*_state()). This can raise the same exceptions as send and recv. @return: None. Check if there's a renegotiation in progress, it will return false once a renegotiation is finished. @return: Whether there's a renegotiation in progress Find out the total number of renegotiations. @return: The number of renegotiations. Connect to remote host and set up client-side SSL @param addr: A remote address @return: What the socket's connect method returns Connect to remote host and set up client-side SSL. Note that if the socket's connect_ex method doesn't return 0, SSL won't be initialized. @param addr: A remove address @return: What the socket's connect_ex method returns Accept incoming connection and set up SSL on it @return: A (conn,addr) pair where conn is a Connection and addr is an address When using non-socket connections this function signals end of data on the input for this connection. @return: None Send closure alert @return: True if the shutdown completed successfully (i.e. both sides have sent closure alerts), false otherwise (i.e. you have to wait for a ZeroReturnError on a recv() method call Get the session cipher list @return: A list of cipher strings Get CAs whose certificates are suggested for client authentication. @return: If this is a server connection, a list of X509Names representing the acceptable CAs as set by L{OpenSSL.SSL.Context.set_client_ca_list} or L{OpenSSL.SSL.Context.add_client_ca}. If this is a client connection, the list of such X509Names sent by the server, or an empty list if that has not yet happened. The makefile() method is not implemented, since there is no dup semantics for SSL connections @raise NotImplementedError Get application data @return: The application data Set application data @param data - The application data @return: None Get shutdown state @return: The shutdown state, a bitvector of SENT_SHUTDOWN, RECEIVED_SHUTDOWN. Set shutdown state @param state - bitvector of SENT_SHUTDOWN, RECEIVED_SHUTDOWN. @return: None Get a verbose state description @return: A string representing the state Get a copy of the server hello nonce. @return: A string representing the state Get a copy of the client hello nonce. @return: A string representing the state Get a copy of the master key. @return: A string representing the state See shutdown(2) @return: What the socket's shutdown() method returns Retrieve the other side's certificate (if any) @return: The peer's certificate Retrieve the other side's certificate (if any) @return: A list of X509 instances giving the peer's certificate chain, or None if it does not have one. Checks if more data has to be read from the transport layer to complete an operation. @return: True iff more data has to be read Checks if there is data to write to the transport layer to complete an operation. @return: True iff there is data to write Set the connection to work in server mode. The handshake will be handled automatically by read/write. @return: None Set the connection to work in client mode. The handshake will be handled automatically by read/write. @return: None Hl lA TT kJĖFU wj ei _` \pi VPh *Ph I0g ?e@ 6e@ 2d &c b ݕa @` _ ݔY ҔY m ˖`_ `^@ O] ;@\ ؖ\ 8U *PU -[@ [ @[@ Z Z 0Z` X @X W V@ xV f`V` S V Context(method) -> Context instance OpenSSL.SSL.Context instances define the parameters for setting up new SSL connections. @param method: One of SSLv2_METHOD, SSLv3_METHOD, SSLv23_METHOD, or TLSv1_METHOD. Let SSL know where we can find trusted certificates for the certificate chain @param cafile: In which file we can find the certificates @param capath: In which directory we can find the certificates @return: None Set the passphrase callback @param callback: The Python callback to use @param userdata: (optional) A Python object which will be given as argument to the callback @return: None Use the platform-specific CA certificate locations @return: None Load a certificate chain from a file @param certfile: The name of the certificate chain file @return: None Load a certificate from a file @param certfile: The name of the certificate file @param filetype: (optional) The encoding of the file, default is PEM @return: None Load a certificate from a X509 object @param cert: The X509 object @return: None Add certificate to chain @param certobj: The X509 certificate object to add to the chain @return: None Load a private key from a file @param keyfile: The name of the key file @param filetype: (optional) The encoding of the file, default is PEM @return: None Load a private key from a PKey object @param pkey: The PKey object @return: None Check that the private key and certificate match up @return: None (raises an exception if something's wrong) Load the trusted certificates that will be sent to the client (basically telling the client "These are the guys I trust"). Does not actually imply any of the certificates are trusted; that must be configured separately. @param cafile: The name of the certificates file @return: None Set the session identifier, this is needed if you want to do session resumption (which, ironically, isn't implemented yet) @param buf: A Python object that can be safely converted to a string @returns: None Set the verify mode and verify callback @param mode: The verify mode, this is either VERIFY_NONE or VERIFY_PEER combined with possible other flags @param callback: The Python callback to use @return: None See SSL_CTX_set_verify(3SSL) for further details. Set the verify depth @param depth: An integer specifying the verify depth @return: None Get the verify mode @return: The verify mode Get the verify depth @return: The verify depth Load parameters for Ephemeral Diffie-Hellman @param dhfile: The file to load EDH parameters from @return: None Change the cipher list @param cipher_list: A cipher list, see ciphers(1) @return: None Set the list of preferred client certificate signers for this server context. This list of certificate authorities will be sent to the client when the server requests a client certificate. @param certificate_authorities: a sequence of X509Names. @return: None Add the CA certificate to the list of preferred signers for this context. The list of certificate authorities will be sent to the client when the server requests a client certificate. @param certificate_authority: certificate authority's X509 certificate. @return: None Set session timeout @param timeout: The timeout in seconds @return: The previous session timeout Get the session timeout @return: The session timeout Set the info callback @param callback: The Python callback to use @return: None Get the application data (supplied via set_app_data()) @return: The application data Set the application data (will be returned from get_app_data()) @param data: Any Python object @return: None Get the certificate store for the context @return: A X509Store object Add options. Options set before are not cleared! @param options: The options to add. @return: The new option bitmask. Specify a callback function to be called when clients specify a server name. @param callback: The callback function. It will be invoked with one argument, the Connection instance. PE po p@ ҙ iP L 0@   ݘ Ƙ ` p `  y@ c| O| =P|` +| P{ z` ܗx ×`x u u \s 8q * q Kps > s` xq Main file of the SSL sub module. See the file RATIONALE for a short explanation of why this module was written. Return a string describing the version of OpenSSL in use. @param type: One of the SSLEAY_ constants defined in this module. ` SSL.so.debug[y.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.ctors.dtors.jcr.data.rel.ro.dynamic.got.got.plt.data.bss.gnu_debuglink $o( 0PPK 8o!!zEo##pT##^;;p hIIcII nPSPS@tz((    ( (0 0   `7   4