X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=discover%2Fpxe-parser.c;h=ff867229e5fa9b32c238509a9f89dea9cb32ba53;hp=c2d0ed53b51eb41c3b9a4bb14683c03a8595f6ac;hb=4c55c0778e983c41418effecdbd96437b43a5513;hpb=79218d4fcb8cbf7e8844c13ccef3307d7424eb9d diff --git a/discover/pxe-parser.c b/discover/pxe-parser.c index c2d0ed5..ff86722 100644 --- a/discover/pxe-parser.c +++ b/discover/pxe-parser.c @@ -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);