mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
Provide less confusing error on encountering DRM5 LIT books
This commit is contained in:
parent
9fa67e9fe3
commit
1ba3b6f671
@ -643,11 +643,14 @@ class LitReader(object):
|
|||||||
self.drmlevel = 1
|
self.drmlevel = 1
|
||||||
else:
|
else:
|
||||||
return
|
return
|
||||||
|
if self.drmlevel < 5:
|
||||||
msdes.deskey(self._calculate_deskey(), msdes.DE1)
|
msdes.deskey(self._calculate_deskey(), msdes.DE1)
|
||||||
bookkey = msdes.des(self.get_file('/DRMStorage/DRMSealed'))
|
bookkey = msdes.des(self.get_file('/DRMStorage/DRMSealed'))
|
||||||
if bookkey[0] != '\000':
|
if bookkey[0] != '\000':
|
||||||
raise LitError('Unable to decrypt title key!')
|
raise LitError('Unable to decrypt title key!')
|
||||||
self.bookkey = bookkey[1:9]
|
self.bookkey = bookkey[1:9]
|
||||||
|
else:
|
||||||
|
raise LitError('Cannot extract content from a DRM protected ebook')
|
||||||
|
|
||||||
def _calculate_deskey(self):
|
def _calculate_deskey(self):
|
||||||
hashfiles = ['/meta', '/DRMStorage/DRMSource']
|
hashfiles = ['/meta', '/DRMStorage/DRMSource']
|
||||||
@ -710,8 +713,6 @@ class LitReader(object):
|
|||||||
return content
|
return content
|
||||||
|
|
||||||
def _decrypt(self, content):
|
def _decrypt(self, content):
|
||||||
if self.drmlevel == 5:
|
|
||||||
raise LitError('Cannot extract content from a DRM protected ebook')
|
|
||||||
msdes.deskey(self.bookkey, msdes.DE1)
|
msdes.deskey(self.bookkey, msdes.DE1)
|
||||||
return msdes.des(content)
|
return msdes.des(content)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user