discover: Add safe mode
[petitboot] / lib / types / types.h
index d73f1618e4631ff04738bfeef253d6a305e4c652..0333a02d9aa385b4eb121574813d85e862120bfd 100644 (file)
@@ -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
@@ -100,15 +110,22 @@ struct network_config {
 };
 
 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;
        unsigned int            autoboot_timeout_sec;
+       bool                    safe_mode;
        struct network_config   network;
        struct boot_priority    *boot_priorities;
        unsigned int            n_boot_priorities;
+       char                    *boot_device;
 };
 
 #endif /* _TYPES_H */