- log_info("Pulling '%s'.", url);
-
- r = sd_event_default(&event);
- if (r < 0)
- return log_error_errno(r, "Failed to allocate event loop: %m");
-
- assert_se(sigprocmask_many(SIG_BLOCK, SIGTERM, SIGINT, -1) == 0);
- sd_event_add_signal(event, NULL, SIGTERM, interrupt_signal_handler, NULL);
- sd_event_add_signal(event, NULL, SIGINT, interrupt_signal_handler, NULL);
-
- r = raw_import_new(&import, event, arg_image_root, on_raw_finished, event);
- if (r < 0)
- return log_error_errno(r, "Failed to allocate importer: %m");
-
- r = raw_import_pull(import, url, local, arg_force, arg_verify);
- if (r < 0)
- return log_error_errno(r, "Failed to pull image: %m");
-
- r = sd_event_loop(event);
- if (r < 0)
- return log_error_errno(r, "Failed to run event loop: %m");
-
- log_info("Exiting.");
- return -r;
-}
-
-static void on_dkr_finished(DkrImport *import, int error, void *userdata) {
- sd_event *event = userdata;
- assert(import);
-
- if (error == 0)
- log_info("Operation completed successfully.");
-
- sd_event_exit(event, abs(error));
-}
-
-static int pull_dkr(int argc, char *argv[], void *userdata) {
- _cleanup_(dkr_import_unrefp) DkrImport *import = NULL;
- _cleanup_event_unref_ sd_event *event = NULL;
- const char *name, *tag, *local;
- int r;