Dont sent plaintext password in requests and use subsonic hex-encoding with legacy auth

This commit is contained in:
heru
2017-11-25 18:14:41 +01:00
parent 313b413fc5
commit 4429451454

View File

@ -293,7 +293,8 @@ class SubsonicClient(libsonic.Connection):
parts = list(urlparse.urlparse( parts = list(urlparse.urlparse(
args[0].get_full_url() + "?" + args[0].data)) args[0].get_full_url() + "?" + args[0].data))
parts[4] = dict(urlparse.parse_qsl(parts[4])) parts[4] = dict(urlparse.parse_qsl(parts[4]))
parts[4].update({"u": self.username, "p": self.password}) if self._legacyAuth:
parts[4].update({"u": self.username, "p": 'enc:%s' % self._hexEnc(self._rawPass)})
parts[4] = urllib.urlencode(parts[4]) parts[4] = urllib.urlencode(parts[4])
return urlparse.urlunparse(parts) return urlparse.urlunparse(parts)