From: "Michael D Kinney" <michael.d.kinney@intel.com>
To: "Jayaprakash, N" <n.jayaprakash@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: Rebecca Cran <rebecca@bsdio.com>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [edk2-libc Patch 1/1] edk2-libc: Support for compiling Python UEFI interpreter with VS2022
Date: Thu, 18 Jul 2024 15:44:00 +0000 [thread overview]
Message-ID: <CO1PR11MB49296929B30B875DB4AF6FC8D2AC2@CO1PR11MB4929.namprd11.prod.outlook.com> (raw)
In-Reply-To: <PH7PR11MB5943E0DCE49F630D244E0D76EEAC2@PH7PR11MB5943.namprd11.prod.outlook.com>
Hi JP,
Thanks for adding details to the BZ.
For the commit message and PR description please add the
Summary of the types of compiler warnings being addressed.
For example, I did not know why declaring a different named
local variable resolved an issue.
Mike
> -----Original Message-----
> From: Jayaprakash, N <n.jayaprakash@intel.com>
> Sent: Wednesday, July 17, 2024 9:58 PM
> To: Kinney, Michael D <michael.d.kinney@intel.com>; devel@edk2.groups.io
> Cc: Rebecca Cran <rebecca@bsdio.com>
> Subject: RE: [edk2-libc Patch 1/1] edk2-libc: Support for compiling Python
> UEFI interpreter with VS2022
>
> Hi Mike,
>
> It's a big list of warnings treated as errors in VS2022.
> So, I have captured all these compilation issues in the BZ:
> https://bugzilla.tianocore.org/show_bug.cgi?id=4811
>
> GitHub actions with VS2019 and GCC building successfully post these fixes in
> my fork of edk2-libc.
> VS2019 Github action: https://github.com/jpshivakavi/edk2-libc-
> jp/actions/runs/9969663166
> GCC github action: https://github.com/jpshivakavi/edk2-libc-
> jp/actions/runs/9969663158
>
> I have also verified the builds with VS2022 in my local workspace.
>
> Regards,
> JP
> -----Original Message-----
> From: Kinney, Michael D <michael.d.kinney@intel.com>
> Sent: Wednesday, July 17, 2024 9:40 PM
> To: Jayaprakash, N <n.jayaprakash@intel.com>; devel@edk2.groups.io
> Cc: Rebecca Cran <rebecca@bsdio.com>; Kinney, Michael D
> <michael.d.kinney@intel.com>
> Subject: RE: [edk2-libc Patch 1/1] edk2-libc: Support for compiling Python
> UEFI interpreter with VS2022
>
> Can you list the compiler errors that are being fixed by this patch?
>
> Mike
>
> > -----Original Message-----
> > From: Jayaprakash, N <n.jayaprakash@intel.com>
> > Sent: Tuesday, July 16, 2024 11:59 PM
> > 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 1/1] edk2-libc: Support for compiling Python
> > UEFI interpreter with VS2022
> >
> > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4811
> >
> > This commit fixes the compilation issues observed with several
> > components in the edk2-libc repo while trying to compile Python
> > interpreter for UEFI.
> >
> > 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 | 4 +-
> > .../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, 116 insertions(+), 106 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..0ca6a9a 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..af07127 100644
> > --- a/AppPkg/Applications/Sockets/OobRx/OobRx.c
> > +++ b/AppPkg/Applications/Sockets/OobRx/OobRx.c
> > @@ -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..b190b44 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..5907d44 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) 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..fb19bf9 100644
> > --- a/StdLib/BsdSocketLib/ns_print.c
> > +++ b/StdLib/BsdSocketLib/ns_print.c
> > @@ -55,6 +55,11 @@
> > *
> > */
> >
> > +/*
> > + * Copyright (c) 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 (#119971): https://edk2.groups.io/g/devel/message/119971
Mute This Topic: https://groups.io/mt/107267145/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
next prev parent reply other threads:[~2024-07-18 15:44 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-17 6:59 [edk2-devel] [edk2-libc Patch 0/1] Support for compiling Python UEFI interpreter with VS2022 Jayaprakash, N
2024-07-17 6:59 ` [edk2-devel] [edk2-libc Patch 1/1] edk2-libc: " Jayaprakash, N
2024-07-17 16:09 ` Michael D Kinney
2024-07-18 4:58 ` Jayaprakash, N
2024-07-18 15:44 ` Michael D Kinney [this message]
2024-07-18 16:43 ` Jayaprakash, N
2024-07-20 15:59 ` Jayaprakash, N
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CO1PR11MB49296929B30B875DB4AF6FC8D2AC2@CO1PR11MB4929.namprd11.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox