Am 24.11.2011 15:32, schrieb Gerardo Exequiel Pozzi:
> I need to test this, I am going to work now. (working for HTTP, but not
> for TFTP)
> 
> ---- /tmp/pxeboot/arch/boot/syslinux/pxelinux.cfg ----
> DEFAULT loadconfig
> 
> LABEL loadconfig
>   CONFIG /arch/boot/syslinux/syslinux.cfg
>   APPEND /arch/boot/syslinux/
> -------
> dnsmasq --port=0 --enable-tftp --tftp-root=/tmp/pxeboot
> --dhcp-boot=/arch/boot/syslinux/gpxelinux.0,192.168.0.77
> --dhcp-range=192.168.0.2,192.168.0.254,8640 --dhcp-option-force=210,/
> --dhcp-option-force=209,/arch/boot/syslinux/pxelinux.cfg

HTTP servers resolve ".." inside URLs, TFTP servers probably don't. This
could be a showstopper.

However, I think we can work around this whole problem (including the
loadconfig trick) if we teach pxelinux.0 to resolve ../ in path names by
removing path components (in the TFTP client). I'll see if I can wrap up
a patch for pxelinux and get it accepted upstream.

Explanation: TFTP is stupid: It doesn't even understand paths.
pxelinux.0 probably just concatenates the tftp prefix from DHCP with the
file name and sends it as a request. A patch would have to convert
/arch/boot/syslinux/../i686/vmlinuz to /arch/boot/i686/vmlinuz, which
would be an existing file on TFTP.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to