[efi] Fix Coverity warning about unintended sign extension

The result of multiplying a uint16_t by another uint16_t will be a
signed int.  Comparing this against a size_t will perform an unwanted
sign extension.

Fix by explicitly casting e_phnum to an unsigned int, thereby matching
the data type used for the loop index variable (and avoiding the
unwanted sign extension).

This mirrors wimboot commit 15f6162 ("[efi] Fix Coverity warning about
unintended sign extension").

Signed-off-by: Michael Brown <mcb30@ipxe.org>
diff --git a/src/util/elf2efi.c b/src/util/elf2efi.c
index 3bf6cbf..29e4f24 100644
--- a/src/util/elf2efi.c
+++ b/src/util/elf2efi.c
@@ -440,8 +440,8 @@
 
 	/* Check program headers */
 	if ( ( elf->len < ehdr->e_phoff ) ||
-	     ( ( elf->len - ehdr->e_phoff ) < ( ehdr->e_phnum *
-						ehdr->e_phentsize ) ) ) {
+	     ( ( elf->len - ehdr->e_phoff ) <
+	       ( ( ( unsigned int ) ehdr->e_phnum ) * ehdr->e_phentsize ) ) ) {
 		eprintf ( "ELF program headers outside file in %s\n", name );
 		exit ( 1 );
 	}