public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel] [edk2-libc Patch v2 0/1] Support for compiling Python UEFI interpreter with VS2022
@ 2024-07-20 15:48 Jayaprakash, N
  2024-07-20 15:48 ` [edk2-devel] [edk2-libc Patch v2 1/1] edk2-libc: " Jayaprakash, N
  0 siblings, 1 reply; 3+ messages in thread
From: Jayaprakash, N @ 2024-07-20 15:48 UTC (permalink / raw)
  To: devel; +Cc: Jayaprakash N

This patch fixes the compilation errors seen in edk2-libc components
while compiling Python UEFI. Below is summary of fixes done through
this patch request.

1.AppPkg\Applications\Enquire\Enquire.c
  Warning C4459: Declaration of 'bugs' hides global declaration.
  Warning C4456: Multiple declarations of 'char_max' hide previous
                 local declarations.
  Warning C4456: Declaration of 'char_min' hides previous local
                 declaration.

2.AppPkg\Applications\OrderedCollectionTest\OrderedCollectionTest.c
  Warning C4476: Unknown type field character '$' in format
                 specifier.
  Warning C4474: Too many arguments passed for format string.

3.StdLib\BsdSocketLib\getnetbyht.c
  Warning C4459: Declaration of 'net' hides global declaration.

4.StdLib\EfiSocketLib\Socket.c
  Warning C4459: Multiple declarations of 'errno' hide global
                 declaration.

5.AppPkg\Applications\Sockets\DataSource\DataSource.c
  Warning C4459: Declaration of 'BytesSent' hides global declaration.

6.AppPkg\Applications\Sockets\OobRx\OobRx.c
  Warning C4475: Length modifier 'L' cannot be used with type field
                 character 'd' in format specifier.

7.AppPkg\Applications\Sockets\RawIp4Rx\RawIp4Rx.c
  Warning C4475: Length modifier 'L' cannot be used with type field
                 character 'd' in format specifier.

8.StdLib\BsdSocketLib\ns_print.c
  Warning C4456: Multiple declarations of 't' hide previous local
                 declarations.
  Warning C4457: Declaration of 'type' hides function parameter.

Jayaprakash N (1):
  edk2-libc: Support for compiling Python UEFI interpreter with VS2022

 AppPkg/Applications/Enquire/Enquire.c         | 48 +++++------
 .../OrderedCollectionTest.c                   | 10 +--
 .../Sockets/DataSource/DataSource.c           | 10 +--
 AppPkg/Applications/Sockets/OobRx/OobRx.c     |  6 +-
 .../Applications/Sockets/RawIp4Rx/RawIp4Rx.c  |  4 +-
 StdLib/BsdSocketLib/getnetbyht.c              |  9 ++-
 StdLib/BsdSocketLib/ns_print.c                | 57 +++++++------
 StdLib/EfiSocketLib/Socket.c                  | 80 +++++++++----------
 8 files changed, 117 insertions(+), 107 deletions(-)

-- 
2.45.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#119987): https://edk2.groups.io/g/devel/message/119987
Mute This Topic: https://groups.io/mt/107454080/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 3+ messages in thread

* [edk2-devel] [edk2-libc Patch v2 1/1] edk2-libc: Support for compiling Python UEFI interpreter with VS2022
  2024-07-20 15:48 [edk2-devel] [edk2-libc Patch v2 0/1] Support for compiling Python UEFI interpreter with VS2022 Jayaprakash, N
@ 2024-07-20 15:48 ` Jayaprakash, N
  2024-07-21 21:01   ` Michael D Kinney
  0 siblings, 1 reply; 3+ messages in thread
From: Jayaprakash, N @ 2024-07-20 15:48 UTC (permalink / raw)
  To: devel; +Cc: Jayaprakash N, Rebecca Cran, Michael D Kinney

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4811

While trying to compile Python UEFI 3.6.8 with VS2022, got several
compiler warnings from other components within the edk2-libc project.
These warnings were leading to compilation failure as they were
treated as errors. All these issues have been fixed througn this
commit. Besides this, updated the year in copy right of these file.

Summary of the issues is given below for reference:
1.AppPkg\Applications\Enquire\Enquire.c
  Warning C4459: Declaration of 'bugs' hides global declaration.
  Warning C4456: Multiple declarations of 'char_max' hide previous
                 local declarations.
  Warning C4456: Declaration of 'char_min' hides previous local
                 declaration.

2.AppPkg\Applications\OrderedCollectionTest\OrderedCollectionTest.c
  Warning C4476: Unknown type field character '$' in format
                 specifier.
  Warning C4474: Too many arguments passed for format string.

3.StdLib\BsdSocketLib\getnetbyht.c
  Warning C4459: Declaration of 'net' hides global declaration.

4.StdLib\EfiSocketLib\Socket.c
  Warning C4459: Multiple declarations of 'errno' hide global
                 declaration.

5.AppPkg\Applications\Sockets\DataSource\DataSource.c
  Warning C4459: Declaration of 'BytesSent' hides global declaration.

6.AppPkg\Applications\Sockets\OobRx\OobRx.c
  Warning C4475: Length modifier 'L' cannot be used with type field
                 character 'd' in format specifier.

7.AppPkg\Applications\Sockets\RawIp4Rx\RawIp4Rx.c
  Warning C4475: Length modifier 'L' cannot be used with type field
                 character 'd' in format specifier.

8.StdLib\BsdSocketLib\ns_print.c
  Warning C4456: Multiple declarations of 't' hide previous local
                 declarations.
  Warning C4457: Declaration of 'type' hides function parameter.

Cc: Rebecca Cran <rebecca@bsdio.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Jayaprakash N <n.jayaprakash@intel.com>
Signed-off-by: Jayaprakash N <n.jayaprakash@intel.com>
---
 AppPkg/Applications/Enquire/Enquire.c         | 48 +++++------
 .../OrderedCollectionTest.c                   | 10 +--
 .../Sockets/DataSource/DataSource.c           | 10 +--
 AppPkg/Applications/Sockets/OobRx/OobRx.c     |  6 +-
 .../Applications/Sockets/RawIp4Rx/RawIp4Rx.c  |  4 +-
 StdLib/BsdSocketLib/getnetbyht.c              |  9 ++-
 StdLib/BsdSocketLib/ns_print.c                | 57 +++++++------
 StdLib/EfiSocketLib/Socket.c                  | 80 +++++++++----------
 8 files changed, 117 insertions(+), 107 deletions(-)

diff --git a/AppPkg/Applications/Enquire/Enquire.c b/AppPkg/Applications/Enquire/Enquire.c
index 1e1db69..5e34f48 100644
--- a/AppPkg/Applications/Enquire/Enquire.c
+++ b/AppPkg/Applications/Enquire/Enquire.c
@@ -5,7 +5,7 @@
     Steven Pemberton, CWI, Amsterdam; "Steven.Pemberton@cwi.nl"
     Used with permission.
 
-    Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
+    Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
     This program and the accompanying materials
     are licensed and made available under the terms and conditions of the BSD License
     which accompanies this distribution. The full text of the license may be found at
@@ -918,15 +918,15 @@ memeq(
 }
 
 Void
-farewell(int bugs)
+farewell(int bugs_local)
 {
-  if (bugs == 0) exit(0);
+  if (bugs_local == 0) exit(0);
   printf("\n%sFor hints on dealing with the ", co);
-  if (bugs == 1) printf("problem");
-  else printf("%d problems", bugs);
+  if (bugs_local == 1) printf("problem");
+  else printf("%d problems", bugs_local);
   printf(" above\n   see the section 'TROUBLESHOOTING' in the file ");
   printf("%s%s\n", FILENAME, oc);
-  exit(bugs);
+  exit(bugs_local);
 }
 
 /* The program has received a signal where it wasn't expecting one */
@@ -1927,51 +1927,51 @@ int cprop( void )
 
     if (c_signed) {
 #ifndef NO_UC
-/* Syntax error? Define NO_UC */ Volatile unsigned char c1, char_max;
-      c1=0; char_max=0;
+/* Syntax error? Define NO_UC */ Volatile unsigned char c1, char_max_local;
+      c1=0; char_max_local=0;
       c1++;
-      if (setjmp(lab)==0) { /* Yields char_max */
-        while (c1>char_max) {
-          char_max=c1;
+      if (setjmp(lab)==0) { /* Yields char_max_local */
+        while (c1>char_max_local) {
+          char_max_local=c1;
           c1++;
         }
       }
       Unexpected(4);
       if (sizeof(char) == sizeof(int)) {
         u_define(D_UCHAR_MAX, "", "UCHAR", "_MAX",
-           (ulong) char_max,
+           (ulong) char_max_local,
            (ulong) UCHAR_MAX, "");
       } else {
         i_define(D_UCHAR_MAX, "", "UCHAR", "_MAX",
-           (long) char_max, 0L,
+           (long) char_max_local, 0L,
            (long) UCHAR_MAX, "");
       }
 #endif
     } else {
 #ifndef NO_SC
-/* Syntax error? Define NO_SC */ Volatile signed char c1, char_max, char_min;
-      c1=0; char_max=0;
+/* Syntax error? Define NO_SC */ Volatile signed char c1, char_max_local, char_min_local;
+      c1=0; char_max_local=0;
       c1++;
-      if (setjmp(lab)==0) { /* Yields char_max */
-        while (c1>char_max) {
-          char_max=c1;
+      if (setjmp(lab)==0) { /* Yields char_max_local */
+        while (c1>char_max_local) {
+          char_max_local=c1;
           c1++;
         }
       }
-      c1=0; char_min=0;
+      c1=0; char_min_local=0;
       c1--;
-      if (setjmp(lab)==0) { /* Yields char_min */
-        while (c1<char_min) {
-          char_min=c1;
+      if (setjmp(lab)==0) { /* Yields char_min_local */
+        while (c1<char_min_local) {
+          char_min_local=c1;
           c1--;
         }
       }
       Unexpected(5);
       i_define(D_SCHAR_MIN, "", "SCHAR", "_MIN",
-         (long) char_min, (long) maxint,
+         (long) char_min_local, (long) maxint,
          (long) SCHAR_MIN, "");
       i_define(D_SCHAR_MAX, "", "SCHAR", "_MAX",
-         (long) char_max, 0L,
+         (long) char_max_local, 0L,
          (long) SCHAR_MAX, "");
 #endif /* NO_SC */
     }
diff --git a/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c b/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
index 712ee8f..ea44b31 100644
--- a/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
+++ b/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
@@ -7,7 +7,7 @@
   per default, eg. serial line).
 
   Copyright (C) 2014, Red Hat, Inc.
-  Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
@@ -458,10 +458,10 @@ SetupInputOutput (
 
     case 'h':
       fprintf (stderr,
-        "%1$s: simple OrderedCollectionLib tester\n"
+        "%s: simple OrderedCollectionLib tester\n"
         "\n"
-        "Usage: 1. %1$s [-i InputFile] [-o OutputFile]\n"
-        "       2. %1$s -h\n"
+        "Usage: 1. %s [-i InputFile] [-o OutputFile]\n"
+        "       2. %s -h\n"
         "\n"
         "Options:\n"
         "  -i InputFile : read commands from InputFile\n"
@@ -469,7 +469,7 @@ SetupInputOutput (
         "  -o OutputFile: write command responses to OutputFile\n"
         "                 (will write to stdout if absent)\n"
         "  -h           : print this help and exit\n"
-        "\n", ArgV[0]);
+        "\n", ArgV[0], ArgV[0], ArgV[0]);
       ListCommands ();
       exit (EXIT_SUCCESS);
 
diff --git a/AppPkg/Applications/Sockets/DataSource/DataSource.c b/AppPkg/Applications/Sockets/DataSource/DataSource.c
index 360689e..7f64294 100644
--- a/AppPkg/Applications/Sockets/DataSource/DataSource.c
+++ b/AppPkg/Applications/Sockets/DataSource/DataSource.c
@@ -1,7 +1,7 @@
 /** @file
   Data source for network testing.
 
-  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
+  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
@@ -538,7 +538,7 @@ EFI_STATUS
 SocketSend (
   )
 {
-  size_t BytesSent;
+  size_t BytesSentLocal;
   EFI_STATUS Status;
   EFI_TPL TplPrevious;
 
@@ -562,8 +562,8 @@ SocketSend (
     //
     //  Send some bytes
     //
-    BytesSent = write ( Socket, &Buffer[0], sizeof ( Buffer ));
-    if ( -1 == BytesSent ) {
+    BytesSentLocal = write ( Socket, &Buffer[0], sizeof ( Buffer ));
+    if ( -1 == BytesSentLocal ) {
       DEBUG (( DEBUG_INFO,
                 "ERROR: send failed, errno: %d\r\n",
                 errno ));
@@ -589,7 +589,7 @@ Status = EFI_NOT_STARTED;
     //
     //  Account for the data sent
     //
-    TotalBytesSent += BytesSent;
+    TotalBytesSent += BytesSentLocal;
 
     //
     //  Release the TimerCallback routine synchronization
diff --git a/AppPkg/Applications/Sockets/OobRx/OobRx.c b/AppPkg/Applications/Sockets/OobRx/OobRx.c
index 28e10d8..1eb9497 100644
--- a/AppPkg/Applications/Sockets/OobRx/OobRx.c
+++ b/AppPkg/Applications/Sockets/OobRx/OobRx.c
@@ -1,7 +1,7 @@
 /** @file
   Windows version of the OOB Receive application
 
-  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
+  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
@@ -150,7 +150,7 @@ OobRx (
             //
             //  Display the received OOB data
             //
-            printf ( "%5Ld OOB bytes received\r\n", (UINT64)BytesReceived );
+            printf ( "%5llu OOB bytes received\r\n", (UINT64)BytesReceived );
 
             //
             //  Account for the bytes received
@@ -183,7 +183,7 @@ OobRx (
               //
               //  Display the received data
               //
-              printf ( "%4Ld bytes received\r\n", (UINT64)BytesReceived );
+              printf ( "%4llu bytes received\r\n", (UINT64)BytesReceived );
 
               //
               //  Account for the bytes received
diff --git a/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c b/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
index b52cd38..ae856a0 100644
--- a/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
+++ b/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
@@ -1,7 +1,7 @@
 /** @file
   Raw IP4 receive application
 
-  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
+  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
@@ -157,7 +157,7 @@ RawIp4Rx (
         //  Display the bytes received
         //
         if ( 0 == RetVal ) {
-          printf ( "Total Bytes Received:  %Ld\r\n", TotalBytesReceived );
+          printf ( "Total Bytes Received:  %llu\r\n", TotalBytesReceived );
         }
 
         //
diff --git a/StdLib/BsdSocketLib/getnetbyht.c b/StdLib/BsdSocketLib/getnetbyht.c
index 08b8042..f990c65 100644
--- a/StdLib/BsdSocketLib/getnetbyht.c
+++ b/StdLib/BsdSocketLib/getnetbyht.c
@@ -41,6 +41,11 @@
  * from getnetent.c	1.1 (Coimbra) 93/06/02
  */
 
+/*
+ * Copyright (c) 2023 - 2024, Intel Corporation. All rights reserved.
+ * SPDX-License-Identifier: BSD-2-Clause-Patent
+ */
+
 #if defined(LIBC_SCCS) && !defined(lint)
 static char sccsid[] = "@(#)getnetent.c	8.1 (Berkeley) 6/4/93";
 static char orig_rcsid[] = "From: Id: getnetent.c,v 8.4 1997/06/01 20:34:37 vixie Exp";
@@ -155,13 +160,13 @@ found:
 }
 
 struct netent *
-_getnetbyhtaddr(register unsigned long net, register int type)
+_getnetbyhtaddr(register unsigned long net_local, register int type)
 {
 	register struct netent *p;
 
 	setnetent(_net_stayopen);
 	while ( NULL != (p = getnetent()) )
-		if (p->n_addrtype == type && p->n_net == net)
+        if (p->n_addrtype == type && p->n_net == net_local)
 			break;
 	if (!_net_stayopen)
 		endnetent();
diff --git a/StdLib/BsdSocketLib/ns_print.c b/StdLib/BsdSocketLib/ns_print.c
index ea29d01..75c28de 100644
--- a/StdLib/BsdSocketLib/ns_print.c
+++ b/StdLib/BsdSocketLib/ns_print.c
@@ -55,6 +55,11 @@
  *
  */
 
+/*
+ * Copyright (c) 2023 - 2024, Intel Corporation. All rights reserved.
+ * SPDX-License-Identifier: BSD-2-Clause-Patent
+ */
+
 /* Import. */
 
 #include <sys/types.h>
@@ -211,7 +216,7 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
     break;
 
   case ns_t_soa: {
-    u_long t;
+    u_long t_local;
 
     /* Server name. */
     T(addname(msg, msglen, &rdata, origin, &buf, &buflen));
@@ -226,45 +231,45 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
       goto formerr;
 
     /* Serial number. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
-    len = SPRINTF((tmp, "%lu", (unsigned long)t));
+    len = SPRINTF((tmp, "%lu", (unsigned long)t_local));
     T(addstr(tmp, len, &buf, &buflen));
     T(spaced = addtab(len, 16, spaced, &buf, &buflen));
     T(addstr("; serial\n", 9, &buf, &buflen));
     spaced = 0;
 
     /* Refresh interval. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
-    T(len = ns_format_ttl(t, buf, buflen));
+    T(len = ns_format_ttl(t_local, buf, buflen));
     addlen(len, &buf, &buflen);
     T(spaced = addtab(len, 16, spaced, &buf, &buflen));
     T(addstr("; refresh\n", 10, &buf, &buflen));
     spaced = 0;
 
     /* Retry interval. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
-    T(len = ns_format_ttl(t, buf, buflen));
+    T(len = ns_format_ttl(t_local, buf, buflen));
     addlen(len, &buf, &buflen);
     T(spaced = addtab(len, 16, spaced, &buf, &buflen));
     T(addstr("; retry\n", 8, &buf, &buflen));
     spaced = 0;
 
     /* Expiry. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
-    T(len = ns_format_ttl(t, buf, buflen));
+    T(len = ns_format_ttl(t_local, buf, buflen));
     addlen(len, &buf, &buflen);
     T(spaced = addtab(len, 16, spaced, &buf, &buflen));
     T(addstr("; expiry\n", 9, &buf, &buflen));
     spaced = 0;
 
     /* Minimum TTL. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
-    T(len = ns_format_ttl(t, buf, buflen));
+    T(len = ns_format_ttl(t_local, buf, buflen));
     addlen(len, &buf, &buflen);
     T(addstr(" )", 2, &buf, &buflen));
     T(spaced = addtab(len, 16, spaced, &buf, &buflen));
@@ -276,15 +281,15 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
   case ns_t_mx:
   case ns_t_afsdb:
   case ns_t_rt: {
-    u_int t;
+    u_int t_local;
 
     if (rdlen < NS_INT16SZ)
       goto formerr;
 
     /* Priority. */
-    t = ns_get16(rdata);
+    t_local = ns_get16(rdata);
     rdata += NS_INT16SZ;
-    len = SPRINTF((tmp, "%u ", (unsigned int)t));
+    len = SPRINTF((tmp, "%u ", (unsigned int)t_local));
     T(addstr(tmp, len, &buf, &buflen));
 
     /* Target. */
@@ -294,15 +299,15 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
       }
 
   case ns_t_px: {
-    u_int t;
+    u_int t_local;
 
     if (rdlen < NS_INT16SZ)
       goto formerr;
 
     /* Priority. */
-    t = ns_get16(rdata);
+    t_local = ns_get16(rdata);
     rdata += NS_INT16SZ;
-    len = SPRINTF((tmp, "%u ", (unsigned int)t));
+    len = SPRINTF((tmp, "%u ", (unsigned int)t_local));
     T(addstr(tmp, len, &buf, &buflen));
 
     /* Name1. */
@@ -503,33 +508,33 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
       }
 
   case ns_t_sig: {
-    u_int type, algorithm, labels, footprint;
+    u_int type_local, algorithm, labels, footprint;
     const char *leader;
-    u_long t;
+    u_long t_local;
     int n;
 
     if (rdlen < 22)
       goto formerr;
 
     /* Type covered, Algorithm, Label count, Original TTL. */
-          type = ns_get16(rdata);  rdata += NS_INT16SZ;
+          type_local = ns_get16(rdata);  rdata += NS_INT16SZ;
     algorithm = *rdata++;
     labels = *rdata++;
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
     len = SPRINTF((tmp, " %s %d %lu ",
-                   p_type((int)type), (int)algorithm, (unsigned long)t));
+                   p_type((int)type_local), (int)algorithm, (unsigned long)t_local));
     T(addstr(tmp, len, &buf, &buflen));
     if (labels != (u_int)dn_count_labels(name))
       goto formerr;
 
     /* Signature expiry. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
-    len = SPRINTF((tmp, "%s ", p_secstodate(t)));
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
+    len = SPRINTF((tmp, "%s ", p_secstodate(t_local)));
     T(addstr(tmp, len, &buf, &buflen));
 
     /* Time signed. */
-    t = ns_get32(rdata);  rdata += NS_INT32SZ;
-    len = SPRINTF((tmp, "%s ", p_secstodate(t)));
+    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
+    len = SPRINTF((tmp, "%s ", p_secstodate(t_local)));
     T(addstr(tmp, len, &buf, &buflen));
 
     /* Signature Footprint. */
diff --git a/StdLib/EfiSocketLib/Socket.c b/StdLib/EfiSocketLib/Socket.c
index ee15b62..5f91744 100644
--- a/StdLib/EfiSocketLib/Socket.c
+++ b/StdLib/EfiSocketLib/Socket.c
@@ -5,7 +5,7 @@
   * Bound - pSocket->PortList is not NULL
   * Listen - AcceptWait event is not NULL
 
-  Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 
@@ -570,7 +570,7 @@ EslSocket (
   int ApiArraySize;
   ESL_SOCKET * pSocket;
   EFI_STATUS Status;
-  int errno;
+  int error_num;
 
   DBG_ENTER ( );
 
@@ -583,7 +583,7 @@ EslSocket (
   }
 
   //  Assume success
-  errno = 0;
+  error_num = 0;
   Status = EFI_SUCCESS;
 
   //  Use break instead of goto
@@ -595,7 +595,7 @@ EslSocket (
       DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
                 "ERROR - Invalid domain value\r\n" ));
       Status = EFI_INVALID_PARAMETER;
-      errno = EAFNOSUPPORT;
+      error_num = EAFNOSUPPORT;
       break;
     }
 
@@ -625,7 +625,7 @@ EslSocket (
                 "ERROR - Invalid type value\r\n" ));
       //  The socket type is not supported
       Status = EFI_INVALID_PARAMETER;
-      errno = EPROTOTYPE;
+      error_num = EPROTOTYPE;
       break;
     }
 
@@ -665,15 +665,15 @@ EslSocket (
       if ( ppApiArrayEnd <= ppApiArray ) {
         DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
                   "ERROR - The protocol is not supported!\r\n" ));
-        errno = EPROTONOSUPPORT;
+        error_num = EPROTONOSUPPORT;
         break;
       }
 
       //  The driver does not support this protocol
       DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
                 "ERROR - The protocol does not support this socket type!\r\n" ));
-      errno = EPROTONOSUPPORT;
-      errno = EPROTOTYPE;
+      error_num = EPROTONOSUPPORT;
+      error_num = EPROTOTYPE;
       break;
     }
     //  Save the socket attributes
@@ -687,7 +687,7 @@ EslSocket (
   }
   //  Return the operation status
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
   DBG_EXIT_STATUS ( Status );
   return Status;
@@ -1334,7 +1334,7 @@ EslSocketClosePoll (
   IN int * pErrno
   )
 {
-  int errno;
+  int error_num;
   ESL_LAYER * pLayer;
   ESL_SOCKET * pNextSocket;
   ESL_SOCKET * pSocket;
@@ -1346,7 +1346,7 @@ EslSocketClosePoll (
   //
   //  Assume success
   //
-  errno = 0;
+  error_num = 0;
   Status = EFI_SUCCESS;
 
   //
@@ -1401,7 +1401,7 @@ EslSocketClosePoll (
           //  At least one port is still open
           //
           Status = EFI_NOT_READY;
-          errno = EAGAIN;
+          error_num = EAGAIN;
         }
       }
       else {
@@ -1409,7 +1409,7 @@ EslSocketClosePoll (
         //  SocketCloseStart was not called
         //
         Status = EFI_NOT_STARTED;
-        errno = EPERM;
+        error_num = EPERM;
       }
       break;
     }
@@ -1428,7 +1428,7 @@ EslSocketClosePoll (
     //  Socket not found
     //
     Status = EFI_NOT_FOUND;
-    errno = ENOTSOCK;
+    error_num = ENOTSOCK;
   }
 
   //
@@ -1440,7 +1440,7 @@ EslSocketClosePoll (
   //  Return the operation status
   //
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
   DBG_EXIT_STATUS ( Status );
   return Status;
@@ -1477,7 +1477,7 @@ EslSocketCloseStart (
   IN int * pErrno
   )
 {
-  int errno;
+  int error_num;
   ESL_PORT * pNextPort;
   ESL_PORT * pPort;
   ESL_SOCKET * pSocket;
@@ -1490,7 +1490,7 @@ EslSocketCloseStart (
   //  Assume success
   //
   Status = EFI_SUCCESS;
-  errno = 0;
+  error_num = 0;
 
   //
   //  Synchronize with the socket layer
@@ -1521,7 +1521,7 @@ EslSocketCloseStart (
                                          DEBUG_CLOSE | DEBUG_LISTEN | DEBUG_CONNECTION );
       if (( EFI_SUCCESS != Status )
         && ( EFI_NOT_READY != Status )) {
-        errno = EIO;
+        error_num = EIO;
         break;
       }
 
@@ -1535,12 +1535,12 @@ EslSocketCloseStart (
     //  Attempt to finish closing the socket
     //
     if ( NULL == pPort ) {
-      Status = EslSocketClosePoll ( pSocketProtocol, &errno );
+      Status = EslSocketClosePoll ( pSocketProtocol, &error_num );
     }
   }
   else {
     Status = EFI_NOT_READY;
-    errno = EAGAIN;
+    error_num = EAGAIN;
   }
 
   //
@@ -1552,7 +1552,7 @@ EslSocketCloseStart (
   //  Return the operation status
   //
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
   DBG_EXIT_STATUS ( Status );
   return Status;
@@ -1889,7 +1889,7 @@ EslSocketFree (
   )
 {
   EFI_HANDLE ChildHandle;
-  int errno;
+  int error_num;
   ESL_LAYER * pLayer;
   ESL_SOCKET * pSocket;
   ESL_SOCKET * pSocketPrevious;
@@ -1901,7 +1901,7 @@ EslSocketFree (
   //
   //  Assume failure
   //
-  errno = EIO;
+  error_num = EIO;
   pSocket = NULL;
   Status = EFI_INVALID_PARAMETER;
 
@@ -1986,7 +1986,7 @@ EslSocketFree (
                     "0x%08x: Free pSocket, %d bytes\r\n",
                     pSocket,
                     sizeof ( *pSocket )));
-          errno = 0;
+          error_num = 0;
         }
         else {
           DEBUG (( DEBUG_ERROR | DEBUG_POOL,
@@ -2014,10 +2014,10 @@ EslSocketFree (
   }
 
   //
-  //  Return the errno value if possible
+  //  Return the error_num value if possible
   //
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
 
   //
@@ -2751,7 +2751,7 @@ EslSocketOptionGet (
   IN int * pErrno
   )
 {
-  int errno;
+  int error_num;
   socklen_t LengthInBytes;
   socklen_t MaxBytes;
   CONST UINT8 * pOptionData;
@@ -2763,7 +2763,7 @@ EslSocketOptionGet (
   //
   //  Assume failure
   //
-  errno = EINVAL;
+  error_num = EINVAL;
   Status = EFI_INVALID_PARAMETER;
 
   //
@@ -2795,7 +2795,7 @@ EslSocketOptionGet (
                                                  OptionName,
                                                  (CONST void ** __restrict)&pOptionData,
                                                  &LengthInBytes );
-          errno = pSocket->errno;
+          error_num = pSocket->errno;
           break;
         }
         else {
@@ -2814,7 +2814,7 @@ EslSocketOptionGet (
                   "ERROR - %a does not support any options!\r\n",
                   pSocket->pApi->pName ));
       }
-      errno = ENOPROTOOPT;
+      error_num = ENOPROTOOPT;
       Status = EFI_INVALID_PARAMETER;
       break;
 
@@ -2825,7 +2825,7 @@ EslSocketOptionGet (
         //  Socket option not supported
         //
         DEBUG (( DEBUG_INFO | DEBUG_OPTION, "ERROR - Invalid socket option!\r\n" ));
-        errno = EINVAL;
+        error_num = EINVAL;
         Status = EFI_INVALID_PARAMETER;
         break;
 
@@ -2927,7 +2927,7 @@ EslSocketOptionGet (
       if ( LengthInBytes < MaxBytes ) {
         ZeroMem ( &((UINT8 *)pOptionValue)[LengthInBytes], MaxBytes - LengthInBytes );
       }
-      errno = 0;
+      error_num = 0;
       Status = EFI_SUCCESS;
     }
   }
@@ -2936,7 +2936,7 @@ EslSocketOptionGet (
   //  Return the operation status
   //
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
   DBG_EXIT_STATUS ( Status );
   return Status;
@@ -2971,7 +2971,7 @@ EslSocketOptionSet (
   )
 {
   BOOLEAN bTrueFalse;
-  int errno;
+  int error_num;
   socklen_t LengthInBytes;
   UINT8 * pOptionData;
   ESL_SOCKET * pSocket;
@@ -2982,7 +2982,7 @@ EslSocketOptionSet (
   //
   //  Assume failure
   //
-  errno = EINVAL;
+  error_num = EINVAL;
   Status = EFI_INVALID_PARAMETER;
 
   //
@@ -3015,7 +3015,7 @@ EslSocketOptionSet (
                                                    OptionName,
                                                    pOptionValue,
                                                    OptionLength );
-            errno = pSocket->errno;
+            error_num = pSocket->errno;
             break;
           }
           else {
@@ -3034,7 +3034,7 @@ EslSocketOptionSet (
                     "ERROR - %a does not support any options!\r\n",
                     pSocket->pApi->pName ));
         }
-        errno = ENOPROTOOPT;
+        error_num = ENOPROTOOPT;
         Status = EFI_INVALID_PARAMETER;
         break;
 
@@ -3046,7 +3046,7 @@ EslSocketOptionSet (
           //
           DEBUG (( DEBUG_OPTION,
                     "ERROR - Sockets does not support this option!\r\n" ));
-          errno = EINVAL;
+          error_num = EINVAL;
           Status = EFI_INVALID_PARAMETER;
           break;
 
@@ -3133,7 +3133,7 @@ EslSocketOptionSet (
           //  Set the option value
           //
           CopyMem ( pOptionData, pOptionValue, LengthInBytes );
-          errno = 0;
+          error_num = 0;
           Status = EFI_SUCCESS;
         }
         else {
@@ -3150,7 +3150,7 @@ EslSocketOptionSet (
   //  Return the operation status
   //
   if ( NULL != pErrno ) {
-    *pErrno = errno;
+    *pErrno = error_num;
   }
   DBG_EXIT_STATUS ( Status );
   return Status;
-- 
2.45.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#119988): https://edk2.groups.io/g/devel/message/119988
Mute This Topic: https://groups.io/mt/107454081/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [edk2-devel] [edk2-libc Patch v2 1/1] edk2-libc: Support for compiling Python UEFI interpreter with VS2022
  2024-07-20 15:48 ` [edk2-devel] [edk2-libc Patch v2 1/1] edk2-libc: " Jayaprakash, N
