fiasco: align also kernel
This commit is contained in:
1 parent
869a872897
commit
589443a356
1 file changed
+19
-6
+19
-6
@@ -371,9 +371,16 @@ int fiasco_write_to_file(struct fiasco * fiasco, const char * file) {
|
||||
|
||||
/* image size */
|
||||
size = image->size;
|
||||
|
||||
/* Align mmc image size */
|
||||
if ( image->type == IMAGE_MMC )
|
||||
size = ((size >> 8) + 1) << 8;
|
||||
/* Align kernel image size */
|
||||
else if ( image->type == IMAGE_KERNEL )
|
||||
size = ((size >> 7) + 1) << 7;
|
||||
|
||||
/* TODO: update hash after align */
|
||||
|
||||
size = htonl(size);
|
||||
WRITE_OR_FAIL(fd, &size, 4);
|
||||
|
||||
@@ -447,13 +454,17 @@ int fiasco_write_to_file(struct fiasco * fiasco, const char * file) {
|
||||
WRITE_OR_FAIL(fd, buf, size);
|
||||
}
|
||||
|
||||
/* Align mmc image (fill with 0xff) */
|
||||
if ( image->type == IMAGE_MMC ) {
|
||||
size = image->size;
|
||||
|
||||
if ( image->type == IMAGE_MMC )
|
||||
size = ((image->size >> 8) + 1) << 8;
|
||||
while ( size > image->size ) {
|
||||
WRITE_OR_FAIL(fd, "\xff", 1);
|
||||
--size;
|
||||
}
|
||||
else if ( image->type == IMAGE_KERNEL )
|
||||
size = ((image->size >> 7) + 1) << 7;
|
||||
|
||||
/* Align image if needed (fill with 0xff) */
|
||||
while ( size > image->size ) {
|
||||
WRITE_OR_FAIL(fd, "\xff", 1);
|
||||
--size;
|
||||
}
|
||||
|
||||
image_list = image_list->next;
|
||||
@@ -494,6 +505,8 @@ int fiasco_unpack(struct fiasco * fiasco, const char * dir) {
|
||||
|
||||
name = calloc(1, length);
|
||||
|
||||
/* TODO: Unpack image */
|
||||
|
||||
image_list = image_list->next;
|
||||
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user