diff options
Diffstat (limited to 'com32/lib/syslinux/pxe_get_cached.c')
-rw-r--r-- | com32/lib/syslinux/pxe_get_cached.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/com32/lib/syslinux/pxe_get_cached.c b/com32/lib/syslinux/pxe_get_cached.c index 47040378..a090a4c9 100644 --- a/com32/lib/syslinux/pxe_get_cached.c +++ b/com32/lib/syslinux/pxe_get_cached.c @@ -43,7 +43,6 @@ int pxe_get_cached_info(int level, void **buf, size_t * len) { const int max_dhcp_packet = 2048; - com32sys_t regs; t_PXENV_GET_CACHED_INFO *gci; void *bbuf, *nbuf; int err; @@ -52,12 +51,6 @@ int pxe_get_cached_info(int level, void **buf, size_t * len) if (!gci) return -1; - memset(®s, 0, sizeof regs); - regs.eax.w[0] = 0x0009; - regs.ebx.w[0] = PXENV_GET_CACHED_INFO; - regs.es = SEG(gci); - /* regs.edi.w[0] = OFFS(gci); */ - bbuf = &gci[1]; gci->Status = PXENV_STATUS_FAILURE; @@ -66,9 +59,9 @@ int pxe_get_cached_info(int level, void **buf, size_t * len) gci->Buffer.seg = SEG(bbuf); gci->Buffer.offs = OFFS(bbuf); - __intcall(0x22, ®s, ®s); + err = pxe_call(PXENV_GET_CACHED_INFO, gci); - if (regs.eflags.l & EFLAGS_CF) { + if (err) { err = -1; goto exit; } |