X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=lib%2Ftypes%2Ftypes.h;h=433a37b2578d9a58d03074761c447b684d474dd1;hp=c2de8a5bab215ec31cbc399e8e5cabb625a86f4e;hb=5f8fa2c151b8f0e568dc4015b7d307250b354a04;hpb=32d3249e252fe201eb81155cbf3b800ce5cf88e0 diff --git a/lib/types/types.h b/lib/types/types.h index c2de8a5..433a37b 100644 --- a/lib/types/types.h +++ b/lib/types/types.h @@ -11,6 +11,7 @@ enum device_type { DEVICE_TYPE_USB, DEVICE_TYPE_OPTICAL, DEVICE_TYPE_ANY, + DEVICE_TYPE_LUKS, DEVICE_TYPE_UNKNOWN, }; @@ -52,11 +53,33 @@ struct boot_option { char *initrd_file; char *dtb_file; char *boot_args; + char *args_sig_file; bool is_default; + bool is_autoboot_default; struct list_item list; void *ui_info; + + enum { + DISCOVER_BOOT_OPTION, + DISCOVER_PLUGIN_OPTION, + } type; +}; + +struct plugin_option { + char *id; + char *name; + char *vendor; + char *vendor_id; + char *version; + char *date; + char *plugin_file; + + unsigned int n_executables; + char **executables; + + void *ui_info; }; struct boot_command { @@ -65,16 +88,23 @@ struct boot_command { char *initrd_file; char *dtb_file; char *boot_args; + char *args_sig_file; + char *console; }; -struct boot_status { - enum { - BOOT_STATUS_INFO, - BOOT_STATUS_ERROR, +struct status { + enum status_type { + STATUS_INFO, + STATUS_ERROR, } type; char *message; - char *detail; - int progress; + bool backlog; + bool boot_active; +}; + +struct statuslog_entry { + struct status *status; + struct list_item list; }; struct interface_info { @@ -82,6 +112,8 @@ struct interface_info { uint8_t *hwaddr; char *name; bool link; + char *address; + char *address_v6; }; struct blockdev_info { @@ -93,6 +125,14 @@ struct blockdev_info { struct system_info { char *type; char *identifier; + char **platform_primary; + char **platform_other; + unsigned int n_primary; + unsigned int n_other; + char **bmc_current; + char **bmc_golden; + unsigned int n_bmc_current; + unsigned int n_bmc_golden; uint8_t *bmc_mac; struct interface_info **interfaces; unsigned int n_interfaces; @@ -118,6 +158,7 @@ struct interface_config { char *url; } static_config; }; + bool override; }; struct network_config { @@ -148,15 +189,25 @@ struct config { unsigned int ipmi_bootdev; bool ipmi_bootdev_persistent; + bool ipmi_bootdev_mailbox; + + char *http_proxy; + char *https_proxy; bool allow_writes; + char *boot_console; + bool manual_console; char *lang; /* not user-settable */ + unsigned int n_consoles; + char **consoles; bool disable_snapshots; bool safe_mode; bool debug; }; +bool config_autoboot_active(const struct config *config); + #endif /* _TYPES_H */