summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--discover/user-event.c2
-rw-r--r--test/parser/Makefile.am1
-rw-r--r--test/parser/test-pxe-mac-without-conf.c2
-rw-r--r--test/parser/test-pxe-pathprefix-discover-mac.c39
4 files changed, 42 insertions, 2 deletions
diff --git a/discover/user-event.c b/discover/user-event.c
index dc671d9..1e366ee 100644
--- a/discover/user-event.c
+++ b/discover/user-event.c
@@ -208,7 +208,7 @@ static char *parse_mac_addr(struct discover_context *ctx, const char *mac)
mac_addr_arr + 2, mac_addr_arr + 3, mac_addr_arr + 4,
mac_addr_arr + 5);
- mac_addr = talloc_asprintf(ctx, "01-%02X-%02X-%02X-%02X-%02X-%02X",
+ mac_addr = talloc_asprintf(ctx, "01-%02x-%02x-%02x-%02x-%02x-%02x",
mac_addr_arr[0], mac_addr_arr[1], mac_addr_arr[2],
mac_addr_arr[3], mac_addr_arr[4], mac_addr_arr[5]);
diff --git a/test/parser/Makefile.am b/test/parser/Makefile.am
index fdc53e3..7940f9d 100644
--- a/test/parser/Makefile.am
+++ b/test/parser/Makefile.am
@@ -65,6 +65,7 @@ TESTS = \
test-pxe-pathprefix-with-conf \
test-pxe-non-url-pathprefix-with-conf \
test-pxe-pathprefix-discover \
+ test-pxe-pathprefix-discover-mac \
test-unresolved-remove
$(TESTS): %: %.embedded-config.o
diff --git a/test/parser/test-pxe-mac-without-conf.c b/test/parser/test-pxe-mac-without-conf.c
index 8c0b561..e42e374 100644
--- a/test/parser/test-pxe-mac-without-conf.c
+++ b/test/parser/test-pxe-mac-without-conf.c
@@ -16,7 +16,7 @@ void run_test(struct parser_test *test)
struct discover_context *ctx;
test_read_conf_embedded_url(test,
- "tftp://host/dir/01-12-34-56-78-9A-BC");
+ "tftp://host/dir/01-12-34-56-78-9a-bc");
test_set_event_source(test);
test_set_event_param(test->ctx->event, "bootfile", "dir/pxe");
diff --git a/test/parser/test-pxe-pathprefix-discover-mac.c b/test/parser/test-pxe-pathprefix-discover-mac.c
new file mode 100644
index 0000000..2decb46
--- /dev/null
+++ b/test/parser/test-pxe-pathprefix-discover-mac.c
@@ -0,0 +1,39 @@
+
+#include "parser-test.h"
+
+#if 0 /* PARSER_EMBEDDED_CONFIG */
+default linux
+
+label linux
+kernel ./kernel
+append command line
+initrd /initrd
+#endif
+
+void run_test(struct parser_test *test)
+{
+ struct discover_boot_option *opt;
+ struct discover_context *ctx;
+
+ test_read_conf_embedded_url(test,
+ "tftp://host/path/to/01-12-34-56-78-9a-bc");
+
+ test_set_event_source(test);
+ test_set_event_param(test->ctx->event, "mac", "12:34:56:78:9a:bc");
+ test_set_event_param(test->ctx->event, "pxepathprefix",
+ "tftp://host/path/to/");
+
+ test_run_parser(test, "pxe");
+
+ ctx = test->ctx;
+
+ check_boot_option_count(ctx, 1);
+ opt = get_boot_option(ctx, 0);
+
+ check_name(opt, "linux");
+ check_args(opt, "command line");
+
+ check_resolved_url_resource(opt->boot_image,
+ "tftp://host/path/to/./kernel");
+ check_resolved_url_resource(opt->initrd, "tftp://host/initrd");
+}
OpenPOWER on IntegriCloud