diff options
author | Karel Zak | 2014-10-15 12:17:40 +0200 |
---|---|---|
committer | Karel Zak | 2014-10-15 12:17:40 +0200 |
commit | ecf40cda764496d3d1b29435ea64a65335ae0acf (patch) | |
tree | 9ef1d00a3906fd495194b88ca5023c9729353df0 /libfdisk/src/libfdisk.h | |
parent | tests: check for wipefs and helpers in fdisk tests (diff) | |
download | kernel-qcow2-util-linux-ecf40cda764496d3d1b29435ea64a65335ae0acf.tar.gz kernel-qcow2-util-linux-ecf40cda764496d3d1b29435ea64a65335ae0acf.tar.xz kernel-qcow2-util-linux-ecf40cda764496d3d1b29435ea64a65335ae0acf.zip |
libfdisk: make it possible to use zero for size and start
The zero may be valid size and start of the partition. This patch
introduces:
fdisk_partition_has_start()
fdisk_partition_has_size()
fdisk_partition_unset_size()
fdisk_partition_unset_start()
to make it possible to work with zero. The feature is internally
implemented by magic constant ((type) -1) for undefined sizes and
offsets.
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libfdisk/src/libfdisk.h')
-rw-r--r-- | libfdisk/src/libfdisk.h | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/libfdisk/src/libfdisk.h b/libfdisk/src/libfdisk.h index 047119983..260f90839 100644 --- a/libfdisk/src/libfdisk.h +++ b/libfdisk/src/libfdisk.h @@ -247,16 +247,20 @@ extern void fdisk_ref_partition(struct fdisk_partition *pa); extern void fdisk_unref_partition(struct fdisk_partition *pa); extern int fdisk_partition_is_freespace(struct fdisk_partition *pa); -extern int fdisk_partition_set_start(struct fdisk_partition *pa, uint64_t off); -extern uint64_t fdisk_partition_get_start(struct fdisk_partition *pa); -extern int fdisk_partition_cmp_start(struct fdisk_partition *a, +int fdisk_partition_set_start(struct fdisk_partition *pa, uint64_t off); +int fdisk_partition_unset_start(struct fdisk_partition *pa); +uint64_t fdisk_partition_get_start(struct fdisk_partition *pa); +int fdisk_partition_has_start(struct fdisk_partition *pa); +int fdisk_partition_cmp_start(struct fdisk_partition *a, struct fdisk_partition *b); +int fdisk_partition_start_follow_default(struct fdisk_partition *pa, int enable); +int fdisk_partition_start_is_default(struct fdisk_partition *pa); -extern int fdisk_partition_set_end(struct fdisk_partition *pa, uint64_t off); -extern uint64_t fdisk_partition_get_end(struct fdisk_partition *pa); -extern int fdisk_partition_set_size(struct fdisk_partition *pa, uint64_t size); -extern int fdisk_partition_size_explicit(struct fdisk_partition *pa, int enable); -extern uint64_t fdisk_partition_get_size(struct fdisk_partition *pa); +int fdisk_partition_set_size(struct fdisk_partition *pa, uint64_t sz); +int fdisk_partition_unset_size(struct fdisk_partition *pa); +uint64_t fdisk_partition_get_size(struct fdisk_partition *pa); +int fdisk_partition_has_size(struct fdisk_partition *pa); +int fdisk_partition_size_explicit(struct fdisk_partition *pa, int enable); extern int fdisk_partition_set_partno(struct fdisk_partition *pa, size_t n); extern size_t fdisk_partition_get_partno(struct fdisk_partition *pa); @@ -285,10 +289,8 @@ extern int fdisk_partition_next_partno(struct fdisk_partition *pa, size_t *n); extern int fdisk_partition_partno_follow_default(struct fdisk_partition *pa, int enable); -extern int fdisk_partition_start_follow_default(struct fdisk_partition *pa, int enable); extern int fdisk_partition_end_follow_default(struct fdisk_partition *pa, int enable); extern int fdisk_partition_end_is_default(struct fdisk_partition *pa); -extern int fdisk_partition_start_is_default(struct fdisk_partition *pa); extern int fdisk_reorder_partitions(struct fdisk_context *cxt); |