blob: c6b35835ef9dbaf807953a3f0e53a468601fb5a1 [file] [log] [blame]
import os
import sys
def read_dtb(filename, raw_data):
fin = open(filename, 'rb')
fin.seek(0, 0)
while True:
t_byte = fin.read(1)
if len(t_byte) == 0:
break
else :
raw_data.append("0x%.2X" % ord(t_byte))
def write_blob_head_file(filename, raw_data, length):
fout = open(filename, 'w+')
fout.write('#define CHECK_RSA 1 \n')
fout.write('#define CHECK_HASH 1 \n')
fout.write('const unsigned char blob[] __attribute__((aligned(4))) = \n')
fout.write('{\n ')
i = 0
for data in raw_data:
i += 1
if i != length:
fout.write(data + ', ')
else:
fout.write(data)
if i % 16 == 0:
fout.write('\n ')
if i == length:
break;
fout.write('\n};')
fout.close()
if __name__ == "__main__":
raw_data = []
in_path = str(sys.argv[1]);
out_path = str(sys.argv[2]);
length = int(sys.argv[3],16);
read_dtb(in_path, raw_data)
write_blob_head_file(out_path, raw_data, length)