]> git.ozlabs.org Git - petitboot/blobdiff - lib/pb-config/pb-config.h
lib/pb-config: Add config_copy
[petitboot] / lib / pb-config / pb-config.h
index cfcf025fee046f9d8d3d142b0ee1cf5de88a91b0..e430301f0381d509d6126b9a462bcc60723f2be1 100644 (file)
@@ -4,36 +4,19 @@
 #include <stdbool.h>
 #include <stdint.h>
 
-#define HWADDR_SIZE    6
-
-struct network_config {
-       uint8_t hwaddr[HWADDR_SIZE];
-       bool    ignore;
-       enum {
-               CONFIG_METHOD_DHCP,
-               CONFIG_METHOD_STATIC,
-       } method;
-       union {
-               struct {
-               } dhcp_config;
-               struct {
-                       char *address;
-                       char *gateway;
-                       char *dns;
-               } static_config;
-       };
-};
-
-struct config {
-       bool                    autoboot_enabled;
-       struct network_config   **network_configs;
-       int                     n_network_configs;
-};
+#include <types/types.h>
 
 
 int config_init(void *ctx);
 const struct config *config_get(void);
+int config_set(struct config *config);
+void config_set_autoboot(bool autoboot_enabled);
 int config_fini(void);
 
+/* for use by the storage backends */
+void config_set_defaults(struct config *config);
+
+struct config *config_copy(void *ctx, const struct config *src);
+
 #endif /* CONFIGURATION_H */