From 79218d4fcb8cbf7e8844c13ccef3307d7424eb9d Mon Sep 17 00:00:00 2001 From: Jeremy Kerr Date: Tue, 13 Dec 2016 10:13:24 +0800 Subject: discover/status: report on PXE download failures Add dev_err messages on both autoconfiguration and specified-configuration download failures. Signed-off-by: Jeremy Kerr Signed-off-by: Samuel Mendoza-Jonas --- discover/pxe-parser.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/discover/pxe-parser.c b/discover/pxe-parser.c index 75d7e7e..c2d0ed5 100644 --- a/discover/pxe-parser.c +++ b/discover/pxe-parser.c @@ -250,18 +250,29 @@ static void pxe_conf_parse_cb(struct load_url_result *result, void *data) if (!data) return; + handler = talloc_parent(conf); + if (result && result->status == LOAD_OK) rc = read_file(conf, result->local, &buf, &len); if (!result || result->status != LOAD_OK || rc) { /* This load failed so try the next available filename */ info = conf->parser_info; - if (!info->pxe_conf_files) + if (!info->pxe_conf_files) { + device_handler_status_dev_err(handler, + conf->dc->device, + _("Failed to download %s"), + pb_url_to_string(result->url)); + return; + } info->current++; pxe_load_next_filename(conf); if (info->pxe_conf_files[info->current] == NULL) { /* Nothing left to try */ + device_handler_status_dev_err(handler, + conf->dc->device, + _("PXE autoconfiguration failed")); goto out_clean; } return; @@ -277,7 +288,6 @@ static void pxe_conf_parse_cb(struct load_url_result *result, void *data) /* We may be called well after the original caller of iterate_parsers(), * commit any new boot options ourselves */ - handler = talloc_parent(conf); device_handler_discover_context_commit(handler, conf->dc); /* -- cgit v1.1