]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EmulatorPkg/Unix/Host/BerkeleyPacketFilter.c
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / EmulatorPkg / Unix / Host / BerkeleyPacketFilter.c
index 540340f25f63cf19a50293c69e096b2fdccff353..ecfdacc7483828ea18785bddda7331d3b19283e1 100644 (file)
@@ -5,59 +5,54 @@
  Tested on Mac OS X.\r
 \r
 Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved.<BR>\r
-Portitions copyright (c) 2011, Apple Inc. All rights reserved.\r
+Portions copyright (c) 2011, Apple Inc. All rights reserved.\r
 \r
 SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
-\r
 #include "Host.h"\r
 \r
 #ifdef __APPLE__\r
 \r
+  #include <Library/NetLib.h>\r
 \r
-#include <Library/NetLib.h>\r
-\r
-\r
-#define EMU_SNP_PRIVATE_SIGNATURE SIGNATURE_32('E', 'M', 's', 'n')\r
+#define EMU_SNP_PRIVATE_SIGNATURE  SIGNATURE_32('E', 'M', 's', 'n')\r
 typedef struct {\r
-  UINTN                       Signature;\r
+  UINTN                      Signature;\r
 \r
-  EMU_IO_THUNK_PROTOCOL       *Thunk;\r
-  EMU_SNP_PROTOCOL            EmuSnp;\r
-  EFI_SIMPLE_NETWORK_MODE     *Mode;\r
+  EMU_IO_THUNK_PROTOCOL      *Thunk;\r
+  EMU_SNP_PROTOCOL           EmuSnp;\r
+  EFI_SIMPLE_NETWORK_MODE    *Mode;\r
 \r
-  int                         BpfFd;\r
-  char                        *InterfaceName;\r
-  EFI_MAC_ADDRESS             MacAddress;\r
-  u_int                       ReadBufferSize;\r
-  VOID                        *ReadBuffer;\r
+  int                        BpfFd;\r
+  char                       *InterfaceName;\r
+  EFI_MAC_ADDRESS            MacAddress;\r
+  u_int                      ReadBufferSize;\r
+  VOID                       *ReadBuffer;\r
 \r
   //\r
   // Two walking pointers to manage the multiple packets that can be returned\r
   // in a single read.\r
   //\r
-  VOID                        *CurrentReadPointer;\r
-  VOID                        *EndReadPointer;\r
-\r
-  UINT32                      ReceivedPackets;\r
-  UINT32                      DroppedPackets;\r
+  VOID                       *CurrentReadPointer;\r
+  VOID                       *EndReadPointer;\r
 \r
+  UINT32                     ReceivedPackets;\r
+  UINT32                     DroppedPackets;\r
 } EMU_SNP_PRIVATE;\r
 \r
 #define EMU_SNP_PRIVATE_DATA_FROM_THIS(a) \\r
          CR(a, EMU_SNP_PRIVATE, EmuSnp, EMU_SNP_PRIVATE_SIGNATURE)\r
 \r
