-
Notifications
You must be signed in to change notification settings - Fork 56
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
lib/url: Include port in pb_url_to_string()
And include a pxe-parser test which uses a port in the path prefix to exercise this. This could cause PXE discovery failures if parameters such as pathprefix included a port in the URL. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> (cherry picked from commit 28d0d70)
- Loading branch information
Showing
3 changed files
with
50 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
|
||
#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, | ||
"http://host:8080/path/to/pxelinux.cfg/default"); | ||
|
||
test_set_event_source(test); | ||
test_set_event_param(test->ctx->event, "ip", "192.168.0.1"); | ||
test_set_event_param(test->ctx->event, "pxepathprefix", | ||
"http://host:8080/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, | ||
"http://host:8080/path/to/./kernel"); | ||
check_resolved_url_resource(opt->initrd, | ||
"http://host:8080/path/to/initrd"); | ||
} |