discover: Recognise and open LUKS encrypted partitions
[petitboot] / discover / boot.h
index 2d99b7fb58a5e9de1eedb8444c57bbff4020842f..7fe285b7b831c3c5ec7e33ea7474e7b48287c4a3 100644 (file)
@@ -7,7 +7,7 @@
 struct boot_option;
 struct boot_command;
 
-typedef void (*boot_status_fn)(void *arg, struct boot_status *);
+typedef void (*boot_status_fn)(void *arg, struct status *);
 
 struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
                struct boot_command *cmd, int dry_run,
@@ -16,9 +16,6 @@ struct boot_task *boot(void *ctx, struct discover_boot_option *opt,
 void boot_cancel(struct boot_task *task);
 
 struct boot_task {
-       struct load_url_result *image;
-       struct load_url_result *initrd;
-       struct load_url_result *dtb;
        const char *local_image;
        const char *local_initrd;
        const char *local_dtb;
@@ -26,21 +23,27 @@ struct boot_task {
        char *local_initrd_override;
        char *local_dtb_override;
        const char *args;
-       const char *boot_tty;
+       const char *boot_console;
        boot_status_fn status_fn;
        void *status_arg;
        bool dry_run;
        bool cancelled;
        bool verify_signature;
        bool decrypt_files;
-       struct load_url_result *image_signature;
-       struct load_url_result *initrd_signature;
-       struct load_url_result *dtb_signature;
-       struct load_url_result *cmdline_signature;
        const char *local_image_signature;
        const char *local_initrd_signature;
        const char *local_dtb_signature;
        const char *local_cmdline_signature;
+       struct list resources;
+};
+
+struct boot_resource {
+       struct load_url_result *result;
+       struct pb_url *url;
+       const char **local_path;
+       const char *name;
+
+       struct list_item list;
 };
 
 enum {