+struct network *device_handler_get_network(
+ const struct device_handler *handler);
+
+struct discover_device *discover_device_create(struct device_handler *handler,
+ const char *uuid, const char *id);
+void device_handler_add_device(struct device_handler *handler,
+ struct discover_device *device);
+void device_handler_add_ramdisk(struct device_handler *handler,
+ const char *path);
+struct ramdisk_device *device_handler_get_ramdisk(
+ struct device_handler *handler);
+void device_handler_release_ramdisk(struct discover_device *device);
+int device_handler_discover(struct device_handler *handler,
+ struct discover_device *dev);
+int device_handler_dhcp(struct device_handler *handler,
+ struct discover_device *dev, struct event *event);
+void device_handler_remove(struct device_handler *handler,
+ struct discover_device *device);
+
+void device_handler_status(struct device_handler *handler,
+ struct status *status);
+void device_handler_status_info(struct device_handler *handler,
+ const char *fmt, ...);
+void device_handler_status_err(struct device_handler *handler,
+ const char *fmt, ...);
+void device_handler_status_dev_info(struct device_handler *handler,
+ struct discover_device *dev, const char *fmt, ...);
+void device_handler_status_dev_err(struct device_handler *handler,
+ struct discover_device *dev, const char *fmt, ...);
+void device_handler_status_download(struct device_handler *handler,
+ const struct process_info *procinfo,
+ unsigned int percentage, unsigned int size, char suffix);
+void device_handler_status_download_remove(struct device_handler *handler,
+ struct process_info *procinfo);
+
+struct discover_context *device_handler_discover_context_create(
+ struct device_handler *handler,
+ struct discover_device *device);
+void device_handler_discover_context_commit(struct device_handler *handler,
+ struct discover_context *ctx);