def _reset_proxy(self): parsed = urlparse(self.url.lower()) self.transport = None # This scheme is used for debugging and looping back if parsed.scheme == "test": self.proxy = BasicAuthServerProxy( test_to_http(self.url), username=self.username, password=self.password, transport=TestClientTransport()) elif parsed.scheme == "https": from M2Crypto.m2xmlrpclib import SSL_Transport from M2Crypto.SSL import Context self.transport = SSL_Transport(Context(protocol='tlsv1')) self.proxy = BasicAuthServerProxy(self.url, username=self.username, password=self.password, transport=self.transport, #verbose=getattr(settings, "DEBUG", False)) verbose=False) self.set_verify_certs() else: self.proxy = BasicAuthServerProxy(self.url, username=self.username, password=self.password)
def _reset(self): parsed = urlparse(self.url.lower()) assert parsed.scheme == "https" self.transport = None from M2Crypto.m2xmlrpclib import SSL_Transport from M2Crypto.SSL import Context self.transport = SSL_Transport(Context(protocol='tlsv1')) new_url = add_basic_auth(self.url, self.username, self.password) self.proxy = xmlrpclib.ServerProxy(str(new_url), transport=self.transport, verbose=False)
def _reset_proxy(self): parsed = urlparse(self.url.lower()) self.transport = None # This scheme is used for debugging and looping back if parsed.scheme == "test": self.proxy = BasicAuthServerProxy(self.url.lower().replace( "test", "http"), username=self.username, password=self.password, transport=TestClientTransport()) elif parsed.scheme == "https": from M2Crypto.m2xmlrpclib import SSL_Transport from M2Crypto.SSL import Context self.transport = SSL_Transport(Context(protocol='tlsv1')) self.proxy = BasicAuthServerProxy(self.url, username=self.username, password=self.password, transport=self.transport) self.set_verify_certs() else: self.proxy = BasicAuthServerProxy(self.url, username=self.username, password=self.password)
''' Get the download descriptor for the specified file ''' log.debug('Entered FTPSServer.GetDownloadDescriptor') descriptor = urlparse.urlunparse( ("ftps", "%s:%d" % (self.hostname, self.port), "%s/%s" % (prefix, urllib.quote(fil)), "", "", "")) log.debug(' descriptor = %s', descriptor) return descriptor if __name__ == '__main__': from M2Crypto.SSL import Context import socket ssl_ctx = Context('sslv23') ssl_ctx.load_cert('server.pem') # cheat to get the ca cert dir if sys.platform == 'win32': caDir = r'c:\\program files\\AGTk-2.4\\Config\CAcertificates' elif sys.platform == 'linux2': caDir = '/etc/AccessGrid/Config/CAcertificates' elif sys.platform == 'darwin': caDir = '/Applications/AccessGridToolkit.app/Contents/Resources/Config/CAcertificates/' else: print 'Unrecognized platform: ', sys.platform sys.exit(1) ssl_ctx.load_verify_locations(capath=caDir) ssl_ctx.set_cipher_list('LOW:TLSv1:@STRENGTH') ssl_ctx.set_verify(SSL.verify_peer, 10) ssl_ctx.set_session_id_ctx('127.0.0.1:8006')