def get_header_zip(self, header): if 'zip' in header: z = header['zip'] if self._algorithms and z not in self._algorithms: raise UnsupportedCompressionAlgorithmError() if z not in self.ZIP_REGISTRY: raise UnsupportedCompressionAlgorithmError() return self.ZIP_REGISTRY[z]
def _pre_validate_header(self, header): if 'alg' not in header: raise MissingAlgorithmError() alg = header['alg'] if alg not in self._alg_algorithms: raise UnsupportedAlgorithmError() if 'enc' not in header: raise MissingEncryptionAlgorithmError() enc = header['enc'] if enc not in self._enc_algorithms: raise UnsupportedEncryptionAlgorithmError() zip = header.get('zip') if zip and zip not in self._zip_algorithms: raise UnsupportedCompressionAlgorithmError()