diff options
author | Karel Zak | 2012-12-05 15:07:19 +0100 |
---|---|---|
committer | Karel Zak | 2013-03-11 11:20:40 +0100 |
commit | 8adbcf0ce9f6f7c7e53d59e7d43ab9fe87ff5d56 (patch) | |
tree | f4e70809f83434725e09d0fec20c71862598970f /libfdisk/src/libfdisk.h | |
parent | libfdisk: add alignment code (diff) | |
download | kernel-qcow2-util-linux-8adbcf0ce9f6f7c7e53d59e7d43ab9fe87ff5d56.tar.gz kernel-qcow2-util-linux-8adbcf0ce9f6f7c7e53d59e7d43ab9fe87ff5d56.tar.xz kernel-qcow2-util-linux-8adbcf0ce9f6f7c7e53d59e7d43ab9fe87ff5d56.zip |
libfdisk: add generic label code
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libfdisk/src/libfdisk.h')
-rw-r--r-- | libfdisk/src/libfdisk.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libfdisk/src/libfdisk.h b/libfdisk/src/libfdisk.h index 33187fe5a..6ea08bdb0 100644 --- a/libfdisk/src/libfdisk.h +++ b/libfdisk/src/libfdisk.h @@ -28,6 +28,20 @@ extern "C" { struct fdisk_context; struct fdisk_parttype; +/* + * Supported partition table types (labels) + */ +enum fdisk_labeltype { + FDISK_DISKLABEL_DOS = 1, + FDISK_DISKLABEL_SUN = 2, + FDISK_DISKLABEL_SGI = 4, + FDISK_DISKLABEL_AIX = 8, + FDISK_DISKLABEL_OSF = 16, + FDISK_DISKLABEL_MAC = 32, + FDISK_DISKLABEL_GPT = 64, + FDISK_DISKLABEL_ANY = -1 +}; + /* init.c */ extern void fdisk_init_debug(int mask); @@ -42,6 +56,18 @@ extern struct fdisk_parttype *fdisk_new_unknown_parttype(unsigned int type, cons extern void fdisk_free_parttype(struct fdisk_parttype *type); extern size_t fdisk_get_nparttypes(struct fdisk_context *cxt); +/* label.c */ +extern int fdisk_dev_has_disklabel(struct fdisk_context *cxt); + +extern int fdisk_dev_is_disklabel(struct fdisk_context *cxt, enum fdisk_labeltype l); +#define fdisk_is_disklabel(c, x) fdisk_dev_is_disklabel(c, FDISK_DISKLABEL_ ## x) + +extern int fdisk_write_disklabel(struct fdisk_context *cxt); +extern int fdisk_verify_disklabel(struct fdisk_context *cxt); + +extern int fdisk_add_partition(struct fdisk_context *cxt, int partnum, struct fdisk_parttype *t); +extern int fdisk_delete_partition(struct fdisk_context *cxt, int partnum); + #ifdef __cplusplus } #endif |