[syslinux] syslinux.efi [PXELINUX EFI 64 boot] not properly TFTP'ing ldlinux.e64

Spike White spikewhitetx at gmail.com
Fri Mar 14 16:30:50 PDT 2014

H Peter,

I notice the Intel Boot Agent (in the BOOT ROM) takes a different
approach.  When TFTP loading the initial syslinux.efi.

It receives the OACK with both options set -- tsize (of 145744)
and blksize (of 1408).

Apparently it has challenges parsing this "two option" OACK packet.

But it remembers the tsize of 145744.  So it issues another read
request, this time requesting only a blksize option.

Then it gets back an OACK with only one option (the blksize of 1408).
Apparently it correctly parse this, because then the data transfer of
syslinux.efi ensues.

Not quite as efficient, but it works.

It was 6.02 syslinux that was exhibiting this "two-option" confusion;
6.03-pre6 pre-compiled binaries load fine.  So I'm good, prefer not
to further analyze 6.02 quirks.

BTW, I did try disallowing each option separately and also both options.
I tried both tftp-hpa and atftpd, so I forget on which one I did the
No love -- on 6.02.  6.03-pre6 is good w/ no disabling required.


> From: "H. Peter Anvin" <hpa at zytor.com>
> To: For discussion of Syslinux and tftp-hpa <syslinux at zytor.com>
> Subject: Re: [syslinux] syslinux.efi [PXELINUX EFI 64 boot] not
>         properly TFTP'ing ldlinux.e64
> Message-ID: <532325F0.6040103 at zytor.com>
> Content-Type: text/plain; charset=ISO-8859-1
> On 03/10/2014 08:00 PM, Spike White wrote:
> >
> > What seems to confuse it is that it gets back both acknowledgements in
> > same TFTP option acknowledgement packet.  That is, the TFTP server's
> > acknowledgement packet has tsize option acknowledgement (tsize = 145744)
> > and also blksize option acknowledgement (blksize = 1408).

More information about the Syslinux mailing list