• Home
  • Raw
  • Download

Lines Matching refs:self

77     def __init__(self):  argument
78 self.version = None
79 self.manifest_len = None
80 self.metadata_signature_len = None
81 self.size = None
83 def ReadFromPayload(self, payload_file, hasher=None): argument
101 magic = common.Read(payload_file, len(self._MAGIC), hasher=hasher)
102 if magic != self._MAGIC:
105 self.version = _ReadInt(payload_file, self._VERSION_SIZE, True,
107 self.manifest_len = _ReadInt(payload_file, self._MANIFEST_LEN_SIZE, True,
109 self.size = (len(self._MAGIC) + self._VERSION_SIZE +
110 self._MANIFEST_LEN_SIZE)
111 self.metadata_signature_len = 0
113 if self.version == common.BRILLO_MAJOR_PAYLOAD_VERSION:
114 self.size += self._METADATA_SIGNATURE_LEN_SIZE
115 self.metadata_signature_len = _ReadInt(
116 payload_file, self._METADATA_SIGNATURE_LEN_SIZE, True,
119 def __init__(self, payload_file, payload_file_offset=0): argument
127 self.name = payload_file
131 self.payload_file = zfp.open("payload.bin", "r")
133 self.name = payload_file
137 self.payload_file = io.BytesIO(payload_bytes)
139 self.name = payload_file.name
140 self.payload_file = payload_file
141 self.payload_file_size = self.payload_file.seek(0, io.SEEK_END)
142 self.payload_file.seek(0, io.SEEK_SET)
143 self.payload_file_offset = payload_file_offset
144 self.manifest_hasher = None
145 self.is_init = False
146 self.header = None
147 self.manifest = None
148 self.data_offset = None
149 self.metadata_signature = None
150 self.payload_signature = None
151 self.metadata_size = None
152 self.Init()
155 def is_incremental(self): argument
156 return any([part.HasField("old_partition_info") for part in self.manifest.partitions])
159 def is_partial(self): argument
160 return self.manifest.partial_update
163 def total_data_length(self): argument
170 for partition in reversed(self.manifest.partitions):
176 def _ReadHeader(self): argument
185 header = self._PayloadHeader()
186 header.ReadFromPayload(self.payload_file, self.manifest_hasher)
189 def _ReadManifest(self): argument
198 if not self.header:
201 return common.Read(self.payload_file, self.header.manifest_len,
202 hasher=self.manifest_hasher)
204 def _ReadMetadataSignature(self): argument
214 if not self.header:
218 self.payload_file, self.header.metadata_signature_len,
219 offset=self.payload_file_offset + self.header.size +
220 self.header.manifest_len)
222 def ReadDataBlob(self, offset, length): argument
235 return common.Read(self.payload_file, length,
236 offset=self.payload_file_offset + self.data_offset +
239 def Init(self): argument
248 if self.is_init:
251 self.manifest_hasher = hashlib.sha256()
254 self.payload_file.seek(self.payload_file_offset)
255 self.header = self._ReadHeader()
258 manifest_raw = self._ReadManifest()
259 self.manifest = update_metadata_pb2.DeltaArchiveManifest()
260 self.manifest.ParseFromString(manifest_raw)
263 metadata_signature_raw = self._ReadMetadataSignature()
265 self.metadata_signature = update_metadata_pb2.Signatures()
266 self.metadata_signature.ParseFromString(metadata_signature_raw)
268 self.metadata_size = self.header.size + self.header.manifest_len
269 self.data_offset = self.metadata_size + self.header.metadata_signature_len
271 …if self.manifest.signatures_offset and self.manifest.signatures_size and self.manifest.signatures_…
272 payload_signature_blob = self.ReadDataBlob(
273 self.manifest.signatures_offset, self.manifest.signatures_size)
276 self.payload_signature = payload_signature
278 self.is_init = True
280 def _AssertInit(self): argument
282 if not self.is_init:
285 def ResetFile(self): argument
287 self.payload_file.seek(self.payload_file_offset + self.data_offset)
289 def IsDelta(self): argument
291 self._AssertInit()
293 for partition in self.manifest.partitions))
295 def IsFull(self): argument
297 return not self.IsDelta()
299 def Check(self, pubkey_file_name=None, metadata_sig_file=None, argument
319 self._AssertInit()
323 self, assert_type=assert_type, block_size=block_size,
331 def CheckDataHash(self): argument
332 for part in self.manifest.partitions:
339 blob = self.ReadDataBlob(op.data_offset, op.data_length)