diff options
| author | Michael Brown | 2014-02-27 14:32:53 +0100 |
|---|---|---|
| committer | Michael Brown | 2014-02-27 14:32:53 +0100 |
| commit | 76675365271291beb9ddaeec10da14f4faa55ecc (patch) | |
| tree | 0143200258d478e381b9d492bead2bdda91fe865 /src/core/open.c | |
| parent | [params] Use reference counters for form parameter lists (diff) | |
| download | ipxe-76675365271291beb9ddaeec10da14f4faa55ecc.tar.gz ipxe-76675365271291beb9ddaeec10da14f4faa55ecc.tar.xz ipxe-76675365271291beb9ddaeec10da14f4faa55ecc.zip | |
[uri] Refactor URI parsing and formatting
Add support for parsing of URIs containing literal IPv6 addresses
(e.g. "http://[fe80::69ff:fe50:5845%25net0]/boot.ipxe").
Duplicate URIs by directly copying the relevant fields, rather than by
formatting and reparsing a URI string. This relaxes the requirements
on the URI formatting code and allows it to focus on generating
human-readable URIs (e.g. by not escaping ':' characters within
literal IPv6 addresses). As a side-effect, this allows relative URIs
containing parameter lists (e.g. "../boot.php##params") to function
as expected.
Add validity check for FTP paths to ensure that only printable
characters are accepted (since FTP is a human-readable line-based
protocol with no support for character escaping).
Construct TFTP next-server+filename URIs directly, rather than parsing
a constructed "tftp://..." string,
Add self-tests for URI functions.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/core/open.c')
0 files changed, 0 insertions, 0 deletions
