]> git.ozlabs.org Git - petitboot/blobdiff - discover/pxe-parser.c
discover/device-handler: Allow process_url request to be pending
[petitboot] / discover / pxe-parser.c
index 046addbf85959ee25f77de4b36c2e18c7c98fca2..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;
        }
 
@@ -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);