X-Git-Url: https://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=lib%2Ftypes%2Ftypes.h;h=0333a02d9aa385b4eb121574813d85e862120bfd;hp=b71f0dd5903027685d53dade24a3a03b551fd65d;hb=d2b12ddb905a74fa6b2e454142b0b9f71fd99398;hpb=5ac810ae1779fdd730637d146faf8a762bedd522;ds=sidebyside diff --git a/lib/types/types.h b/lib/types/types.h index b71f0dd..0333a02 100644 --- a/lib/types/types.h +++ b/lib/types/types.h @@ -9,6 +9,7 @@ enum device_type { DEVICE_TYPE_NETWORK, DEVICE_TYPE_DISK, DEVICE_TYPE_OPTICAL, + DEVICE_TYPE_ANY, DEVICE_TYPE_UNKNOWN, }; @@ -64,6 +65,13 @@ struct interface_info { unsigned int hwaddr_size; uint8_t *hwaddr; char *name; + bool link; +}; + +struct blockdev_info { + char *name; + char *uuid; + char *mountpoint; }; struct system_info { @@ -71,6 +79,8 @@ struct system_info { char *identifier; struct interface_info **interfaces; unsigned int n_interfaces; + struct blockdev_info **blockdevs; + unsigned int n_blockdevs; }; #define HWADDR_SIZE 6 @@ -94,21 +104,28 @@ struct interface_config { struct network_config { struct interface_config **interfaces; - int n_interfaces; + unsigned int n_interfaces; const char **dns_servers; - int n_dns_servers; + unsigned int n_dns_servers; }; struct boot_priority { + /* Boot options with higher priority values will take precedence over + * lower values. Negative priorities signify "don't boot this by + * default". + */ + int priority; enum device_type type; }; struct config { bool autoboot_enabled; - int autoboot_timeout_sec; + unsigned int autoboot_timeout_sec; + bool safe_mode; struct network_config network; struct boot_priority *boot_priorities; - int n_boot_priorities; + unsigned int n_boot_priorities; + char *boot_device; }; #endif /* _TYPES_H */