]> git.ozlabs.org Git - petitboot/blobdiff - discover/pxe-parser.c
lib/system: Add vgscan, vgchange utilities
[petitboot] / discover / pxe-parser.c
index c2d0ed53b51eb41c3b9a4bb14683c03a8595f6ac..ff867229e5fa9b32c238509a9f89dea9cb32ba53 100644 (file)
@@ -227,7 +227,8 @@ static void pxe_load_next_filename(struct conf_context *conf)
                if (!url)
                        continue;
 
-               if (load_url_async(conf, url, pxe_conf_parse_cb, conf))
+               if (load_url_async(conf, url, pxe_conf_parse_cb, conf,
+                                  NULL, NULL))
                        break;
        }
 
@@ -296,7 +297,7 @@ static void pxe_conf_parse_cb(struct load_url_result *result, void *data)
         */
        device_handler_status_dev_info(handler, conf->dc->device,
                        _("Parsed PXE config from %s"),
-                       pb_url_to_string(conf->dc->conf_url));
+                       pb_url_to_string(result->url));
 
        talloc_free(buf);
 out_clean:
@@ -380,11 +381,14 @@ static int pxe_parse(struct discover_context *dc)
 
                /* we have a complete URL; use this and we're done. */
                result = load_url_async(conf->dc, conf->dc->conf_url,
-                                       pxe_conf_parse_cb, conf);
+                                       pxe_conf_parse_cb, conf, NULL, ctx);
                if (!result) {
                        pb_log("load_url_async fails for %s\n",
                                        dc->conf_url->path);
                        goto out_conf;
+               } else if (result->status == LOAD_OK) {
+                       /* Local load - call pxe_conf_parse_cb() now */
+                       pxe_conf_parse_cb(result, conf);
                }
        } else {
                pxe_conf_files = user_event_parse_conf_filenames(dc, dc->event);