]> git.ozlabs.org Git - petitboot/blobdiff - lib/types/types.h
ui/ncurses: Keep track of the default boot option
[petitboot] / lib / types / types.h
index d660d6bf9df7bff699e56bb3a7aaa9a5865afa79..39760d91848d150b9c01cc50bc609f77d2ceaf14 100644 (file)
@@ -54,10 +54,31 @@ struct boot_option {
        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 {
@@ -70,14 +91,19 @@ struct boot_command {
        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 {
@@ -85,6 +111,8 @@ struct interface_info {
        uint8_t         *hwaddr;
        char            *name;
        bool            link;
+       char            *address;
+       char            *address_v6;
 };
 
 struct blockdev_info {
@@ -178,4 +206,6 @@ struct config {
        bool                    debug;
 };
 
+bool config_autoboot_active(const struct config *config);
+
 #endif /* _TYPES_H */