wingo - in flumotion/trunk: . flumotion/admin flumotion/common
flumotion/job flumotion/worker
flumotion-commit at lists.fluendo.com
flumotion-commit at lists.fluendo.com
Wed Jun 13 12:29:25 CEST 2007
Author: wingo
Date: Wed Jun 13 12:29:18 2007
New Revision: 5163
Modified:
flumotion/trunk/ChangeLog
flumotion/trunk/flumotion/admin/admin.py
flumotion/trunk/flumotion/common/common.py
flumotion/trunk/flumotion/common/errors.py
flumotion/trunk/flumotion/common/server.py
flumotion/trunk/flumotion/job/job.py
flumotion/trunk/flumotion/worker/medium.py
Log:
2007-06-13 Andy Wingo <wingo at pobox.com>
* flumotion/admin/admin.py (AdminModel.connectToManager):
* flumotion/job/job.py (JobMedium._createComponent):
* flumotion/worker/medium.py (WorkerMedium.startConnecting):
* flumotion/common/server.py (Server.startSSL): When asked to
listen or connect with SSL, first assert that it is available, so
that we get a common exception. Fixes #371.
* flumotion/common/errors.py (NoSSLError):
* flumotion/common/common.py (assertSSLAvailable): New utility,
asserts that SSL is available, raising NoSSLError if that is not
the case.
Modified: flumotion/trunk/ChangeLog
==============================================================================
--- flumotion/trunk/ChangeLog (original)
+++ flumotion/trunk/ChangeLog Wed Jun 13 12:29:18 2007
@@ -1,3 +1,17 @@
+2007-06-13 Andy Wingo <wingo at pobox.com>
+
+ * flumotion/admin/admin.py (AdminModel.connectToManager):
+ * flumotion/job/job.py (JobMedium._createComponent):
+ * flumotion/worker/medium.py (WorkerMedium.startConnecting):
+ * flumotion/common/server.py (Server.startSSL): When asked to
+ listen or connect with SSL, first assert that it is available, so
+ that we get a common exception. Fixes #371.
+
+ * flumotion/common/errors.py (NoSSLError):
+ * flumotion/common/common.py (assertSSLAvailable): New utility,
+ asserts that SSL is available, raising NoSSLError if that is not
+ the case.
+
2007-06-12 Andy Wingo <wingo at pobox.com>
* flumotion/component/base/scheduler.py (Scheduler._eventStarted)
Modified: flumotion/trunk/flumotion/admin/admin.py
==============================================================================
--- flumotion/trunk/flumotion/admin/admin.py (original)
+++ flumotion/trunk/flumotion/admin/admin.py Wed Jun 13 12:29:18 2007
@@ -207,6 +207,7 @@
self.clientFactory.startLogin(connectionInfo.authenticator)
if connectionInfo.use_ssl:
+ common.assertSSLAvailable()
from twisted.internet import ssl
reactor.connectSSL(connectionInfo.host, connectionInfo.port,
self.clientFactory, ssl.ClientContextFactory())
Modified: flumotion/trunk/flumotion/common/common.py
==============================================================================
--- flumotion/trunk/flumotion/common/common.py (original)
+++ flumotion/trunk/flumotion/common/common.py Wed Jun 13 12:29:18 2007
@@ -800,3 +800,12 @@
return True
return False
+
+def assertSSLAvailable():
+ """Assert that twisted has support for SSL connections.
+ """
+ from twisted.internet import posixbase
+ from flumotion.common import errors
+
+ if not posixbase.sslEnabled:
+ raise errors.NoSSLError()
Modified: flumotion/trunk/flumotion/common/errors.py
==============================================================================
--- flumotion/trunk/flumotion/common/errors.py (original)
+++ flumotion/trunk/flumotion/common/errors.py Wed Jun 13 12:29:18 2007
@@ -36,6 +36,9 @@
class NoProjectError(Exception):
"The given project does not exist"
+class NoSSLError(Exception):
+ "SSL is not available"
+
# connection errors
class ConnectionError(pb.Error):
"General connection error"
Modified: flumotion/trunk/flumotion/common/server.py
==============================================================================
--- flumotion/trunk/flumotion/common/server.py (original)
+++ flumotion/trunk/flumotion/common/server.py Wed Jun 13 12:29:18 2007
@@ -91,6 +91,9 @@
@returns: {twisted.internet.interfaces.IListeningPort} on which
we are listening; call .stopListening() to stop.
"""
+ from flumotion.common import common
+ common.assertSSLAvailable()
+
# if no path in pemFile, then look for it in the config directory
if not os.path.split(pemFile)[0]:
pemFile = os.path.join(configDir, pemFile)
Modified: flumotion/trunk/flumotion/job/job.py
==============================================================================
--- flumotion/trunk/flumotion/job/job.py (original)
+++ flumotion/trunk/flumotion/job/job.py Wed Jun 13 12:29:18 2007
@@ -261,6 +261,8 @@
transport = self._managerTransport
self.debug('logging in with authenticator %r' % self._authenticator)
if transport == "ssl":
+ from flumotion.common import common
+ common.assertSSLAvailable()
from twisted.internet import ssl
self.info('Connecting to manager %s:%d with SSL' % (host, port))
reactor.connectSSL(host, port, managerClientFactory,
Modified: flumotion/trunk/flumotion/worker/medium.py
==============================================================================
--- flumotion/trunk/flumotion/worker/medium.py (original)
+++ flumotion/trunk/flumotion/worker/medium.py Wed Jun 13 12:29:18 2007
@@ -147,6 +147,8 @@
self.factory.startLogin(info.authenticator)
if info.use_ssl:
+ from flumotion.common import common
+ common.assertSSLAvailable()
from twisted.internet import ssl
reactor.connectSSL(info.host, info.port, self.factory,
ssl.ClientContextFactory())
More information about the flumotion-commit
mailing list