From: Karel Zak Date: Tue, 9 May 2017 12:30:02 +0000 (+0200) Subject: libfdisk: add fdisk_partition_has_wipe() X-Git-Tag: v2.30-rc1~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=29f2e825d8a92fb45469098874691666e5e4e2a0;p=thirdparty%2Futil-linux.git libfdisk: add fdisk_partition_has_wipe() Signed-off-by: Karel Zak --- diff --git a/libfdisk/docs/libfdisk-sections.txt b/libfdisk/docs/libfdisk-sections.txt index c3c3977545..81fa83aea6 100644 --- a/libfdisk/docs/libfdisk-sections.txt +++ b/libfdisk/docs/libfdisk-sections.txt @@ -176,6 +176,7 @@ fdisk_partition_has_end fdisk_partition_has_partno fdisk_partition_has_size fdisk_partition_has_start +fdisk_partition_has_wipe fdisk_partition_is_bootable fdisk_partition_is_container fdisk_partition_is_freespace diff --git a/libfdisk/src/libfdisk.h.in b/libfdisk/src/libfdisk.h.in index b55d067ccf..74c72b4fff 100644 --- a/libfdisk/src/libfdisk.h.in +++ b/libfdisk/src/libfdisk.h.in @@ -440,6 +440,9 @@ extern int fdisk_partition_end_is_default(struct fdisk_partition *pa); extern int fdisk_reorder_partitions(struct fdisk_context *cxt); +extern int fdisk_partition_has_wipe(struct fdisk_context *cxt, struct fdisk_partition *pa); + + /* table.c */ extern struct fdisk_table *fdisk_new_table(void); extern int fdisk_reset_table(struct fdisk_table *tb); diff --git a/libfdisk/src/libfdisk.sym b/libfdisk/src/libfdisk.sym index e7de4cd030..c26abf0d0d 100644 --- a/libfdisk/src/libfdisk.sym +++ b/libfdisk/src/libfdisk.sym @@ -280,4 +280,5 @@ FDISK_2.30 { fdisk_script_has_force_label; fdisk_is_regfile; fdisk_is_ptcollision; + fdisk_partition_has_wipe; } FDISK_2.29; diff --git a/libfdisk/src/partition.c b/libfdisk/src/partition.c index 4017096a82..2a518d3659 100644 --- a/libfdisk/src/partition.c +++ b/libfdisk/src/partition.c @@ -1309,6 +1309,19 @@ int fdisk_wipe_partition(struct fdisk_context *cxt, size_t partno, int enable) return rc < 0 ? rc : 0; } +/** + * fdisk_partition_has_wipe: + * @cxt: fdisk context + * @pa: partition + * + * Returns: 1 if the area specified by @pa will be wiped by write command, or 0. + */ +int fdisk_partition_has_wipe(struct fdisk_context *cxt, struct fdisk_partition *pa) +{ + return fdisk_has_wipe_area(cxt, fdisk_partition_get_start(pa), + fdisk_partition_get_size(pa)); +} + /** * fdisk_add_partition: