[syslinux:master] efi: Provide feedback on Configure() failures

syslinux-bot for Gene Cumm gene.cumm at gmail.com
Sun Jul 19 03:36:06 PDT 2015


Commit-ID:  862dd3950e73e18fd261b55c3847c6ba5bcf70ff
Gitweb:     http://www.syslinux.org/commit/862dd3950e73e18fd261b55c3847c6ba5bcf70ff
Author:     Gene Cumm <gene.cumm at gmail.com>
AuthorDate: Sat, 18 Jul 2015 07:51:20 -0400
Committer:  Gene Cumm <gene.cumm at gmail.com>
CommitDate: Sat, 18 Jul 2015 07:51:20 -0400

efi: Provide feedback on Configure() failures

There are more unsuccessful returns that are ignored.  Restructure to
allow for trapping other values.

Signed-off-by: Gene Cumm <gene.cumm at gmail.com>

---
 efi/tcp.c | 8 +++++---
 efi/udp.c | 8 +++++---
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/efi/tcp.c b/efi/tcp.c
index b90efaf..627028a 100644
--- a/efi/tcp.c
+++ b/efi/tcp.c
@@ -72,9 +72,7 @@ int core_tcp_connect(struct pxe_pvt_inode *socket, uint32_t ip, uint16_t port)
     last = start = jiffies();
     while (unmapped){
 	status = uefi_call_wrapper(tcp->Configure, 2, tcp, &tdata);
-	if (status != EFI_NO_MAPPING)
-		unmapped = 0;
-	else {
+	if (status == EFI_NO_MAPPING) {
 	    cur = jiffies();
 	    if ( (cur - last) >= EFI_NOMAP_PRINT_DELAY ) {
 		last = cur;
@@ -83,6 +81,10 @@ int core_tcp_connect(struct pxe_pvt_inode *socket, uint32_t ip, uint16_t port)
 		Print(L"core_tcp_connect: aborting on no mapping\n");
 		unmapped = 0;
 	    }
+	} else {
+	    if (status != EFI_SUCCESS)
+		Print(L"core_tcp_connect: tcp->Configure() unsuccessful (%i)", status);
+	    unmapped = 0;
 	}
     }
     if (status != EFI_SUCCESS)
diff --git a/efi/udp.c b/efi/udp.c
index 7c1d09e..5ada046 100644
--- a/efi/udp.c
+++ b/efi/udp.c
@@ -38,9 +38,7 @@ EFI_STATUS core_udp_configure(EFI_UDP4 *udp, EFI_UDP4_CONFIG_DATA *udata,
     last = start = jiffies();
     while (unmapped){
 	status = uefi_call_wrapper(udp->Configure, 2, udp, udata);
-	if (status != EFI_NO_MAPPING)
-		unmapped = 0;
-	else {
+	if (status == EFI_NO_MAPPING) {
 	    cur = jiffies();
 	    if ( (cur - last) >= EFI_NOMAP_PRINT_DELAY ) {
 		last = cur;
@@ -49,6 +47,10 @@ EFI_STATUS core_udp_configure(EFI_UDP4 *udp, EFI_UDP4_CONFIG_DATA *udata,
 		Print(L"%s: aborting on no mapping\n", f);
 		unmapped = 0;
 	    }
+	} else {
+	    if (status != EFI_SUCCESS)
+		Print(L"%s: udp->Configure() unsuccessful (%i)", f, status);
+	    unmapped = 0;
 	}
     }
     return status;


More information about the Syslinux-commits mailing list