]> git.ozlabs.org Git - petitboot/blobdiff - lib/pb-config/pb-config.h
discover: Implement device priorities
[petitboot] / lib / pb-config / pb-config.h
index cfcf025fee046f9d8d3d142b0ee1cf5de88a91b0..523cada5cab3f745c792ff2d748610ee14f6832e 100644 (file)
@@ -4,9 +4,11 @@
 #include <stdbool.h>
 #include <stdint.h>
 
+#include <types/types.h>
+
 #define HWADDR_SIZE    6
 
-struct network_config {
+struct interface_config {
        uint8_t hwaddr[HWADDR_SIZE];
        bool    ignore;
        enum {
@@ -19,20 +21,33 @@ struct network_config {
                struct {
                        char *address;
                        char *gateway;
-                       char *dns;
                } static_config;
        };
 };
 
+struct network_config {
+       struct interface_config **interfaces;
+       int                     n_interfaces;
+       const char              **dns_servers;
+       int                     n_dns_servers;
+};
+
+struct boot_priority {
+       enum device_type        type;
+};
+
 struct config {
        bool                    autoboot_enabled;
-       struct network_config   **network_configs;
-       int                     n_network_configs;
+       int                     autoboot_timeout_sec;
+       struct network_config   network;
+       struct boot_priority    *boot_priorities;
+       int                     n_boot_priorities;
 };
 
 
 int config_init(void *ctx);
 const struct config *config_get(void);
+void config_set_autoboot(bool autoboot_enabled);
 int config_fini(void);
 
 #endif /* CONFIGURATION_H */