[syslinux:master] pxelinux: give our own IP address in the "derivate info" API call

syslinux-bot for H. Peter Anvin hpa at zytor.com
Sat Feb 6 17:48:12 PST 2010


Commit-ID:  ec7ce064361a4900d27bfe4a2040d4443ca2519c
Gitweb:     http://syslinux.zytor.com/commit/ec7ce064361a4900d27bfe4a2040d4443ca2519c
Author:     H. Peter Anvin <hpa at zytor.com>
AuthorDate: Sat, 6 Feb 2010 16:28:05 -0800
Committer:  H. Peter Anvin <hpa at zytor.com>
CommitDate: Sat, 6 Feb 2010 16:28:48 -0800

pxelinux: give our own IP address in the "derivate info" API call

Add our own IP address to the "get derivative-specific info" API call.

Signed-off-by: H. Peter Anvin <hpa at zytor.com>


---
 com32/include/syslinux/config.h |    2 +-
 core/comboot.inc                |    2 ++
 doc/comboot.txt                 |    1 +
 3 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/com32/include/syslinux/config.h b/com32/include/syslinux/config.h
index 168a516..868b0f1 100644
--- a/com32/include/syslinux/config.h
+++ b/com32/include/syslinux/config.h
@@ -110,7 +110,7 @@ union syslinux_derivative_info {
 	uint32_t _edi, _esi, _ebp, _esp, _ebx;
 	uint16_t apiver;
 	uint16_t _dxh;
-	uint32_t _ecx;
+	uint32_t myip;
 	uint8_t filesystem, ah;
 	uint16_t _axh;
 	uint32_t _eflags;
diff --git a/core/comboot.inc b/core/comboot.inc
index cdba16d..82b158f 100644
--- a/core/comboot.inc
+++ b/core/comboot.inc
@@ -577,6 +577,8 @@ comapi_derinfo:
 		mov P_SI,ax
 		mov ax,[InitStack+2]
 		mov P_FS,ax
+		mov eax,[MyIP]
+		mov P_ECX,eax
 %else
 		; Physical medium...
 
diff --git a/doc/comboot.txt b/doc/comboot.txt
index b3d8e64..4ef10f4 100644
--- a/doc/comboot.txt
+++ b/doc/comboot.txt
@@ -401,6 +401,7 @@ AX=000Ah [2.00]	Get Derivative-Specific Information
 	Input:	AX	000Ah
 	Output:	AL	32h (PXELINUX)
 		DX	PXE API version detected (DH=major, DL=minor)
+		ECX	Local IP number (network byte order) [3.85]
 		ES:BX	pointer to PXENV+ or !PXE structure
 		FS:SI	pointer to original stack with invocation record
 



More information about the Syslinux-commits mailing list