@ 2024-07-21 21:01   ` Michael D Kinney
  0 siblings, 0 replies; 3+ messages in thread
From: Michael D Kinney @ 2024-07-21 21:01 UTC (permalink / raw)
  To: Jayaprakash, N, devel@edk2.groups.io; +Cc: Rebecca Cran, Kinney, Michael D

Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>

> -----Original Message-----
> From: Jayaprakash, N <n.jayaprakash@intel.com>
> Sent: Saturday, July 20, 2024 8:48 AM
> To: devel@edk2.groups.io
> Cc: Jayaprakash, N <n.jayaprakash@intel.com>; Rebecca Cran
> <rebecca@bsdio.com>; Kinney, Michael D <michael.d.kinney@intel.com>
> Subject: [edk2-libc Patch v2 1/1] edk2-libc: Support for compiling Python
> UEFI interpreter with VS2022
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4811
> 
> While trying to compile Python UEFI 3.6.8 with VS2022, got several
> compiler warnings from other components within the edk2-libc project.
> These warnings were leading to compilation failure as they were
> treated as errors. All these issues have been fixed througn this
> commit. Besides this, updated the year in copy right of these file.
> 
> Summary of the issues is given below for reference:
> 1.AppPkg\Applications\Enquire\Enquire.c
>   Warning C4459: Declaration of 'bugs' hides global declaration.
>   Warning C4456: Multiple declarations of 'char_max' hide previous
>                  local declarations.
>   Warning C4456: Declaration of 'char_min' hides previous local
>                  declaration.
> 
> 2.AppPkg\Applications\OrderedCollectionTest\OrderedCollectionTest.c
>   Warning C4476: Unknown type field character '$' in format
>                  specifier.
>   Warning C4474: Too many arguments passed for format string.
> 
> 3.StdLib\BsdSocketLib\getnetbyht.c
>   Warning C4459: Declaration of 'net' hides global declaration.
> 
> 4.StdLib\EfiSocketLib\Socket.c
>   Warning C4459: Multiple declarations of 'errno' hide global
>                  declaration.
> 
> 5.AppPkg\Applications\Sockets\DataSource\DataSource.c
>   Warning C4459: Declaration of 'BytesSent' hides global declaration.
> 
> 6.AppPkg\Applications\Sockets\OobRx\OobRx.c
>   Warning C4475: Length modifier 'L' cannot be used with type field
>                  character 'd' in format specifier.
> 
> 7.AppPkg\Applications\Sockets\RawIp4Rx\RawIp4Rx.c
>   Warning C4475: Length modifier 'L' cannot be used with type field
>                  character 'd' in format specifier.
> 
> 8.StdLib\BsdSocketLib\ns_print.c
>   Warning C4456: Multiple declarations of 't' hide previous local
>                  declarations.
>   Warning C4457: Declaration of 'type' hides function parameter.
> 
> Cc: Rebecca Cran <rebecca@bsdio.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Jayaprakash N <n.jayaprakash@intel.com>
> Signed-off-by: Jayaprakash N <n.jayaprakash@intel.com>
> ---
>  AppPkg/Applications/Enquire/Enquire.c         | 48 +++++------
>  .../OrderedCollectionTest.c                   | 10 +--
>  .../Sockets/DataSource/DataSource.c           | 10 +--
>  AppPkg/Applications/Sockets/OobRx/OobRx.c     |  6 +-
>  .../Applications/Sockets/RawIp4Rx/RawIp4Rx.c  |  4 +-
>  StdLib/BsdSocketLib/getnetbyht.c              |  9 ++-
>  StdLib/BsdSocketLib/ns_print.c                | 57 +++++++------
>  StdLib/EfiSocketLib/Socket.c                  | 80 +++++++++----------
>  8 files changed, 117 insertions(+), 107 deletions(-)
> 
> diff --git a/AppPkg/Applications/Enquire/Enquire.c
> b/AppPkg/Applications/Enquire/Enquire.c
> index 1e1db69..5e34f48 100644
> --- a/AppPkg/Applications/Enquire/Enquire.c
> +++ b/AppPkg/Applications/Enquire/Enquire.c
> @@ -5,7 +5,7 @@
>      Steven Pemberton, CWI, Amsterdam; "Steven.Pemberton@cwi.nl"
>      Used with permission.
> 
> -    Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
> +    Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
>      This program and the accompanying materials
>      are licensed and made available under the terms and conditions of the
> BSD License
>      which accompanies this distribution. The full text of the license may be
> found at
> @@ -918,15 +918,15 @@ memeq(
>  }
> 
>  Void
> -farewell(int bugs)
> +farewell(int bugs_local)
>  {
> -  if (bugs == 0) exit(0);
> +  if (bugs_local == 0) exit(0);
>    printf("\n%sFor hints on dealing with the ", co);
> -  if (bugs == 1) printf("problem");
> -  else printf("%d problems", bugs);
> +  if (bugs_local == 1) printf("problem");
> +  else printf("%d problems", bugs_local);
>    printf(" above\n   see the section 'TROUBLESHOOTING' in the file ");
>    printf("%s%s\n", FILENAME, oc);
> -  exit(bugs);
> +  exit(bugs_local);
>  }
> 
>  /* The program has received a signal where it wasn't expecting one */
> @@ -1927,51 +1927,51 @@ int cprop( void )
> 
>      if (c_signed) {
>  #ifndef NO_UC
> -/* Syntax error? Define NO_UC */ Volatile unsigned char c1, char_max;
> -      c1=0; char_max=0;
> +/* Syntax error? Define NO_UC */ Volatile unsigned char c1, char_max_local;
> +      c1=0; char_max_local=0;
>        c1++;
> -      if (setjmp(lab)==0) { /* Yields char_max */
> -        while (c1>char_max) {
> -          char_max=c1;
> +      if (setjmp(lab)==0) { /* Yields char_max_local */
> +        while (c1>char_max_local) {
> +          char_max_local=c1;
>            c1++;
>          }
>        }
>        Unexpected(4);
>        if (sizeof(char) == sizeof(int)) {
>          u_define(D_UCHAR_MAX, "", "UCHAR", "_MAX",
> -           (ulong) char_max,
> +           (ulong) char_max_local,
>             (ulong) UCHAR_MAX, "");
>        } else {
>          i_define(D_UCHAR_MAX, "", "UCHAR", "_MAX",
> -           (long) char_max, 0L,
> +           (long) char_max_local, 0L,
>             (long) UCHAR_MAX, "");
>        }
>  #endif
>      } else {
>  #ifndef NO_SC
> -/* Syntax error? Define NO_SC */ Volatile signed char c1, char_max,
> char_min;
> -      c1=0; char_max=0;
> +/* Syntax error? Define NO_SC */ Volatile signed char c1, char_max_local,
> char_min_local;
> +      c1=0; char_max_local=0;
>        c1++;
> -      if (setjmp(lab)==0) { /* Yields char_max */
> -        while (c1>char_max) {
> -          char_max=c1;
> +      if (setjmp(lab)==0) { /* Yields char_max_local */
> +        while (c1>char_max_local) {
> +          char_max_local=c1;
>            c1++;
>          }
>        }
> -      c1=0; char_min=0;
> +      c1=0; char_min_local=0;
>        c1--;
> -      if (setjmp(lab)==0) { /* Yields char_min */
> -        while (c1<char_min) {
> -          char_min=c1;
> +      if (setjmp(lab)==0) { /* Yields char_min_local */
> +        while (c1<char_min_local) {
> +          char_min_local=c1;
>            c1--;
>          }
>        }
>        Unexpected(5);
>        i_define(D_SCHAR_MIN, "", "SCHAR", "_MIN",
> -         (long) char_min, (long) maxint,
> +         (long) char_min_local, (long) maxint,
>           (long) SCHAR_MIN, "");
>        i_define(D_SCHAR_MAX, "", "SCHAR", "_MAX",
> -         (long) char_max, 0L,
> +         (long) char_max_local, 0L,
>           (long) SCHAR_MAX, "");
>  #endif /* NO_SC */
>      }
> diff --git
> a/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
> b/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
> index 712ee8f..ea44b31 100644
> --- a/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
> +++ b/AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.c
> @@ -7,7 +7,7 @@
>    per default, eg. serial line).
> 
>    Copyright (C) 2014, Red Hat, Inc.
> -  Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
> 
>    SPDX-License-Identifier: BSD-2-Clause-Patent
>  **/
> @@ -458,10 +458,10 @@ SetupInputOutput (
> 
>      case 'h':
>        fprintf (stderr,
> -        "%1$s: simple OrderedCollectionLib tester\n"
> +        "%s: simple OrderedCollectionLib tester\n"
>          "\n"
> -        "Usage: 1. %1$s [-i InputFile] [-o OutputFile]\n"
> -        "       2. %1$s -h\n"
> +        "Usage: 1. %s [-i InputFile] [-o OutputFile]\n"
> +        "       2. %s -h\n"
>          "\n"
>          "Options:\n"
>          "  -i InputFile : read commands from InputFile\n"
> @@ -469,7 +469,7 @@ SetupInputOutput (
>          "  -o OutputFile: write command responses to OutputFile\n"
>          "                 (will write to stdout if absent)\n"
>          "  -h           : print this help and exit\n"
> -        "\n", ArgV[0]);
> +        "\n", ArgV[0], ArgV[0], ArgV[0]);
>        ListCommands ();
>        exit (EXIT_SUCCESS);
> 
> diff --git a/AppPkg/Applications/Sockets/DataSource/DataSource.c
> b/AppPkg/Applications/Sockets/DataSource/DataSource.c
> index 360689e..7f64294 100644
> --- a/AppPkg/Applications/Sockets/DataSource/DataSource.c
> +++ b/AppPkg/Applications/Sockets/DataSource/DataSource.c
> @@ -1,7 +1,7 @@
>  /** @file
>    Data source for network testing.
> 
> -  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
> +  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
>    SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> @@ -538,7 +538,7 @@ EFI_STATUS
>  SocketSend (
>    )
>  {
> -  size_t BytesSent;
> +  size_t BytesSentLocal;
>    EFI_STATUS Status;
>    EFI_TPL TplPrevious;
> 
> @@ -562,8 +562,8 @@ SocketSend (
>      //
>      //  Send some bytes
>      //
> -    BytesSent = write ( Socket, &Buffer[0], sizeof ( Buffer ));
> -    if ( -1 == BytesSent ) {
> +    BytesSentLocal = write ( Socket, &Buffer[0], sizeof ( Buffer ));
> +    if ( -1 == BytesSentLocal ) {
>        DEBUG (( DEBUG_INFO,
>                  "ERROR: send failed, errno: %d\r\n",
>                  errno ));
> @@ -589,7 +589,7 @@ Status = EFI_NOT_STARTED;
>      //
>      //  Account for the data sent
>      //
> -    TotalBytesSent += BytesSent;
> +    TotalBytesSent += BytesSentLocal;
> 
>      //
>      //  Release the TimerCallback routine synchronization
> diff --git a/AppPkg/Applications/Sockets/OobRx/OobRx.c
> b/AppPkg/Applications/Sockets/OobRx/OobRx.c
> index 28e10d8..1eb9497 100644
> --- a/AppPkg/Applications/Sockets/OobRx/OobRx.c
> +++ b/AppPkg/Applications/Sockets/OobRx/OobRx.c
> @@ -1,7 +1,7 @@
>  /** @file
>    Windows version of the OOB Receive application
> 
> -  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
> +  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
>    SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> @@ -150,7 +150,7 @@ OobRx (
>              //
>              //  Display the received OOB data
>              //
> -            printf ( "%5Ld OOB bytes received\r\n", (UINT64)BytesReceived );
> +            printf ( "%5llu OOB bytes received\r\n", (UINT64)BytesReceived
> );
> 
>              //
>              //  Account for the bytes received
> @@ -183,7 +183,7 @@ OobRx (
>                //
>                //  Display the received data
>                //
> -              printf ( "%4Ld bytes received\r\n", (UINT64)BytesReceived );
> +              printf ( "%4llu bytes received\r\n", (UINT64)BytesReceived );
> 
>                //
>                //  Account for the bytes received
> diff --git a/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
> b/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
> index b52cd38..ae856a0 100644
> --- a/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
> +++ b/AppPkg/Applications/Sockets/RawIp4Rx/RawIp4Rx.c
> @@ -1,7 +1,7 @@
>  /** @file
>    Raw IP4 receive application
> 
> -  Copyright (c) 2011-2012, Intel Corporation. All rights reserved.
> +  Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
>    SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> @@ -157,7 +157,7 @@ RawIp4Rx (
>          //  Display the bytes received
>          //
>          if ( 0 == RetVal ) {
> -          printf ( "Total Bytes Received:  %Ld\r\n", TotalBytesReceived );
> +          printf ( "Total Bytes Received:  %llu\r\n", TotalBytesReceived );
>          }
> 
>          //
> diff --git a/StdLib/BsdSocketLib/getnetbyht.c
> b/StdLib/BsdSocketLib/getnetbyht.c
> index 08b8042..f990c65 100644
> --- a/StdLib/BsdSocketLib/getnetbyht.c
> +++ b/StdLib/BsdSocketLib/getnetbyht.c
> @@ -41,6 +41,11 @@
>   * from getnetent.c	1.1 (Coimbra) 93/06/02
>   */
> 
> +/*
> + * Copyright (c) 2023 - 2024, Intel Corporation. All rights reserved.
> + * SPDX-License-Identifier: BSD-2-Clause-Patent
> + */
> +
>  #if defined(LIBC_SCCS) && !defined(lint)
>  static char sccsid[] = "@(#)getnetent.c	8.1 (Berkeley) 6/4/93";
>  static char orig_rcsid[] = "From: Id: getnetent.c,v 8.4 1997/06/01 20:34:37
> vixie Exp";
> @@ -155,13 +160,13 @@ found:
>  }
> 
>  struct netent *
> -_getnetbyhtaddr(register unsigned long net, register int type)
> +_getnetbyhtaddr(register unsigned long net_local, register int type)
>  {
>  	register struct netent *p;
> 
>  	setnetent(_net_stayopen);
>  	while ( NULL != (p = getnetent()) )
> -		if (p->n_addrtype == type && p->n_net == net)
> +        if (p->n_addrtype == type && p->n_net == net_local)
>  			break;
>  	if (!_net_stayopen)
>  		endnetent();
> diff --git a/StdLib/BsdSocketLib/ns_print.c b/StdLib/BsdSocketLib/ns_print.c
> index ea29d01..75c28de 100644
> --- a/StdLib/BsdSocketLib/ns_print.c
> +++ b/StdLib/BsdSocketLib/ns_print.c
> @@ -55,6 +55,11 @@
>   *
>   */
> 
> +/*
> + * Copyright (c) 2023 - 2024, Intel Corporation. All rights reserved.
> + * SPDX-License-Identifier: BSD-2-Clause-Patent
> + */
> +
>  /* Import. */
> 
>  #include <sys/types.h>
> @@ -211,7 +216,7 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
>      break;
> 
>    case ns_t_soa: {
> -    u_long t;
> +    u_long t_local;
> 
>      /* Server name. */
>      T(addname(msg, msglen, &rdata, origin, &buf, &buflen));
> @@ -226,45 +231,45 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
>        goto formerr;
> 
>      /* Serial number. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
> -    len = SPRINTF((tmp, "%lu", (unsigned long)t));
> +    len = SPRINTF((tmp, "%lu", (unsigned long)t_local));
>      T(addstr(tmp, len, &buf, &buflen));
>      T(spaced = addtab(len, 16, spaced, &buf, &buflen));
>      T(addstr("; serial\n", 9, &buf, &buflen));
>      spaced = 0;
> 
>      /* Refresh interval. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
> -    T(len = ns_format_ttl(t, buf, buflen));
> +    T(len = ns_format_ttl(t_local, buf, buflen));
>      addlen(len, &buf, &buflen);
>      T(spaced = addtab(len, 16, spaced, &buf, &buflen));
>      T(addstr("; refresh\n", 10, &buf, &buflen));
>      spaced = 0;
> 
>      /* Retry interval. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
> -    T(len = ns_format_ttl(t, buf, buflen));
> +    T(len = ns_format_ttl(t_local, buf, buflen));
>      addlen(len, &buf, &buflen);
>      T(spaced = addtab(len, 16, spaced, &buf, &buflen));
>      T(addstr("; retry\n", 8, &buf, &buflen));
>      spaced = 0;
> 
>      /* Expiry. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
> -    T(len = ns_format_ttl(t, buf, buflen));
> +    T(len = ns_format_ttl(t_local, buf, buflen));
>      addlen(len, &buf, &buflen);
>      T(spaced = addtab(len, 16, spaced, &buf, &buflen));
>      T(addstr("; expiry\n", 9, &buf, &buflen));
>      spaced = 0;
> 
>      /* Minimum TTL. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      T(addstr("\t\t\t\t\t", 5, &buf, &buflen));
> -    T(len = ns_format_ttl(t, buf, buflen));
> +    T(len = ns_format_ttl(t_local, buf, buflen));
>      addlen(len, &buf, &buflen);
>      T(addstr(" )", 2, &buf, &buflen));
>      T(spaced = addtab(len, 16, spaced, &buf, &buflen));
> @@ -276,15 +281,15 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
>    case ns_t_mx:
>    case ns_t_afsdb:
>    case ns_t_rt: {
> -    u_int t;
> +    u_int t_local;
> 
>      if (rdlen < NS_INT16SZ)
>        goto formerr;
> 
>      /* Priority. */
> -    t = ns_get16(rdata);
> +    t_local = ns_get16(rdata);
>      rdata += NS_INT16SZ;
> -    len = SPRINTF((tmp, "%u ", (unsigned int)t));
> +    len = SPRINTF((tmp, "%u ", (unsigned int)t_local));
>      T(addstr(tmp, len, &buf, &buflen));
> 
>      /* Target. */
> @@ -294,15 +299,15 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
>        }
> 
>    case ns_t_px: {
> -    u_int t;
> +    u_int t_local;
> 
>      if (rdlen < NS_INT16SZ)
>        goto formerr;
> 
>      /* Priority. */
> -    t = ns_get16(rdata);
> +    t_local = ns_get16(rdata);
>      rdata += NS_INT16SZ;
> -    len = SPRINTF((tmp, "%u ", (unsigned int)t));
> +    len = SPRINTF((tmp, "%u ", (unsigned int)t_local));
>      T(addstr(tmp, len, &buf, &buflen));
> 
>      /* Name1. */
> @@ -503,33 +508,33 @@ ns_sprintrrf(const u_char *msg, size_t msglen,
>        }
> 
>    case ns_t_sig: {
> -    u_int type, algorithm, labels, footprint;
> +    u_int type_local, algorithm, labels, footprint;
>      const char *leader;
> -    u_long t;
> +    u_long t_local;
>      int n;
> 
>      if (rdlen < 22)
>        goto formerr;
> 
>      /* Type covered, Algorithm, Label count, Original TTL. */
> -          type = ns_get16(rdata);  rdata += NS_INT16SZ;
> +          type_local = ns_get16(rdata);  rdata += NS_INT16SZ;
>      algorithm = *rdata++;
>      labels = *rdata++;
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
>      len = SPRINTF((tmp, " %s %d %lu ",
> -                   p_type((int)type), (int)algorithm, (unsigned long)t));
> +                   p_type((int)type_local), (int)algorithm, (unsigned
> long)t_local));
>      T(addstr(tmp, len, &buf, &buflen));
>      if (labels != (u_int)dn_count_labels(name))
>        goto formerr;
> 
>      /* Signature expiry. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> -    len = SPRINTF((tmp, "%s ", p_secstodate(t)));
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    len = SPRINTF((tmp, "%s ", p_secstodate(t_local)));
>      T(addstr(tmp, len, &buf, &buflen));
> 
>      /* Time signed. */
> -    t = ns_get32(rdata);  rdata += NS_INT32SZ;
> -    len = SPRINTF((tmp, "%s ", p_secstodate(t)));
> +    t_local = ns_get32(rdata);  rdata += NS_INT32SZ;
> +    len = SPRINTF((tmp, "%s ", p_secstodate(t_local)));
>      T(addstr(tmp, len, &buf, &buflen));
> 
>      /* Signature Footprint. */
> diff --git a/StdLib/EfiSocketLib/Socket.c b/StdLib/EfiSocketLib/Socket.c
> index ee15b62..5f91744 100644
> --- a/StdLib/EfiSocketLib/Socket.c
> +++ b/StdLib/EfiSocketLib/Socket.c
> @@ -5,7 +5,7 @@
>    * Bound - pSocket->PortList is not NULL
>    * Listen - AcceptWait event is not NULL
> 
> -  Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2024, Intel Corporation. All rights reserved.<BR>
>    SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> 
> @@ -570,7 +570,7 @@ EslSocket (
>    int ApiArraySize;
>    ESL_SOCKET * pSocket;
>    EFI_STATUS Status;
> -  int errno;
> +  int error_num;
> 
>    DBG_ENTER ( );
> 
> @@ -583,7 +583,7 @@ EslSocket (
>    }
> 
>    //  Assume success
> -  errno = 0;
> +  error_num = 0;
>    Status = EFI_SUCCESS;
> 
>    //  Use break instead of goto
> @@ -595,7 +595,7 @@ EslSocket (
>        DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
>                  "ERROR - Invalid domain value\r\n" ));
>        Status = EFI_INVALID_PARAMETER;
> -      errno = EAFNOSUPPORT;
> +      error_num = EAFNOSUPPORT;
>        break;
>      }
> 
> @@ -625,7 +625,7 @@ EslSocket (
>                  "ERROR - Invalid type value\r\n" ));
>        //  The socket type is not supported
>        Status = EFI_INVALID_PARAMETER;
> -      errno = EPROTOTYPE;
> +      error_num = EPROTOTYPE;
>        break;
>      }
> 
> @@ -665,15 +665,15 @@ EslSocket (
>        if ( ppApiArrayEnd <= ppApiArray ) {
>          DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
>                    "ERROR - The protocol is not supported!\r\n" ));
> -        errno = EPROTONOSUPPORT;
> +        error_num = EPROTONOSUPPORT;
>          break;
>        }
> 
>        //  The driver does not support this protocol
>        DEBUG (( DEBUG_ERROR | DEBUG_SOCKET,
>                  "ERROR - The protocol does not support this socket
> type!\r\n" ));
> -      errno = EPROTONOSUPPORT;
> -      errno = EPROTOTYPE;
> +      error_num = EPROTONOSUPPORT;
> +      error_num = EPROTOTYPE;
>        break;
>      }
>      //  Save the socket attributes
> @@ -687,7 +687,7 @@ EslSocket (
>    }
>    //  Return the operation status
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
>    DBG_EXIT_STATUS ( Status );
>    return Status;
> @@ -1334,7 +1334,7 @@ EslSocketClosePoll (
>    IN int * pErrno
>    )
>  {
> -  int errno;
> +  int error_num;
>    ESL_LAYER * pLayer;
>    ESL_SOCKET * pNextSocket;
>    ESL_SOCKET * pSocket;
> @@ -1346,7 +1346,7 @@ EslSocketClosePoll (
>    //
>    //  Assume success
>    //
> -  errno = 0;
> +  error_num = 0;
>    Status = EFI_SUCCESS;
> 
>    //
> @@ -1401,7 +1401,7 @@ EslSocketClosePoll (
>            //  At least one port is still open
>            //
>            Status = EFI_NOT_READY;
> -          errno = EAGAIN;
> +          error_num = EAGAIN;
>          }
>        }
>        else {
> @@ -1409,7 +1409,7 @@ EslSocketClosePoll (
>          //  SocketCloseStart was not called
>          //
>          Status = EFI_NOT_STARTED;
> -        errno = EPERM;
> +        error_num = EPERM;
>        }
>        break;
>      }
> @@ -1428,7 +1428,7 @@ EslSocketClosePoll (
>      //  Socket not found
>      //
>      Status = EFI_NOT_FOUND;
> -    errno = ENOTSOCK;
> +    error_num = ENOTSOCK;
>    }
> 
>    //
> @@ -1440,7 +1440,7 @@ EslSocketClosePoll (
>    //  Return the operation status
>    //
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
>    DBG_EXIT_STATUS ( Status );
>    return Status;
> @@ -1477,7 +1477,7 @@ EslSocketCloseStart (
>    IN int * pErrno
>    )
>  {
> -  int errno;
> +  int error_num;
>    ESL_PORT * pNextPort;
>    ESL_PORT * pPort;
>    ESL_SOCKET * pSocket;
> @@ -1490,7 +1490,7 @@ EslSocketCloseStart (
>    //  Assume success
>    //
>    Status = EFI_SUCCESS;
> -  errno = 0;
> +  error_num = 0;
> 
>    //
>    //  Synchronize with the socket layer
> @@ -1521,7 +1521,7 @@ EslSocketCloseStart (
>                                           DEBUG_CLOSE | DEBUG_LISTEN |
> DEBUG_CONNECTION );
>        if (( EFI_SUCCESS != Status )
>          && ( EFI_NOT_READY != Status )) {
> -        errno = EIO;
> +        error_num = EIO;
>          break;
>        }
> 
> @@ -1535,12 +1535,12 @@ EslSocketCloseStart (
>      //  Attempt to finish closing the socket
>      //
>      if ( NULL == pPort ) {
> -      Status = EslSocketClosePoll ( pSocketProtocol, &errno );
> +      Status = EslSocketClosePoll ( pSocketProtocol, &error_num );
>      }
>    }
>    else {
>      Status = EFI_NOT_READY;
> -    errno = EAGAIN;
> +    error_num = EAGAIN;
>    }
> 
>    //
> @@ -1552,7 +1552,7 @@ EslSocketCloseStart (
>    //  Return the operation status
>    //
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
>    DBG_EXIT_STATUS ( Status );
>    return Status;
> @@ -1889,7 +1889,7 @@ EslSocketFree (
>    )
>  {
>    EFI_HANDLE ChildHandle;
> -  int errno;
> +  int error_num;
>    ESL_LAYER * pLayer;
>    ESL_SOCKET * pSocket;
>    ESL_SOCKET * pSocketPrevious;
> @@ -1901,7 +1901,7 @@ EslSocketFree (
>    //
>    //  Assume failure
>    //
> -  errno = EIO;
> +  error_num = EIO;
>    pSocket = NULL;
>    Status = EFI_INVALID_PARAMETER;
> 
> @@ -1986,7 +1986,7 @@ EslSocketFree (
>                      "0x%08x: Free pSocket, %d bytes\r\n",
>                      pSocket,
>                      sizeof ( *pSocket )));
> -          errno = 0;
> +          error_num = 0;
>          }
>          else {
>            DEBUG (( DEBUG_ERROR | DEBUG_POOL,
> @@ -2014,10 +2014,10 @@ EslSocketFree (
>    }
> 
>    //
> -  //  Return the errno value if possible
> +  //  Return the error_num value if possible
>    //
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
> 
>    //
> @@ -2751,7 +2751,7 @@ EslSocketOptionGet (
>    IN int * pErrno
>    )
>  {
> -  int errno;
> +  int error_num;
>    socklen_t LengthInBytes;
>    socklen_t MaxBytes;
>    CONST UINT8 * pOptionData;
> @@ -2763,7 +2763,7 @@ EslSocketOptionGet (
>    //
>    //  Assume failure
>    //
> -  errno = EINVAL;
> +  error_num = EINVAL;
>    Status = EFI_INVALID_PARAMETER;
> 
>    //
> @@ -2795,7 +2795,7 @@ EslSocketOptionGet (
>                                                   OptionName,
>                                                   (CONST void **
> __restrict)&pOptionData,
>                                                   &LengthInBytes );
> -          errno = pSocket->errno;
> +          error_num = pSocket->errno;
>            break;
>          }
>          else {
> @@ -2814,7 +2814,7 @@ EslSocketOptionGet (
>                    "ERROR - %a does not support any options!\r\n",
>                    pSocket->pApi->pName ));
>        }
> -      errno = ENOPROTOOPT;
> +      error_num = ENOPROTOOPT;
>        Status = EFI_INVALID_PARAMETER;
>        break;
> 
> @@ -2825,7 +2825,7 @@ EslSocketOptionGet (
>          //  Socket option not supported
>          //
>          DEBUG (( DEBUG_INFO | DEBUG_OPTION, "ERROR - Invalid socket
> option!\r\n" ));
> -        errno = EINVAL;
> +        error_num = EINVAL;
>          Status = EFI_INVALID_PARAMETER;
>          break;
> 
> @@ -2927,7 +2927,7 @@ EslSocketOptionGet (
>        if ( LengthInBytes < MaxBytes ) {
>          ZeroMem ( &((UINT8 *)pOptionValue)[LengthInBytes], MaxBytes -
> LengthInBytes );
>        }
> -      errno = 0;
> +      error_num = 0;
>        Status = EFI_SUCCESS;
>      }
>    }
> @@ -2936,7 +2936,7 @@ EslSocketOptionGet (
>    //  Return the operation status
>    //
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
>    DBG_EXIT_STATUS ( Status );
>    return Status;
> @@ -2971,7 +2971,7 @@ EslSocketOptionSet (
>    )
>  {
>    BOOLEAN bTrueFalse;
> -  int errno;
> +  int error_num;
>    socklen_t LengthInBytes;
>    UINT8 * pOptionData;
>    ESL_SOCKET * pSocket;
> @@ -2982,7 +2982,7 @@ EslSocketOptionSet (
>    //
>    //  Assume failure
>    //
> -  errno = EINVAL;
> +  error_num = EINVAL;
>    Status = EFI_INVALID_PARAMETER;
> 
>    //
> @@ -3015,7 +3015,7 @@ EslSocketOptionSet (
>                                                     OptionName,
>                                                     pOptionValue,
>                                                     OptionLength );
> -            errno = pSocket->errno;
> +            error_num = pSocket->errno;
>              break;
>            }
>            else {
> @@ -3034,7 +3034,7 @@ EslSocketOptionSet (
>                      "ERROR - %a does not support any options!\r\n",
>                      pSocket->pApi->pName ));
>          }
> -        errno = ENOPROTOOPT;
> +        error_num = ENOPROTOOPT;
>          Status = EFI_INVALID_PARAMETER;
>          break;
> 
> @@ -3046,7 +3046,7 @@ EslSocketOptionSet (
>            //
>            DEBUG (( DEBUG_OPTION,
>                      "ERROR - Sockets does not support this option!\r\n" ));
> -          errno = EINVAL;
> +          error_num = EINVAL;
>            Status = EFI_INVALID_PARAMETER;
>            break;
> 
> @@ -3133,7 +3133,7 @@ EslSocketOptionSet (
>            //  Set the option value
>            //
>            CopyMem ( pOptionData, pOptionValue, LengthInBytes );
> -          errno = 0;
> +          error_num = 0;
>            Status = EFI_SUCCESS;
>          }
>          else {
> @@ -3150,7 +3150,7 @@ EslSocketOptionSet (
>    //  Return the operation status
>    //
>    if ( NULL != pErrno ) {
> -    *pErrno = errno;
> +    *pErrno = error_num;
>    }
>    DBG_EXIT_STATUS ( Status );
>    return Status;
> --
> 2.45.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#119999): https://edk2.groups.io/g/devel/message/119999
Mute This Topic: https://groups.io/mt/107454081/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-07-21 21:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-20 15:48 [edk2-devel] [edk2-libc Patch v2 0/1] Support for compiling Python UEFI interpreter with VS2022 Jayaprakash, N
2024-07-20 15:48 ` [edk2-devel] [edk2-libc Patch v2 1/1] edk2-libc: " Jayaprakash, N
2024-07-21 21:01   ` Michael D Kinney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox