[ipxe-devel] Backslash in chain scripts converted to %5c - escaping issue

Oliver Rath rath at mglug.de
Wed May 30 11:13:46 UTC 2012


Hi Alex

Am 30.05.2012 12:59, schrieb Oliver Rath:
> [..]
>
> Am 30.05.2012 12:42, schrieb Alex Davies:
>> Hi All,
>>
>> If I enter iPXE shell and enter "chain \boot\x86\pxelinux.0",
>> everything works - it pulls this file via TFTP from next-server.
>>
>> If I put the same string in a iPXE script and chain that via HTTP,
>> there is an escaping issue (the slashes are converted to %5C). I have
>> tried double slashing and adding quotes to no avail (these escape
>> characters are simply converted too).
>>
>> Is there another way?
>>
> You can take i.e. the builtin tftp-server of dnsmasq (if you are using
> i.e. linux as server). It converts all "\" to "/" in path by default.
> Addtionally, in dnsmasq 2.61 exists the new --tftp-lowercase option,
> which converts als chars to lowercase.
>

Maybe ive read it not careful enough: It seems you are having a
windows-based web-server on the other side? So it is really easy: forget
the "\", you can set the directory in your webserver configuration so
you dont need it set in ipxe. So say "chain pxelinux.0" and give the
webserver the information where to find the file. Additionally, the
directory-structure in URL is alsways done by "/", but every webserver
can interpret it in ther right way, if you persist on the path.

The only way you need "\" in the path is a windows-based tftp-server. In
http-context you never will need it.

Hth!

Oliver




More information about the ipxe-devel mailing list