-\r
 //\r
 // Strange, but there doesn't appear to be any structure for the Ethernet header in edk2...\r
 //\r
 \r
 typedef struct {\r
-  UINT8   DstAddr[NET_ETHER_ADDR_LEN];\r
-  UINT8   SrcAddr[NET_ETHER_ADDR_LEN];\r
-  UINT16  Type;\r
+  UINT8     DstAddr[NET_ETHER_ADDR_LEN];\r
+  UINT8     SrcAddr[NET_ETHER_ADDR_LEN];\r
+  UINT16    Type;\r
 } ETHERNET_HEADER;\r
 \r
 /**\r
@@ -76,7 +71,7 @@ EmuSnpCreateMapping (
   IN     EFI_SIMPLE_NETWORK_MODE  *Mode\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -100,40 +95,38 @@ EmuSnpCreateMapping (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
-static struct bpf_insn mFilterInstructionTemplate[] = {\r
+static struct bpf_insn  mFilterInstructionTemplate[] = {\r
   // Load 4 bytes from the destination MAC address.\r
-  BPF_STMT (BPF_LD + BPF_W + BPF_ABS, OFFSET_OF (ETHERNET_HEADER, DstAddr[0])),\r
+  BPF_STMT (BPF_LD + BPF_W + BPF_ABS,  OFFSET_OF (ETHERNET_HEADER, DstAddr[0])),\r
 \r
   // Compare to first 4 bytes of fake MAC address.\r
-  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0x12345678, 0, 3 ),\r
+  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0x12345678,                 0,           3),\r
 \r
   // Load remaining 2 bytes from the destination MAC address.\r
-  BPF_STMT (BPF_LD + BPF_H + BPF_ABS, OFFSET_OF( ETHERNET_HEADER, DstAddr[4])),\r
+  BPF_STMT (BPF_LD + BPF_H + BPF_ABS,  OFFSET_OF (ETHERNET_HEADER, DstAddr[4])),\r
 \r
   // Compare to remaining 2 bytes of fake MAC address.\r
-  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0x9ABC, 5, 0 ),\r
+  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0x9ABC,                     5,           0),\r
 \r
   // Load 4 bytes from the destination MAC address.\r
-  BPF_STMT (BPF_LD + BPF_W + BPF_ABS, OFFSET_OF (ETHERNET_HEADER, DstAddr[0])),\r
+  BPF_STMT (BPF_LD + BPF_W + BPF_ABS,  OFFSET_OF (ETHERNET_HEADER, DstAddr[0])),\r
 \r
   // Compare to first 4 bytes of broadcast MAC address.\r
-  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0xFFFFFFFF, 0, 2),\r
+  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0xFFFFFFFF,                 0,           2),\r
 \r
   // Load remaining 2 bytes from the destination MAC address.\r
-  BPF_STMT (BPF_LD + BPF_H + BPF_ABS, OFFSET_OF( ETHERNET_HEADER, DstAddr[4])),\r
+  BPF_STMT (BPF_LD + BPF_H + BPF_ABS,  OFFSET_OF (ETHERNET_HEADER, DstAddr[4])),\r
 \r
   // Compare to remaining 2 bytes of broadcast MAC address.\r
-  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0xFFFF, 1, 0),\r
+  BPF_JUMP (BPF_JMP + BPF_JEQ + BPF_K, 0xFFFF,                     1,           0),\r
 \r
   // Reject packet.\r
-  BPF_STMT (BPF_RET + BPF_K, 0),\r
+  BPF_STMT (BPF_RET + BPF_K,           0),\r
 \r
   // Receive entire packet.\r
-  BPF_STMT (BPF_RET + BPF_K, -1)\r
+  BPF_STMT (BPF_RET + BPF_K,           -1)\r
 };\r
 \r
-\r
 EFI_STATUS\r
 OpenBpfFileDescriptor (\r
   IN EMU_SNP_PRIVATE  *Private,\r
@@ -171,7 +164,6 @@ OpenBpfFileDescriptor (
   return EFI_OUT_OF_RESOURCES;\r
 }\r
 \r
-\r
 /**\r
   Changes the state of a network interface from "stopped" to "started".\r
 \r
@@ -189,15 +181,15 @@ EmuSnpStart (
   IN EMU_SNP_PROTOCOL  *This\r
   )\r
 {\r
-  EFI_STATUS         Status;\r
-  EMU_SNP_PRIVATE    *Private;\r
-  struct ifreq       BoundIf;\r
-  struct bpf_program BpfProgram;\r
-  struct bpf_insn    *FilterProgram;\r
+  EFI_STATUS          Status;\r
+  EMU_SNP_PRIVATE     *Private;\r
+  struct ifreq        BoundIf;\r
+  struct bpf_program  BpfProgram;\r
+  struct bpf_insn     *FilterProgram;\r
   u_int               Value;\r
   u_int               ReadBufferSize;\r
-  UINT16             Temp16;\r
-  UINT32             Temp32;\r
+  UINT16              Temp16;\r
+  UINT32              Temp32;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -215,7 +207,7 @@ EmuSnpStart (
       break;\r
   }\r
 \r
-  Status = EFI_SUCCESS;\r
+  Status              = EFI_SUCCESS;\r
   Private->ReadBuffer = NULL;\r
   if (Private->BpfFd == 0) {\r
     Status = OpenBpfFileDescriptor (Private, &Private->BpfFd);\r
@@ -282,7 +274,7 @@ EmuSnpStart (
     // Allocate read buffer.\r
     //\r
     Private->ReadBufferSize = ReadBufferSize;\r
-    Private->ReadBuffer = malloc (Private->ReadBufferSize);\r
+    Private->ReadBuffer     = malloc (Private->ReadBufferSize);\r
     if (Private->ReadBuffer == NULL) {\r
       goto ErrorExit;\r
     }\r
@@ -293,7 +285,7 @@ EmuSnpStart (
     // Install our packet filter: successful reads should only produce broadcast or unicast\r
     // packets directed to our fake MAC address.\r
     //\r
-    FilterProgram = malloc (sizeof (mFilterInstructionTemplate)) ;\r
+    FilterProgram = malloc (sizeof (mFilterInstructionTemplate));\r
     if ( FilterProgram == NULL ) {\r
       goto ErrorExit;\r
     }\r
@@ -308,7 +300,7 @@ EmuSnpStart (
     CopyMem (&Temp16, &Private->Mode->CurrentAddress.Addr[4], sizeof (UINT16));\r
     FilterProgram[3].k = NTOHS (Temp16);\r
 \r
-    BpfProgram.bf_len = sizeof (mFilterInstructionTemplate) / sizeof (struct bpf_insn);\r
+    BpfProgram.bf_len   = sizeof (mFilterInstructionTemplate) / sizeof (struct bpf_insn);\r
     BpfProgram.bf_insns = FilterProgram;\r
 \r
     if (ioctl (Private->BpfFd, BIOCSETF, &BpfProgram) < 0) {\r
@@ -324,7 +316,6 @@ EmuSnpStart (
       goto DeviceErrorExit;\r
     }\r
 \r
-\r
     Private->Mode->State = EfiSimpleNetworkStarted;\r
   }\r
 \r
@@ -337,10 +328,10 @@ ErrorExit:
     free (Private->ReadBuffer);\r
     Private->ReadBuffer = NULL;\r
   }\r
+\r
   return Status;\r
 }\r
 \r
-\r
 /**\r
   Changes the state of a network interface from "started" to "stopped".\r
 \r
@@ -358,7 +349,7 @@ EmuSnpStop (
   IN EMU_SNP_PROTOCOL  *This\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -381,7 +372,7 @@ EmuSnpStop (
   }\r
 \r
   if (Private->ReadBuffer != NULL) {\r
-    free (Private->ReadBuffer );\r
+    free (Private->ReadBuffer);\r
     Private->CurrentReadPointer = Private->EndReadPointer = Private->ReadBuffer = NULL;\r
   }\r
 \r
@@ -390,7 +381,6 @@ EmuSnpStop (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Resets a network adapter and allocates the transmit and receive buffers\r
   required by the network interface; optionally, also requests allocation\r
@@ -419,12 +409,12 @@ EmuSnpStop (
 **/\r
 EFI_STATUS\r
 EmuSnpInitialize (\r
-  IN EMU_SNP_PROTOCOL                    *This,\r
-  IN UINTN                               ExtraRxBufferSize  OPTIONAL,\r
-  IN UINTN                               ExtraTxBufferSize  OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN UINTN             ExtraRxBufferSize  OPTIONAL,\r
+  IN UINTN             ExtraTxBufferSize  OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -441,7 +431,7 @@ EmuSnpInitialize (
       break;\r
   }\r
 \r
-  Private->Mode->MCastFilterCount = 0;\r
+  Private->Mode->MCastFilterCount     = 0;\r
   Private->Mode->ReceiveFilterSetting = 0;\r
   ZeroMem (Private->Mode->MCastFilter, sizeof (Private->Mode->MCastFilter));\r
 \r
@@ -450,7 +440,6 @@ EmuSnpInitialize (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Resets a network adapter and re-initializes it with the parameters that were\r
   provided in the previous call to Initialize().\r
@@ -469,11 +458,11 @@ EmuSnpInitialize (
 **/\r
 EFI_STATUS\r
 EmuSnpReset (\r
-  IN EMU_SNP_PROTOCOL   *This,\r
-  IN BOOLEAN            ExtendedVerification\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN BOOLEAN           ExtendedVerification\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -493,7 +482,6 @@ EmuSnpReset (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Resets a network adapter and leaves it in a state that is safe for\r
   another driver to initialize.\r
@@ -512,7 +500,7 @@ EmuSnpShutdown (
   IN EMU_SNP_PROTOCOL  *This\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -532,7 +520,7 @@ EmuSnpShutdown (
   Private->Mode->State = EfiSimpleNetworkStarted;\r
 \r
   Private->Mode->ReceiveFilterSetting = 0;\r
-  Private->Mode->MCastFilterCount = 0;\r
+  Private->Mode->MCastFilterCount     = 0;\r
   ZeroMem (Private->Mode->MCastFilter, sizeof (Private->Mode->MCastFilter));\r
 \r
   if (Private->BpfFd != 0) {\r
@@ -574,15 +562,15 @@ EmuSnpShutdown (
 **/\r
 EFI_STATUS\r
 EmuSnpReceiveFilters (\r
-  IN EMU_SNP_PROTOCOL                             *This,\r
-  IN UINT32                                       Enable,\r
-  IN UINT32                                       Disable,\r
-  IN BOOLEAN                                      ResetMCastFilter,\r
-  IN UINTN                                        MCastFilterCnt     OPTIONAL,\r
-  IN EFI_MAC_ADDRESS                              *MCastFilter OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN UINT32            Enable,\r
+  IN UINT32            Disable,\r
+  IN BOOLEAN           ResetMCastFilter,\r
+  IN UINTN             MCastFilterCnt     OPTIONAL,\r
+  IN EFI_MAC_ADDRESS   *MCastFilter OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -590,7 +578,6 @@ EmuSnpReceiveFilters (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Modifies or resets the current station address, if supported.\r
 \r
@@ -608,19 +595,18 @@ EmuSnpReceiveFilters (
 **/\r
 EFI_STATUS\r
 EmuSnpStationAddress (\r
-  IN EMU_SNP_PROTOCOL            *This,\r
-  IN BOOLEAN                     Reset,\r
-  IN EFI_MAC_ADDRESS             *New OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN BOOLEAN           Reset,\r
+  IN EFI_MAC_ADDRESS   *New OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
   return EFI_UNSUPPORTED;\r
 }\r
 \r
-\r
 /**\r
   Resets or collects the statistics on a network interface.\r
 \r
@@ -644,20 +630,19 @@ EmuSnpStationAddress (
 **/\r
 EFI_STATUS\r
 EmuSnpStatistics (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  IN BOOLEAN                              Reset,\r
-  IN OUT UINTN                            *StatisticsSize   OPTIONAL,\r
-  OUT EFI_NETWORK_STATISTICS              *StatisticsTable  OPTIONAL\r
+  IN EMU_SNP_PROTOCOL         *This,\r
+  IN BOOLEAN                  Reset,\r
+  IN OUT UINTN                *StatisticsSize   OPTIONAL,\r
+  OUT EFI_NETWORK_STATISTICS  *StatisticsTable  OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
   return EFI_UNSUPPORTED;\r
 }\r
 \r
-\r
 /**\r
   Converts a multicast IP address to a multicast HW MAC address.\r
 \r
@@ -681,20 +666,19 @@ EmuSnpStatistics (
 **/\r
 EFI_STATUS\r
 EmuSnpMCastIpToMac (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  IN BOOLEAN                              IPv6,\r
-  IN EFI_IP_ADDRESS                       *IP,\r
-  OUT EFI_MAC_ADDRESS                     *MAC\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN BOOLEAN           IPv6,\r
+  IN EFI_IP_ADDRESS    *IP,\r
+  OUT EFI_MAC_ADDRESS  *MAC\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
   return EFI_UNSUPPORTED;\r
 }\r
 \r
-\r
 /**\r
   Performs read and write operations on the NVRAM device attached to a\r
   network interface.\r
@@ -717,14 +701,14 @@ EmuSnpMCastIpToMac (
 **/\r
 EFI_STATUS\r
 EmuSnpNvData (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  IN BOOLEAN                              ReadWrite,\r
-  IN UINTN                                Offset,\r
-  IN UINTN                                BufferSize,\r
-  IN OUT VOID                             *Buffer\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN BOOLEAN           ReadWrite,\r
+  IN UINTN             Offset,\r
+  IN UINTN             BufferSize,\r
+  IN OUT VOID          *Buffer\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -758,19 +742,15 @@ EmuSnpNvData (
 **/\r
 EFI_STATUS\r
 EmuSnpGetStatus (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  OUT UINT32                              *InterruptStatus OPTIONAL,\r
-  OUT VOID                                **TxBuf OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  OUT UINT32           *InterruptStatus OPTIONAL,\r
+  OUT VOID             **TxBuf OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
+  EMU_SNP_PRIVATE  *Private;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
-  if (TxBuf != NULL) {\r
-    *((UINT8 **)TxBuf) =  (UINT8 *)1;\r
-  }\r
-\r
   if ( InterruptStatus != NULL ) {\r
     *InterruptStatus = EFI_SIMPLE_NETWORK_TRANSMIT_INTERRUPT;\r
   }\r
@@ -778,7 +758,6 @@ EmuSnpGetStatus (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Places a packet in the transmit queue of a network interface.\r
 \r
@@ -814,17 +793,17 @@ EmuSnpGetStatus (
 **/\r
 EFI_STATUS\r
 EmuSnpTransmit (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  IN UINTN                                HeaderSize,\r
-  IN UINTN                                BufferSize,\r
-  IN VOID                                 *Buffer,\r
-  IN EFI_MAC_ADDRESS                      *SrcAddr  OPTIONAL,\r
-  IN EFI_MAC_ADDRESS                      *DestAddr OPTIONAL,\r
-  IN UINT16                               *Protocol OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  IN UINTN             HeaderSize,\r
+  IN UINTN             BufferSize,\r
+  IN VOID              *Buffer,\r
+  IN EFI_MAC_ADDRESS   *SrcAddr  OPTIONAL,\r
+  IN EFI_MAC_ADDRESS   *DestAddr OPTIONAL,\r
+  IN UINT16            *Protocol OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
-  ETHERNET_HEADER    *EnetHeader;\r
+  EMU_SNP_PRIVATE  *Private;\r
+  ETHERNET_HEADER  *EnetHeader;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -841,15 +820,15 @@ EmuSnpTransmit (
       SrcAddr = &Private->Mode->CurrentAddress;\r
     }\r
 \r
-    EnetHeader = (ETHERNET_HEADER *) Buffer;\r
+    EnetHeader = (ETHERNET_HEADER *)Buffer;\r
 \r
     CopyMem (EnetHeader->DstAddr, DestAddr, NET_ETHER_ADDR_LEN);\r
     CopyMem (EnetHeader->SrcAddr, SrcAddr, NET_ETHER_ADDR_LEN);\r
 \r
-    EnetHeader->Type = HTONS(*Protocol);\r
+    EnetHeader->Type = HTONS (*Protocol);\r
   }\r
 \r
-  if (write  (Private->BpfFd, Buffer, BufferSize) < 0) {\r
+  if (write (Private->BpfFd, Buffer, BufferSize) < 0) {\r
     return EFI_DEVICE_ERROR;\r
   }\r
 \r
@@ -890,20 +869,20 @@ EmuSnpTransmit (
 **/\r
 EFI_STATUS\r
 EmuSnpReceive (\r
-  IN EMU_SNP_PROTOCOL                     *This,\r
-  OUT UINTN                               *HeaderSize OPTIONAL,\r
-  IN OUT UINTN                            *BufferSize,\r
-  OUT VOID                                *Buffer,\r
-  OUT EFI_MAC_ADDRESS                     *SrcAddr    OPTIONAL,\r
-  OUT EFI_MAC_ADDRESS                     *DestAddr   OPTIONAL,\r
-  OUT UINT16                              *Protocol   OPTIONAL\r
+  IN EMU_SNP_PROTOCOL  *This,\r
+  OUT UINTN            *HeaderSize OPTIONAL,\r
+  IN OUT UINTN         *BufferSize,\r
+  OUT VOID             *Buffer,\r
+  OUT EFI_MAC_ADDRESS  *SrcAddr    OPTIONAL,\r
+  OUT EFI_MAC_ADDRESS  *DestAddr   OPTIONAL,\r
+  OUT UINT16           *Protocol   OPTIONAL\r
   )\r
 {\r
-  EMU_SNP_PRIVATE    *Private;\r
-  struct bpf_hdr     *BpfHeader;\r
-  struct bpf_stat     BpfStats;\r
-  ETHERNET_HEADER    *EnetHeader;\r
-  ssize_t            Result;\r
+  EMU_SNP_PRIVATE  *Private;\r
+  struct bpf_hdr   *BpfHeader;\r
+  struct bpf_stat  BpfStats;\r
+  ETHERNET_HEADER  *EnetHeader;\r
+  ssize_t          Result;\r
 \r
   Private = EMU_SNP_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -911,7 +890,7 @@ EmuSnpReceive (
     return EFI_NOT_STARTED;\r
   }\r
 \r
-  ZeroMem (&BpfStats, sizeofBpfStats));\r
+  ZeroMem (&BpfStats, sizeof (BpfStats));\r
 \r
   if (ioctl (Private->BpfFd, BIOCGSTATS, &BpfStats) == 0) {\r
     Private->ReceivedPackets += BpfStats.bs_recv;\r
@@ -940,10 +919,10 @@ EmuSnpReceive (
     }\r
 \r
     Private->CurrentReadPointer = Private->ReadBuffer;\r
-    Private->EndReadPointer = Private->CurrentReadPointer + Result;\r
+    Private->EndReadPointer     = Private->CurrentReadPointer + Result;\r
   }\r
 \r
-  BpfHeader = Private->CurrentReadPointer;\r
+  BpfHeader  = Private->CurrentReadPointer;\r
   EnetHeader = Private->CurrentReadPointer + BpfHeader->bh_hdrlen;\r
 \r
   if (BpfHeader->bh_caplen > *BufferSize) {\r
@@ -976,8 +955,7 @@ EmuSnpReceive (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
-EMU_SNP_PROTOCOL gEmuSnpProtocol = {\r
+EMU_SNP_PROTOCOL  gEmuSnpProtocol = {\r
   GasketSnpCreateMapping,\r
   GasketSnpStart,\r
   GasketSnpStop,\r
@@ -996,7 +974,7 @@ EMU_SNP_PROTOCOL gEmuSnpProtocol = {
 \r
 EFI_STATUS\r
 GetInterfaceMacAddr (\r
-  EMU_SNP_PRIVATE    *Private\r
+  EMU_SNP_PRIVATE  *Private\r
   )\r
 {\r
   EFI_STATUS          Status;\r
@@ -1024,12 +1002,12 @@ GetInterfaceMacAddr (
     );\r
 \r
   Status = EFI_NOT_FOUND;\r
-  If = IfAddrs;\r
+  If     = IfAddrs;\r
   while (If != NULL) {\r
     IfSdl = (struct sockaddr_dl *)If->ifa_addr;\r
 \r
     if (IfSdl->sdl_family == AF_LINK) {\r
-      if (!AsciiStrCmpPrivate->InterfaceName, If->ifa_name)) {\r
+      if (!AsciiStrCmp (Private->InterfaceName, If->ifa_name)) {\r
         CopyMem (&Private->MacAddress, LLADDR (IfSdl), NET_ETHER_ADDR_LEN);\r
 \r
         Status = EFI_SUCCESS;\r
@@ -1045,10 +1023,9 @@ Exit:
   return Status;\r
 }\r
 \r
-\r
 EFI_STATUS\r
 EmuSnpThunkOpen (\r
-  IN  EMU_IO_THUNK_PROTOCOL   *This\r
+  IN  EMU_IO_THUNK_PROTOCOL  *This\r
   )\r
 {\r
   EMU_SNP_PRIVATE  *Private;\r
@@ -1066,7 +1043,6 @@ EmuSnpThunkOpen (
     return EFI_OUT_OF_RESOURCES;\r
   }\r
 \r
-\r
   Private->Signature = EMU_SNP_PRIVATE_SIGNATURE;\r
   Private->Thunk     = This;\r
   CopyMem (&Private->EmuSnp, &gEmuSnpProtocol, sizeof (gEmuSnpProtocol));\r
@@ -1077,10 +1053,9 @@ EmuSnpThunkOpen (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 EFI_STATUS\r
 EmuSnpThunkClose (\r
-  IN  EMU_IO_THUNK_PROTOCOL   *This\r
+  IN  EMU_IO_THUNK_PROTOCOL  *This\r
   )\r
 {\r
   EMU_SNP_PRIVATE  *Private;\r
@@ -1095,9 +1070,7 @@ EmuSnpThunkClose (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
-\r
-EMU_IO_THUNK_PROTOCOL gSnpThunkIo = {\r
+EMU_IO_THUNK_PROTOCOL  gSnpThunkIo = {\r
   &gEmuSnpProtocolGuid,\r
   NULL,\r
   NULL,\r