conf: Split up virStoragePoolSourceAdapter

Create typedef'd substructures and rework typedef to utilize.

Signed-off-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
John Ferlan 2017-03-10 11:21:12 -05:00
parent 5e0af53512
commit 9c286868b1

View File

@ -179,19 +179,18 @@ typedef enum {
} virStoragePoolSourceAdapterType;
VIR_ENUM_DECL(virStoragePoolSourceAdapter)
typedef struct _virStoragePoolSourceAdapter virStoragePoolSourceAdapter;
typedef virStoragePoolSourceAdapter *virStoragePoolSourceAdapterPtr;
struct _virStoragePoolSourceAdapter {
int type; /* virStoragePoolSourceAdapterType */
union {
struct {
typedef struct _virStorageAdapterSCSIHost virStorageAdapterSCSIHost;
typedef virStorageAdapterSCSIHost *virStorageAdapterSCSIHostPtr;
struct _virStorageAdapterSCSIHost {
char *name;
virPCIDeviceAddress parentaddr; /* host address */
int unique_id;
bool has_parent;
} scsi_host;
struct {
};
typedef struct _virStorageAdapterFCHost virStorageAdapterFCHost;
typedef virStorageAdapterFCHost *virStorageAdapterFCHostPtr;
struct _virStorageAdapterFCHost {
char *parent;
char *parent_wwnn;
char *parent_wwpn;
@ -199,7 +198,16 @@ struct _virStoragePoolSourceAdapter {
char *wwnn;
char *wwpn;
int managed; /* enum virTristateSwitch */
} fchost;
};
typedef struct _virStoragePoolSourceAdapter virStoragePoolSourceAdapter;
typedef virStoragePoolSourceAdapter *virStoragePoolSourceAdapterPtr;
struct _virStoragePoolSourceAdapter {
int type; /* virStoragePoolSourceAdapterType */
union {
virStorageAdapterSCSIHost scsi_host;
virStorageAdapterFCHost fchost;
} data;
};