File: pxelinux-c.c

package info (click to toggle)
syslinux 3%3A6.03%2Bdfsg-14.1%2Bdeb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 41,508 kB
  • sloc: ansic: 358,767; asm: 9,608; pascal: 4,809; perl: 3,894; makefile: 2,486; sh: 315; python: 266; xml: 39
file content (25 lines) | stat: -rw-r--r-- 707 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <syslinux/config.h>
#include <com32.h>

extern far_ptr_t InitStack, StrucPtr;

/*
 * IP information.  Note that the field are in the same order as the
 * Linux kernel expects in the ip= option.
 */
struct syslinux_ipinfo IPInfo;
uint16_t APIVer;		/* PXE API version found */

__export void get_derivative_info(union syslinux_derivative_info *di)
{
	di->pxe.filesystem = SYSLINUX_FS_PXELINUX;
	di->pxe.apiver = APIVer;
	di->pxe.pxenvptr = GET_PTR(StrucPtr);
	di->pxe.pxenv_offs = StrucPtr.offs;
	di->pxe.pxenv_seg = StrucPtr.seg;
	di->pxe.stack = GET_PTR(InitStack);
	di->pxe.stack_offs = InitStack.offs;
	di->pxe.stack_seg = InitStack.seg;
	di->pxe.ipinfo = &IPInfo;
	di->pxe.myip = IPInfo.myip;
}