Esempio n. 1
0
 def onSSLConnect( err ) :
     global logger
     if err is not None :
         logger.error( 'ssl connect err=%s' % str(err) )
         sslAbort( sslConn )
         op.notify( None )
         return
     try :
         peerCert = sslConn.getPeerCertificate()
         peerKey = RSAKey()
         peerKey.fromPKey_PublicKey(peerCert.get_pubkey())
         CN = peerCert.get_subject().CN
         if CN.count('@'):
             peerName, peerKeyID = CN.split('@')
         else:
             peerName, peerKeyID = CN, ''
     except (SSLError,X509Error,RSAError), e :
         logger.exception( 'ssl connect error' )
         sslAbort( sslConn )
         op.notify( None )
         return
Esempio n. 2
0
 def onSSLAccept( err ) :
     global logger
     if err is not None :
         sslAbort( sslConn )
         op.notify( None )
         return
     try :
         peerCert = sslConn.getPeerCertificate()
         peerKey = RSAKey()
         peerKey.fromPKey_PublicKey(peerCert.get_pubkey())
         CN = peerCert.get_subject().CN
         if CN.count('@'):
             peerName, peerKeyID = CN.split('@')
         else:
             peerName, peerKeyID = CN, ''
     except (SSLError,X509Error,RSAError) :
         logger.exception('ssl accept error')
         sslAbort( sslConn )
         op.notify( None )
         return
     data = (sslConn,peerKey,peerName,peerKeyID)
     # logger.info('onSSLAccept SUCCESSFUL with %s' % str(peerName))
     op.notify( data )