Philipp Hörist pushed to branch master at gajim / python-nbxmpp

Commits:

2 changed files:

Changes:

  • nbxmpp/client.py
    ... ... @@ -438,7 +438,7 @@ class Client(Observable):
    438 438
     
    
    439 439
         def _on_stream_end(self, _dispatcher, _signal_name, error):
    
    440 440
             if not self.has_error:
    
    441
    -            self._set_error(StreamError.STREAM, 'stream-end', error)
    
    441
    +            self._set_error(StreamError.STREAM, error or 'stream-end')
    
    442 442
     
    
    443 443
             self._con.shutdown_input()
    
    444 444
             if not self._stream_close_initiated:
    
    ... ... @@ -638,9 +638,6 @@ class Client(Observable):
    638 638
             elif self.state == StreamState.WAIT_FOR_BIND:
    
    639 639
                 self._on_bind(stanza)
    
    640 640
     
    
    641
    -        elif self.state == StreamState.BIND_FAILED:
    
    642
    -            self._disconnect_with_error(StreamError.BIND, 'bind-failed')
    
    643
    -
    
    644 641
             elif self.state == StreamState.BIND_SUCCESSFUL:
    
    645 642
                 self._smacks.send_enable()
    
    646 643
                 self._dispatcher.set_dispatch_callback(None)
    
    ... ... @@ -650,9 +647,6 @@ class Client(Observable):
    650 647
             elif self.state == StreamState.WAIT_FOR_SESSION:
    
    651 648
                 self._on_session(stanza)
    
    652 649
     
    
    653
    -        elif self.state == StreamState.SESSION_FAILED:
    
    654
    -            self._disconnect_with_error(StreamError.SESSION, 'session-failed')
    
    655
    -
    
    656 650
             elif self.state == StreamState.WAIT_FOR_RESUMED:
    
    657 651
                 self._smacks.delegate(stanza)
    
    658 652
     
    
    ... ... @@ -735,12 +729,9 @@ class Client(Observable):
    735 729
     
    
    736 730
         def _on_bind(self, stanza):
    
    737 731
             if not isResultNode(stanza):
    
    738
    -            self._log.error('Binding failed: %s.', stanza.getTag('error'))
    
    739
    -            if stanza.getError() == 'conflict' and self.resource is not None:
    
    740
    -                self._log.info('Try to request server generated resource')
    
    741
    -                self._start_bind()
    
    742
    -                return
    
    743
    -            self.set_state(StreamState.BIND_FAILED)
    
    732
    +            self._disconnect_with_error(StreamError.BIND,
    
    733
    +                                        stanza.getError(),
    
    734
    +                                        stanza.getErrorMsg())
    
    744 735
                 return
    
    745 736
     
    
    746 737
             jid = stanza.getTag('bind').getTagData('jid')
    
    ... ... @@ -762,7 +753,9 @@ class Client(Observable):
    762 753
                 self.set_state(StreamState.BIND_SUCCESSFUL)
    
    763 754
             else:
    
    764 755
                 self._log.error('Session open failed')
    
    765
    -            self.set_state(StreamState.SESSION_FAILED)
    
    756
    +            self._disconnect_with_error(StreamError.SESSION,
    
    757
    +                                        stanza.getError(),
    
    758
    +                                        stanza.getErrorMsg())
    
    766 759
     
    
    767 760
         def _ping(self):
    
    768 761
             iq = Iq('get', to=self._jid.getBare())
    

  • nbxmpp/const.py
    ... ... @@ -357,13 +357,11 @@ class StreamState(Enum):
    357 357
         PROCEED_WITH_AUTH = 'proceed with auth'
    
    358 358
         AUTH_SUCCESSFUL = 'auth successful'
    
    359 359
         AUTH_FAILED = 'auth failed'
    
    360
    -    SESSION_FAILED = 'session failed'
    
    361 360
         WAIT_FOR_RESUMED = 'wait for resumed'
    
    362 361
         RESUME_FAILED = 'resume failed'
    
    363 362
         RESUME_SUCCESSFUL = 'resume successful'
    
    364 363
         PROCEED_WITH_BIND = 'proceed with bind'
    
    365 364
         BIND_SUCCESSFUL = 'bind successful'
    
    366
    -    BIND_FAILED = 'bind failed'
    
    367 365
         WAIT_FOR_BIND = 'wait for bind'
    
    368 366
         WAIT_FOR_SESSION = 'wait for session'
    
    369 367
         ACTIVE = 'active'