This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository pyhoca-gui. commit 83bbf025313fcadaf9400885b9c3811c4f38b481 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Mon Mar 24 13:48:55 2014 +0100 Handle "Connection refused" errors during broker login attempts. --- debian/changelog | 1 + debian/pyhoca-gui.links | 3 +++ pyhoca/wxgui/brokerlogon.py | 21 ++++++++++++++------- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index d37f807..ba15158 100644 --- a/debian/changelog +++ b/debian/changelog @@ -33,6 +33,7 @@ pyhoca-gui (0.5.0.0-0x2go1) UNRELEASED; urgency=low - Provide cmdline option --broker-cacertfile. Enable https:// connections with SSL certificates that have been self-signed against a non-public root-CA certificate file. + - Handle "Connection refused" errors during broker login attempts. - Update English / German translation. -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Wed, 08 Jan 2014 21:28:37 +0100 diff --git a/debian/pyhoca-gui.links b/debian/pyhoca-gui.links index 2e576ba..26818c6 100644 --- a/debian/pyhoca-gui.links +++ b/debian/pyhoca-gui.links @@ -18,6 +18,7 @@ /usr/share/icons/PyHoca/32x32/document-save.png /usr/share/icons/PyHoca/32x32/profile_save.png /usr/share/icons/PyHoca/32x32/dialog-warning.png /usr/share/icons/PyHoca/32x32/auth_failed.png /usr/share/icons/PyHoca/32x32/dialog-error.png /usr/share/icons/PyHoca/32x32/auth_error.png +/usr/share/icons/PyHoca/32x32/dialog-error.png /usr/share/icons/PyHoca/32x32/connect_error.png /usr/share/icons/gnome-colors-common/32x32/status/dialog-warning.png /usr/share/icons/PyHoca/32x32/dialog-warning.png /usr/share/icons/gnome-colors-common/32x32/actions/media-eject.png /usr/share/icons/PyHoca/32x32/media-eject.png /usr/share/icons/gnome-colors-common/32x32/actions/media-skip-backward.png /usr/share/icons/PyHoca/32x32/media-skip-backward.png @@ -45,6 +46,7 @@ /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/session_warning.png /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/auth_failed.png /usr/share/icons/PyHoca/64x64/dialog-error.png /usr/share/icons/PyHoca/64x64/auth_error.png +/usr/share/icons/PyHoca/64x64/dialog-error.png /usr/share/icons/PyHoca/64x64/connect_error.png /usr/share/icons/PyHoca/64x64/dialog-warning.png /usr/share/icons/PyHoca/64x64/profile_warning.png /usr/share/icons/PyHoca/64x64/dialog-apply.png /usr/share/icons/PyHoca/64x64/auth_success.png /usr/share/icons/PyHoca/64x64/dialog-apply.png /usr/share/icons/PyHoca/64x64/success.png @@ -73,6 +75,7 @@ /usr/share/icons/PyHoca/scalable/media-playback-pause.svg /usr/share/icons/PyHoca/scalable/session_pause.svg /usr/share/icons/gnome-colors-common/scalable/actions/media-skip-backward.svg /usr/share/icons/PyHoca/scalable/media-skip-backward.svg /usr/share/icons/PyHoca/scalable/dialog-error.svg /usr/share/icons/PyHoca/scalable/auth_error.svg +/usr/share/icons/PyHoca/scalable/dialog-error.svg /usr/share/icons/PyHoca/scalable/connect_error.svg /usr/share/icons/PyHoca/scalable/x2go-logo-rotated.svg /usr/share/icons/PyHoca/scalable/session_resume.svg /usr/share/icons/PyHoca/scalable/list-add.svg /usr/share/icons/PyHoca/scalable/profile_add.svg /usr/share/icons/PyHoca/scalable/broom-cleanup.svg /usr/share/icons/PyHoca/scalable/session_cleanall.svg diff --git a/pyhoca/wxgui/brokerlogon.py b/pyhoca/wxgui/brokerlogon.py index 4996064..5fb58ad 100644 --- a/pyhoca/wxgui/brokerlogon.py +++ b/pyhoca/wxgui/brokerlogon.py @@ -41,6 +41,8 @@ gevent.monkey.patch_all() import wx import os +import messages + if os.environ.has_key('DESKTOP_SESSION'): WINDOW_MANAGER = os.environ['DESKTOP_SESSION'] else: @@ -173,15 +175,20 @@ class PyHocaGUI_BrokerDialogBoxPassword(wx.Dialog): password = self.passwordTxt.GetValue() self._PyHocaGUI.session_profiles.set_broker_url(broker_url) - if self._PyHocaGUI.session_profiles.broker_simpleauth(username, password): - self._PyHocaGUI.notifier.send(_(u"%s - success") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker has been\nsuccessful."), icon='auth_success', timeout=10000) - self._PyHocaGUI.session_profiles.populate_session_profiles() - self.Close() - self.Destroy() - else: - self._PyHocaGUI.notifier.send(_(u"%s - failure") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker failed."), icon='auth_failed', timeout=10000) + try: + if self._PyHocaGUI.session_profiles.broker_simpleauth(username, password): + self._PyHocaGUI.notifier.send(_(u"%s - success") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker has been\nsuccessful."), icon='auth_success', timeout=10000) + self._PyHocaGUI.session_profiles.populate_session_profiles() + else: + self._PyHocaGUI.notifier.send(_(u"%s - failure") % self._PyHocaGUI.broker_name, _(u"Authentication to session broker failed."), icon='auth_failed', timeout=10000) self.Close() self.Destroy() + except x2go.x2go_exceptions.X2GoBrokerConnectionException: + m = messages.PyHoca_MessageWindow_YesNo(self, title=_(u'%s: Connection refused error') % self._PyHocaGUI.appname, msg=_(u'Connection to %s failed. Retry?') % self._PyHocaGUI.broker_name, icon='connect_error') + m.ShowModal() + if m.No(): + self.Close() + self.Destroy() def OnCancel(self, evt): """ -- Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/pyhoca-gui.git