diff options
| author | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-10-30 12:26:00 -0300 | 
|---|---|---|
| committer | Ivan Alejandro <ivanalejandro0@gmail.com> | 2013-10-30 13:00:24 -0300 | 
| commit | 85aae3723d754dcc7a3d60edab666591ecbddd5b (patch) | |
| tree | 1a5f7d2a8e1ee044d7bc220b67f3a8a23fc776d8 | |
| parent | d28cb4d97c15952070f1bd2b737264686b025836 (diff) | |
Fix non-ascii password change problem.
[Closes #4003]
| -rw-r--r-- | changes/bug-4003_fix-non-ascii-password-change | 1 | ||||
| -rw-r--r-- | src/leap/bitmask/crypto/srpauth.py | 14 | ||||
| -rw-r--r-- | src/leap/bitmask/gui/mainwindow.py | 4 | ||||
| -rw-r--r-- | src/leap/bitmask/gui/preferenceswindow.py | 2 | 
4 files changed, 11 insertions, 10 deletions
| diff --git a/changes/bug-4003_fix-non-ascii-password-change b/changes/bug-4003_fix-non-ascii-password-change new file mode 100644 index 00000000..2d6a0ed8 --- /dev/null +++ b/changes/bug-4003_fix-non-ascii-password-change @@ -0,0 +1 @@ +  - Fix problem changing a non-ascii password. Closes #4003. diff --git a/src/leap/bitmask/crypto/srpauth.py b/src/leap/bitmask/crypto/srpauth.py index 93fb740f..ab98850d 100644 --- a/src/leap/bitmask/crypto/srpauth.py +++ b/src/leap/bitmask/crypto/srpauth.py @@ -217,10 +217,9 @@ class SRPAuth(QtCore.QObject):              """              logger.debug("Authentication preprocessing...") -            self._srp_user = self._srp.User(username, -                                            password, -                                            self._hashfun, -                                            self._ng) +            self._srp_user = self._srp.User(username.encode('utf-8'), +                                            password.encode('utf-8'), +                                            self._hashfun, self._ng)              _, A = self._srp_user.start_authentication()              self._srp_a = A @@ -487,7 +486,8 @@ class SRPAuth(QtCore.QObject):                  self.get_uid())              salt, verifier = self._srp.create_salted_verification_key( -                self._username, new_password, self._hashfun, self._ng) +                self._username.encode('utf-8'), new_password.encode('utf-8'), +                self._hashfun, self._ng)              cookies = {self.SESSION_ID_KEY: self.get_session_id()}              headers = { @@ -518,9 +518,9 @@ class SRPAuth(QtCore.QObject):              Might raise SRPAuthenticationError              :param username: username for this session -            :type username: str +            :type username: unicode              :param password: password for this user -            :type password: str +            :type password: unicode              :returns: A defer on a different thread              :rtype: twisted.internet.defer.Deferred diff --git a/src/leap/bitmask/gui/mainwindow.py b/src/leap/bitmask/gui/mainwindow.py index dddd53da..fa1a82f8 100644 --- a/src/leap/bitmask/gui/mainwindow.py +++ b/src/leap/bitmask/gui/mainwindow.py @@ -880,8 +880,8 @@ class MainWindow(QtGui.QMainWindow):          leap_assert(self._provider_config, "We need a provider config!")          if data[self._provider_bootstrapper.PASSED_KEY]: -            username = self._login_widget.get_user().encode("utf8") -            password = self._login_widget.get_password().encode("utf8") +            username = self._login_widget.get_user() +            password = self._login_widget.get_password()              if self._srp_auth is None:                  self._srp_auth = SRPAuth(self._provider_config) diff --git a/src/leap/bitmask/gui/preferenceswindow.py b/src/leap/bitmask/gui/preferenceswindow.py index 58cb05ba..b043afe6 100644 --- a/src/leap/bitmask/gui/preferenceswindow.py +++ b/src/leap/bitmask/gui/preferenceswindow.py @@ -156,7 +156,7 @@ class PreferencesWindow(QtGui.QDialog):          """          logger.debug("SRP password changed successfully.")          try: -            self._soledad.change_passphrase(str(new_password)) +            self._soledad.change_passphrase(new_password)              logger.debug("Soledad password changed successfully.")          except NoStorageSecret:              logger.debug( | 
