diff options
author | Karel Zak | 2014-02-04 23:09:26 +0100 |
---|---|---|
committer | Karel Zak | 2014-03-11 11:35:14 +0100 |
commit | 5139eca74a4b71fe95ae76599d35bf5275fa045f (patch) | |
tree | 2b915e2f4e243bf5d48cbfc82438a4ee620884be /libfdisk/src/partition.c | |
parent | libfdisk: (dos) consolidate partition end-offset code (diff) | |
download | kernel-qcow2-util-linux-5139eca74a4b71fe95ae76599d35bf5275fa045f.tar.gz kernel-qcow2-util-linux-5139eca74a4b71fe95ae76599d35bf5275fa045f.tar.xz kernel-qcow2-util-linux-5139eca74a4b71fe95ae76599d35bf5275fa045f.zip |
libfdisk: add dump functions, make freespace code generic
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libfdisk/src/partition.c')
-rw-r--r-- | libfdisk/src/partition.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/libfdisk/src/partition.c b/libfdisk/src/partition.c index 81594842c..4b46eafb9 100644 --- a/libfdisk/src/partition.c +++ b/libfdisk/src/partition.c @@ -55,6 +55,30 @@ void fdisk_unref_partition(struct fdisk_partition *pa) } } +int fdisk_dump_partition(struct fdisk_partition *pa, FILE *f) +{ + assert(pa); + assert(f); + + if (pa->partno == FDISK_EMPTY_PARTNO) + fputs("# ", f); + else + fprintf(f, "#%zu ", pa->partno); + + fprintf(f, "[%p] start=%ju, end=%ju, size=%ju", + pa, pa->start, pa->end, pa->size); + if (pa->parent_partno != FDISK_EMPTY_PARTNO) + fprintf(f, ", parent=%zu", pa->parent_partno); + if (fdisk_partition_is_freespace(pa)) + fputs(" freespace", f); + if (fdisk_partition_is_container(pa)) + fputs(" container", f); + if (fdisk_partition_is_nested(pa)) + fputs(" nested", f); + fputc('\n', f); + return 0; +} + int fdisk_partition_set_start(struct fdisk_partition *pa, uint64_t off) { if (!pa) |