16 const char *device_type_display_name(enum device_type type);
17 const char *device_type_name(enum device_type type);
18 enum device_type find_device_type(const char *str);
22 enum device_type type;
28 struct list boot_options;
39 char *boot_image_file;
45 struct list_item list;
52 char *boot_image_file;
68 struct interface_info {
69 unsigned int hwaddr_size;
75 struct blockdev_info {
84 struct interface_info **interfaces;
85 unsigned int n_interfaces;
86 struct blockdev_info **blockdevs;
87 unsigned int n_blockdevs;
92 struct interface_config {
93 uint8_t hwaddr[HWADDR_SIZE];
109 struct network_config {
110 struct interface_config **interfaces;
111 unsigned int n_interfaces;
112 const char **dns_servers;
113 unsigned int n_dns_servers;
116 struct boot_priority {
117 /* Boot options with higher priority values will take precedence over
118 * lower values. Negative priorities signify "don't boot this by
122 enum device_type type;
125 struct autoboot_option {
131 enum device_type type;
137 bool autoboot_enabled;
138 unsigned int autoboot_timeout_sec;
139 struct network_config network;
141 struct boot_priority *boot_priorities;
142 unsigned int n_boot_priorities;
146 unsigned int ipmi_bootdev;
147 bool ipmi_bootdev_persistent;
151 /* not user-settable */
156 #endif /* _TYPES_H */