Пример #1
0
 def reader(self, ubi):
     last_leb = 0
     for block in sort.by_leb(self.get_blocks(ubi.blocks)):
         if block == 'x':
             last_leb += 1
             yield b'\xff' * ubi.leb_size
         else:
             last_leb += 1
             yield ubi.file.read_block_data(ubi.blocks[block])
Пример #2
0
 def reader(self, ubi):
     last_leb = 0
     for block in sort.by_leb(self.get_blocks(ubi.blocks)):
         if block == 'x':
         #while 0 != (ubi.blocks[block].leb_num - last_leb):
             last_leb += 1
             yield '\xff'*ubi.leb_size
         else:
             last_leb += 1
             yield ubi.file.read_block_data(ubi.blocks[block])
Пример #3
0
    def __init__(self, ubi, block_list):
        self.__name__ = 'leb_virtual_file'
        self.is_valid = False
        self._ubi = ubi
        self._last_read_addr = 0

        if not len(block_list):
            error(self, 'Info', 'Empty block list')
        else:
            self._blocks = sort.by_leb(block_list)
            self._seek = 0
            self._last_leb = -1
            self._last_buf = ''
            self.is_valid = True
Пример #4
0
    def __init__(self, ubi, block_list):
        self.__name__ = 'leb_virtual_file'
        self.is_valid = False
        self._ubi = ubi
        self._last_read_addr = 0

        if not len(block_list):
            error(self, 'Info', 'Empty block list')
        else:
            self._blocks = sort.by_leb(block_list)
            self._seek = 0
            self._last_leb = -1
            self._last_buf = ''
            self.is_valid = True