[syslinux] comboot+PXE stack

H. Peter Anvin hpa at zytor.com
Tue Nov 23 18:24:26 PST 2004

> 1) How to transfer IP address and other options from PXElinux to comboot?
> 2) I got PXE specification, ver. 2.1 (sept. 1999); can I follow it safely?
> 3) Is there an easy interface to use PXE stack (easier than calling INTs)?

1. You need to call the PXE stack's GET CACHED INFO function and extract the 
relevant information from there.  Right now there is no API function which 
gets that preparsed; on the other hand, you get a *lot* of information that way.

2. Mostly.  When PXELINUX runs, PXE is set up to run in UDP mode, so you need 
to shut down the UDP stack (AND RESTART IT!) if you want to use the TFTP or 
the UNDI functions.  Most of the API functions will call the UDP stack, so 
this isn't really very safe.  For sending or receiving UDP packets, though, it 
should work fine (don't call the setup and shutdown routines, though.)

Invoking the keyboard functions will poll for UDP packets and discard them. 
This is to keep ARP alive.

3. INT 22h, AX=0009h does this; this is in many ways simpler than calling the 
PXE stack directly, because you don't have to worry about the fact that 
different PXE versions have different calling conventions.


More information about the Syslinux mailing list