]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Fix compilation errors detected with GCC 4.4
authorlpleahy <lpleahy@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 30 Sep 2011 23:52:45 +0000 (23:52 +0000)
committerlpleahy <lpleahy@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 30 Sep 2011 23:52:45 +0000 (23:52 +0000)
Signed-off-by: lpleahy
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12504 6f19259b-4bc3-4df7-8a09-765794883524

StdLib/EfiSocketLib/Ip4.c
StdLib/EfiSocketLib/ReleaseNotes.txt
StdLib/EfiSocketLib/Socket.c
StdLib/EfiSocketLib/Socket.h

index 2d341269cc25c6c0ce1ca583c0566d8854e736e9..9f885e96bf4bd5d17838a4e378bf63ce6ed87d8a 100644 (file)
@@ -204,7 +204,7 @@ EslIp4OptionGet (
     break;\r
 \r
   case IP_HDRINCL:\r
-    *ppOptionData = (void *)pSocket->bIncludeHeader;\r
+    *ppOptionData = (void *)&pSocket->bIncludeHeader;\r
     *pOptionLength = sizeof ( pSocket->bIncludeHeader );\r
     break;\r
   }\r
index fd8ed740222c28554d956445bd33a2d8b5e20d13..c978e4240580fabcadd47bd75a477f6c4a1b5471 100644 (file)
@@ -23,6 +23,9 @@ The following issues exist with the EFI Socket Library:
 \r
 *  TCPv4 transfer rate is slow (< 10 Mbits/sec) - This is an unidentified issue.\r
 \r
+*  Tcp4Dxe transmits more urgent data than is sent through sockets when normal data is\r
+   queued for transmission before the urgent data.  HSD 206365\r
+\r
 *  Raw socket applications are not able to pass the IP header as part of their\r
    payload by using the IP option IP_HDRINCL.  This is because the UEFI IPv4 driver\r
    (Ip4Dxe) does not support RawData. HSD 206136\r
