mirror of
https://github.com/systemd/systemd
synced 2024-07-21 10:17:21 +00:00
dissect: show intended architecture of a disk image
We already determine the architecture of disk images and make a choice, and store it per partition. Let's make this accessible globally.
This commit is contained in:
parent
1016c8ad94
commit
2348043f17
|
@ -603,6 +603,9 @@ static int action_dissect(DissectedImage *m, LoopDevice *d) {
|
|||
|
||||
printf(" Sec. Size: %" PRIu32 "\n", m->sector_size);
|
||||
|
||||
printf(" Arch.: %s\n",
|
||||
strna(architecture_to_string(dissected_image_architecture(m))));
|
||||
|
||||
if (arg_json_format_flags & JSON_FORMAT_OFF)
|
||||
putc('\n', stdout);
|
||||
|
||||
|
|
|
@ -3156,6 +3156,20 @@ finish:
|
|||
return r;
|
||||
}
|
||||
|
||||
Architecture dissected_image_architecture(DissectedImage *img) {
|
||||
assert(img);
|
||||
|
||||
if (img->partitions[PARTITION_ROOT].found &&
|
||||
img->partitions[PARTITION_ROOT].architecture >= 0)
|
||||
return img->partitions[PARTITION_ROOT].architecture;
|
||||
|
||||
if (img->partitions[PARTITION_USR].found &&
|
||||
img->partitions[PARTITION_USR].architecture >= 0)
|
||||
return img->partitions[PARTITION_USR].architecture;
|
||||
|
||||
return _ARCHITECTURE_INVALID;
|
||||
}
|
||||
|
||||
int dissect_loop_device(
|
||||
LoopDevice *loop,
|
||||
const VeritySettings *verity,
|
||||
|
|
|
@ -160,6 +160,8 @@ int dissected_image_mount_and_warn(DissectedImage *m, const char *where, uid_t u
|
|||
|
||||
int dissected_image_acquire_metadata(DissectedImage *m, DissectImageFlags extra_flags);
|
||||
|
||||
Architecture dissected_image_architecture(DissectedImage *m);
|
||||
|
||||
DecryptedImage* decrypted_image_ref(DecryptedImage *p);
|
||||
DecryptedImage* decrypted_image_unref(DecryptedImage *p);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(DecryptedImage*, decrypted_image_unref);
|
||||
|
|
Loading…
Reference in a new issue