diff options
Diffstat (limited to 'module/plugins/internal/UnZip.py')
-rw-r--r-- | module/plugins/internal/UnZip.py | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/module/plugins/internal/UnZip.py b/module/plugins/internal/UnZip.py deleted file mode 100644 index 8d3fec370..000000000 --- a/module/plugins/internal/UnZip.py +++ /dev/null @@ -1,72 +0,0 @@ -# -*- coding: utf-8 -*- - -from __future__ import with_statement - -import os -import sys -import zipfile - -from module.plugins.internal.Extractor import Extractor, ArchiveError, CRCError, PasswordError -from module.utils import fs_encode - - -class UnZip(Extractor): - __name__ = "UnZip" - __version__ = "1.12" - - __description__ = """Zip extractor plugin""" - __license__ = "GPLv3" - __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] - - - EXTENSIONS = [".zip", ".zip64"] - VERSION ="(python %s.%s.%s)" % (sys.version_info[0], sys.version_info[1], sys.version_info[2]) - - - @classmethod - def isUsable(cls): - return sys.version_info[:2] >= (2, 6) - - - def list(self, password=None): - with zipfile.ZipFile(fs_encode(self.filename), 'r', allowZip64=True) as z: - z.setpassword(password) - return z.namelist() - - - def check(self, password): - pass - - - def verify(self): - with zipfile.ZipFile(fs_encode(self.filename), 'r', allowZip64=True) as z: - badfile = z.testzip() - - if badfile: - raise CRCError(badfile) - else: - raise PasswordError - - - def extract(self, password=None): - try: - with zipfile.ZipFile(fs_encode(self.filename), 'r', allowZip64=True) as z: - z.setpassword(password) - - badfile = z.testzip() - - if badfile: - raise CRCError(badfile) - else: - z.extractall(self.out) - - except (zipfile.BadZipfile, zipfile.LargeZipFile), e: - raise ArchiveError(e) - - except RuntimeError, e: - if "encrypted" in e: - raise PasswordError - else: - raise ArchiveError(e) - else: - self.files = z.namelist() |