index 42e4689d0b836e3b3f37b27397938236885f0da6..9c2d2f684421273894b71333a9b6b5677f91b6dd 100644 (file)
@@ -2307,7 +2307,7 @@ EslSocketIoInit (
   IN ESL_IO_MGMT ** ppFreeQueue,\r
   IN UINTN DebugFlags,\r
   IN CHAR8 * pEventName,\r
-  IN EFI_EVENT_NOTIFY pfnCompletion\r
+  IN PFN_API_IO_COMPLETE pfnCompletion\r
   )\r
 {\r
   ESL_IO_MGMT * pEnd;\r
@@ -2670,7 +2670,7 @@ EslSocketOptionGet (
   int errno;\r
   socklen_t LengthInBytes;\r
   socklen_t MaxBytes;\r
-  UINT8 * pOptionData;\r
+  CONST UINT8 * pOptionData;\r
   ESL_SOCKET * pSocket;\r
   EFI_STATUS Status;\r
 \r
@@ -2709,7 +2709,7 @@ EslSocketOptionGet (
         if ( pSocket->pApi->DefaultProtocol == level ) {\r
           Status = pSocket->pApi->pfnOptionGet ( pSocket,\r
                                                  OptionName,\r
-                                                 &pOptionData,\r
+                                                 (CONST void ** __restrict)&pOptionData,\r
                                                  &LengthInBytes );\r
           errno = pSocket->errno;\r
           break;\r
@@ -2749,7 +2749,7 @@ EslSocketOptionGet (
         //\r
         //  Return the listen flag\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->bListenCalled;\r
+        pOptionData = (CONST UINT8 *)&pSocket->bListenCalled;\r
         LengthInBytes = sizeof ( pSocket->bListenCalled );\r
         break;\r
 \r
@@ -2757,7 +2757,7 @@ EslSocketOptionGet (
         //\r
         //  Return the debug flags\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->bOobInLine;\r
+        pOptionData = (CONST UINT8 *)&pSocket->bOobInLine;\r
         LengthInBytes = sizeof ( pSocket->bOobInLine );\r
         break;\r
 \r
@@ -2765,7 +2765,7 @@ EslSocketOptionGet (
         //\r
         //  Return the out-of-band inline flag\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->bOobInLine;\r
+        pOptionData = (CONST UINT8 *)&pSocket->bOobInLine;\r
         LengthInBytes = sizeof ( pSocket->bOobInLine );\r
         break;\r
 \r
@@ -2773,7 +2773,7 @@ EslSocketOptionGet (
         //\r
         //  Return the receive timeout\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->RxTimeout;\r
+        pOptionData = (CONST UINT8 *)&pSocket->RxTimeout;\r
         LengthInBytes = sizeof ( pSocket->RxTimeout );\r
         break;\r
         \r
@@ -2781,7 +2781,7 @@ EslSocketOptionGet (
         //\r
         //  Return the maximum receive buffer size\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->MaxRxBuf;\r
+        pOptionData = (CONST UINT8 *)&pSocket->MaxRxBuf;\r
         LengthInBytes = sizeof ( pSocket->MaxRxBuf );\r
         break;\r
 \r
@@ -2789,7 +2789,7 @@ EslSocketOptionGet (
         //\r
         //  Return the maximum transmit buffer size\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->MaxTxBuf;\r
+        pOptionData = (CONST UINT8 *)&pSocket->MaxTxBuf;\r
         LengthInBytes = sizeof ( pSocket->MaxTxBuf );\r
         break;\r
 \r
@@ -2797,7 +2797,7 @@ EslSocketOptionGet (
         //\r
         //  Return the socket type\r
         //\r
-        pOptionData = (UINT8 *)&pSocket->Type;\r
+        pOptionData = (CONST UINT8 *)&pSocket->Type;\r
         LengthInBytes = sizeof ( pSocket->Type );\r
         break;\r
       }\r
index 25133e6f89776815d51de8ac3c7bc87b0841db49..50bb2d3efdbb467d075509c5c7eec945bdc6b368 100644 (file)
@@ -220,7 +220,7 @@ typedef struct _ESL_IO_MGMT {
     EFI_UDP4_COMPLETION_TOKEN Udp4Rx; ///<  UDP4 receive token\r
     EFI_UDP4_COMPLETION_TOKEN Udp4Tx; ///<  UDP4 transmit token\r
   } Token;                            ///<  Completion token for the network operation\r
-};\r
+} GCC_IO_MGMT;\r
 \r
 /**\r
   IP4 context structure\r
@@ -480,6 +480,26 @@ EFI_STATUS
   IN BOOLEAN bBindTest\r
   );\r
 \r
+/**\r
+  Process the completion event\r
+\r
+  This routine handles the I/O completion event.\r
+\r
+  This routine is called by the low level network driver when\r
+  the operation is completed.\r
+\r
+  @param [in] Event     The receive completion event\r
+\r
+  @param [in] pIo       The address of an ::ESL_IO_MGMT structure\r
+\r
+**/\r
+typedef\r
+VOID\r
+(* PFN_API_IO_COMPLETE) (\r
+  IN EFI_EVENT Event,\r
+  IN ESL_IO_MGMT * pIo\r
+  );\r
+\r
 /**\r
   Determine if the socket is configured.\r
 \r
@@ -726,26 +746,6 @@ EFI_STATUS
   IN socklen_t SockAddrLength\r
   );\r
 \r
-/**\r
-  Process the receive completion\r
-\r
-  This routine handles the receive completion event.\r
-\r
-  This routine is called by the low level network driver when\r
-  data is received.\r
-\r
-  @param [in] Event     The receive completion event\r
-\r
-  @param [in] pIo       The address of an ::ESL_IO_MGMT structure\r
-\r
-**/\r
-typedef\r
-VOID\r
-(* PFN_API_RX_COMPLETE) (\r
-  IN EFI_EVENT Event,\r
-  IN ESL_IO_MGMT * pIo\r
-  );\r
-\r
 /**\r
   Start a receive operation\r
 \r
@@ -853,7 +853,7 @@ typedef struct {
   PFN_API_RECEIVE pfnReceive;               ///<  Attempt to receive some data\r
   PFN_API_REMOTE_ADDR_GET pfnRemoteAddrGet; ///<  Get remote address\r
   PFN_API_REMOTE_ADDR_SET pfnRemoteAddrSet; ///<  Set the remote system address\r
-  PFN_API_RX_COMPLETE pfnRxComplete;        ///<  RX completion\r
+  PFN_API_IO_COMPLETE pfnRxComplete;        ///<  RX completion\r
   PFN_API_RX_START pfnRxStart;              ///<  Start a network specific receive operation\r
   PFN_API_TRANSMIT pfnTransmit;             ///<  Attempt to buffer a packet for transmit\r
   PFN_API_TX_COMPLETE pfnTxComplete;        ///<  TX completion for normal data\r
@@ -1132,7 +1132,7 @@ EslSocketIoInit (
   IN ESL_IO_MGMT ** ppFreeQueue,\r
   IN UINTN DebugFlags,\r
   IN CHAR8 * pEventName,\r
-  IN EFI_EVENT_NOTIFY pfnCompletion\r
+  IN PFN_API_IO_COMPLETE pfnCompletion\r
   );\r
 \r
 /**\r