Control: severity -1 important Control: retitle -1 python-keyring: CryptedFileKeyring: incomplete migration, broken unlock logic
On 2013-01-03 02:15:09, Sebastian Ramacher wrote: > While preparing a tpu upload for the CVEs and testing the migration code, I > came to the conclusion that without this patch is really necessary. Otherwise > the keyring is created over and over again. > > Furthermore the commit [2] released in 0.9.3 is also required. So if you don't > mind I'd like to prepare a team upload of 0.9.3 with the patch for this bug > for > unstable (including the changes from the NMU of course). After that I'll > continue to work in the tpu. It was too late when I wrote that mail. Here are more details. Without the commit from [2] an existing keyring is not converted correctly. In the case of a call to get_password the keyring is moved to the new location but then one gets the following traceback: File "/usr/lib/python2.7/dist-packages/keyring/core.py", line 37, in get_password return _keyring_backend.get_password(service_name, username) File "/usr/lib/python2.7/dist-packages/keyring/backend.py", line 375, in get_password password = self.decrypt(password_encrypted).decode('utf-8') File "/usr/lib/python2.7/dist-packages/keyring/backend.py", line 549, in decrypt data = json.loads(password_encrypted) File "/usr/lib/python2.7/json/__init__.py", line 326, in loads return _default_decoder.decode(s) File "/usr/lib/python2.7/json/decoder.py", line 365, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/lib/python2.7/json/decoder.py", line 383, in raw_decode raise ValueError("No JSON object could be decoded") ValueError: No JSON object could be decoded LP #1042754 contains an example of this case. As this leaves python-keyring with an existing pre-0.9.2-CryptedFileKeyring keyring unusable, I'm raising the severity to important. Kind regards -- Sebastian Ramacher
signature.asc
Description: Digital signature