struct guestfs_lvm_pv {
char *pv_name;
/* The next field is NOT nul-terminated, be careful when printing it: */
char pv_uuid[32];
char *pv_fmt;
uint64_t pv_size;
uint64_t dev_size;
uint64_t pv_free;
uint64_t pv_used;
char *pv_attr;
int64_t pv_pe_count;
int64_t pv_pe_alloc_count;
char *pv_tags;
uint64_t pe_start;
int64_t pv_mda_count;
uint64_t pv_mda_free;
struct guestfs_lvm_pv_list {
uint32_t len; /* Number of elements in list. */
struct guestfs_lvm_pv *val; /* Elements. */
};
void guestfs_free_lvm_pv_list (struct guestfs_free_lvm_pv_list *);
struct guestfs_lvm_vg {
char *vg_name;
/* The next field is NOT nul-terminated, be careful when printing it: */
char vg_uuid[32];
char *vg_fmt;
char *vg_attr;
uint64_t vg_size;
uint64_t vg_free;
char *vg_sysid;
uint64_t vg_extent_size;
int64_t vg_extent_count;
int64_t vg_free_count;
int64_t max_lv;
int64_t max_pv;
int64_t pv_count;
int64_t lv_count;
int64_t snap_count;
int64_t vg_seqno;
char *vg_tags;
int64_t vg_mda_count;
uint64_t vg_mda_free;
struct guestfs_lvm_vg_list {
uint32_t len; /* Number of elements in list. */
struct guestfs_lvm_vg *val; /* Elements. */
};
void guestfs_free_lvm_vg_list (struct guestfs_free_lvm_vg_list *);
struct guestfs_lvm_lv {
char *lv_name;
/* The next field is NOT nul-terminated, be careful when printing it: */
char lv_uuid[32];
char *lv_attr;
int64_t lv_major;
int64_t lv_minor;
int64_t lv_kernel_major;
int64_t lv_kernel_minor;
uint64_t lv_size;
int64_t seg_count;
char *origin;
/* The next field is [0..100] or -1 meaning 'not present': */
float snap_percent;
/* The next field is [0..100] or -1 meaning 'not present': */
float copy_percent;
char *move_pv;
char *lv_tags;
char *mirror_log;
char *modules;
struct guestfs_lvm_lv_list {
uint32_t len; /* Number of elements in list. */
struct guestfs_lvm_lv *val; /* Elements. */
};
void guestfs_free_lvm_lv_list (struct guestfs_free_lvm_lv_list *);