summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMax Maisel <max.maisel@posteo.de>2018-03-01 17:28:40 +0100
committerMax Maisel <max.maisel@posteo.de>2018-03-01 17:57:50 +0100
commitfa7ef73d810310ca42d361d337aeb5fea87c3ae4 (patch)
treef1870e719789f105abaabec155be7c97d0674a4e /src
parentbc9b9b57b60cf85fc159c264e5faab6f6263a062 (diff)
ext4_mbr: Added "disk_id" parameter to MBR creation function
Diffstat (limited to 'src')
-rw-r--r--src/ext4_mbr.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/ext4_mbr.c b/src/ext4_mbr.c
index 7cbbe89..4d95d0c 100644
--- a/src/ext4_mbr.c
+++ b/src/ext4_mbr.c
@@ -59,7 +59,8 @@ struct ext4_part_entry {
};
struct ext4_mbr {
- uint8_t bootstrap[446];
+ uint8_t bootstrap[442];
+ uint32_t disk_id;
struct ext4_part_entry part_entry[4];
uint16_t signature;
};
@@ -126,7 +127,7 @@ int ext4_mbr_scan(struct ext4_blockdev *parent, struct ext4_mbr_bdevs *bdevs)
return r;
}
-int ext4_mbr_write(struct ext4_blockdev *parent, struct ext4_mbr_parts *parts)
+int ext4_mbr_write(struct ext4_blockdev *parent, struct ext4_mbr_parts *parts, uint32_t disk_id)
{
int r;
uint64_t disk_size = parent->part_size;
@@ -155,6 +156,7 @@ int ext4_mbr_write(struct ext4_blockdev *parent, struct ext4_mbr_parts *parts)
struct ext4_mbr *mbr = (void *)parent->bdif->ph_bbuf;
memset(mbr, 0, sizeof(struct ext4_mbr));
+ mbr->disk_id = disk_id;
uint32_t cyl_it = 0;
for (int i = 0; i < 4; ++i) {