[syslinux:elflink] pxe: Add PXELINUX-specific symbols to symbol whitelist

syslinux-bot for Matt Fleming matt.fleming at intel.com
Mon Jan 21 06:39:12 PST 2013


Commit-ID:  13dfb1d1629900c39bb10515b41115a07a9e230f
Gitweb:     http://www.syslinux.org/commit/13dfb1d1629900c39bb10515b41115a07a9e230f
Author:     Matt Fleming <matt.fleming at intel.com>
AuthorDate: Mon, 21 Jan 2013 14:16:12 +0000
Committer:  Matt Fleming <matt.fleming at intel.com>
CommitDate: Mon, 21 Jan 2013 14:16:12 +0000

pxe: Add PXELINUX-specific symbols to symbol whitelist

We need to allow PXELINUX to link with required symbols at runtime
otherwise, when executing prdhcp.c32, the user will be presented with
the following message,

  Error: An undefined symbol was referenced

Add pxe_call, dns_resolv and unload_pxe to the symbol whitelist.

Reported-by: Gene Cumm <gene.cumm at gmail.com>
Signed-off-by: Matt Fleming <matt.fleming at intel.com>

---
 core/fs/pxe/dnsresolv.c | 2 +-
 core/fs/pxe/pxe.c       | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/core/fs/pxe/dnsresolv.c b/core/fs/pxe/dnsresolv.c
index fda0f81..184bacb 100644
--- a/core/fs/pxe/dnsresolv.c
+++ b/core/fs/pxe/dnsresolv.c
@@ -170,7 +170,7 @@ static char *dns_skiplabel(char *label)
  *
  * XXX: probably need some caching here.
  */
-uint32_t dns_resolv(const char *name)
+__export uint32_t dns_resolv(const char *name)
 {
     static char __lowmem DNSSendBuf[PKTBUF_SIZE];
     static char __lowmem DNSRecvBuf[PKTBUF_SIZE];
diff --git a/core/fs/pxe/pxe.c b/core/fs/pxe/pxe.c
index 1127004..ae44cff 100644
--- a/core/fs/pxe/pxe.c
+++ b/core/fs/pxe/pxe.c
@@ -254,7 +254,7 @@ static const char *parse_dotquad(const char *ip_str, uint32_t *res)
  * the ASM pxenv function wrapper, return 1 if error, or 0
  *
  */
-int pxe_call(int opcode, void *data)
+__export int pxe_call(int opcode, void *data)
 {
     extern void pxenv(void);
     com32sys_t regs;
@@ -1656,7 +1656,7 @@ int reset_pxe(void)
  * This function unloads the PXE and UNDI stacks and
  * unclaims the memory.
  */
-void unload_pxe(uint16_t flags)
+__export void unload_pxe(uint16_t flags)
 {
     /* PXE unload sequences */
     static const uint8_t new_api_unload[] = {


More information about the Syslinux-commits mailing list