From 1fa8e28c53856efbc4caf8d28c64bcdcf289572a Mon Sep 17 00:00:00 2001 From: Florian Bach Date: Wed, 15 Dec 2021 13:48:34 +0100 Subject: [PATCH] Prepare v0.0.15 --- calibre-plugin/__init__.py | 8 ++++---- calibre-plugin/libadobeAccount.py | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/calibre-plugin/__init__.py b/calibre-plugin/__init__.py index 736c968..6bd35c7 100644 --- a/calibre-plugin/__init__.py +++ b/calibre-plugin/__init__.py @@ -29,13 +29,13 @@ # fix authorization failing with certain non-ASCII characters in username, # add detailed logging toggle setting, add auto-delete ACSM setting, # add useful error message for ACSMs with nonstandard download type. -# Currently in development: -# Add support for anonymous authorizations, add support for other ID providers, +# v0.0.15: Add support for anonymous authorizations, add support for other ID providers, # fix ACSM files from Google Play books (no metadata node), -# allow converting an anonymous auth to an AdobeID auth. +# allow converting an anonymous auth to an AdobeID auth, +# update python-cryptography from 3.4.8 to 36.0.1, update python-rsa from 4.7.2 to 4.8. PLUGIN_NAME = "DeACSM" -PLUGIN_VERSION_TUPLE = (0, 0, 14) +PLUGIN_VERSION_TUPLE = (0, 0, 15) from calibre.customize import FileTypePlugin # type: ignore __version__ = PLUGIN_VERSION = ".".join([str(x)for x in PLUGIN_VERSION_TUPLE]) diff --git a/calibre-plugin/libadobeAccount.py b/calibre-plugin/libadobeAccount.py index 2693d4a..6adecd8 100644 --- a/calibre-plugin/libadobeAccount.py +++ b/calibre-plugin/libadobeAccount.py @@ -262,6 +262,11 @@ def buildSignInRequestForAnonAuthConvert(username: str, password: str, authentic except: return None + # Note: I tried replacing the user_uuid with the UUID of another (anonymous) authorization + # to see if it was possible to take over another account, but that didn't work. That's the reason + # why this request has the signature node, the payload needs to be signed with the user certificate + # that matches the UUID in the tag. + etree.SubElement(root, etree.QName(NSMAP["adept"], "user")).text = user_uuid signature = sign_node(root) etree.SubElement(root, etree.QName(NSMAP["adept"], "signature")).text = signature