[syslinux] using http from syslinux.efi

BALATON Zoltan balaton at eik.bme.hu
Tue Jul 7 07:12:47 PDT 2015


Hello,

I'm trying to use http from syslinux.efi but it fails while trying to 
establish the connection to a FreeBSD http server. A packet capture shows:

TCP healthd > http [SYN] Seq=0 Win=65535 Len=0 MSS=1460 WS=64 TSval=1094 TSecr=0
TCP http > healthd [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460 WS=64 TSval=1596927428 TSecr=1094
TCP healthd > http [ACK] Seq=1 Ack=1 Win=2097152 Len=0 TSval=1094 TSecr=0
TCP http > healthd [RST] Seq=1 Win=0 Len=0

This is very similar to what we have debugged before with OVMF that was 
caused by incorrect timestamp value in reply and fixed for OVMF with the 
patch mentioned here:

http://www.syslinux.org/archives/2015-April/023402.html

(The debugging we did that time can be found going back in that thread.)

Now I've met this on real hardware where the UEFI implementation may be 
buggy and I cannot fix that. I've already tried to update to latest 
available firmware but that did not help.

Is there any other possibility to have syslinux.efi use another tcp stack 
that may work better and not exhibit this problem or what component is 
setting the TSVal in the ACK reply packet here? I assume it's part of the 
firmware as it is the same as was for OVMF.

Using tftp is not an option as it takes forever to download a 100+ MB 
image and it does not work either as it gets stuck after a while for yet 
unknown reasons. Another option may be to find a less picky http server 
that accepts the wrong reply anyway, but not sure that exists. Has anyone 
had success with syslinux.efi and http?

Regards,
BALATON Zoltan


More information about the Syslinux mailing list