VirtualBox

Ignore:
Timestamp:
Apr 14, 2023 3:17:44 PM (21 months ago)
Author:
vboxsync
Message:

Devices/EFI/FirmwareNew: Update to edk2-stable202302 and make it build, bugref:4643

Location:
trunk/src/VBox/Devices/EFI/FirmwareNew
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/FirmwareNew

  • trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/Ip6Dxe/Ip6Impl.h

    r85718 r99404  
    5555#include "Ip6ConfigImpl.h"
    5656
    57 #define IP6_PROTOCOL_SIGNATURE SIGNATURE_32 ('I', 'P', '6', 'P')
    58 #define IP6_SERVICE_SIGNATURE  SIGNATURE_32 ('I', 'P', '6', 'S')
     57#define IP6_PROTOCOL_SIGNATURE  SIGNATURE_32 ('I', 'P', '6', 'P')
     58#define IP6_SERVICE_SIGNATURE   SIGNATURE_32 ('I', 'P', '6', 'S')
    5959
    6060//
     
    6464// becomes DESTROY.
    6565//
    66 #define IP6_STATE_UNCONFIGED   0
    67 #define IP6_STATE_CONFIGED     1
     66#define IP6_STATE_UNCONFIGED  0
     67#define IP6_STATE_CONFIGED    1
    6868
    6969//
     
    8484          CR ((Sb), IP6_SERVICE, ServiceBinding, IP6_SERVICE_SIGNATURE)
    8585
    86 #define IP6_NO_MAPPING(IpInstance) (!(IpInstance)->Interface->Configured)
    87 
    88 extern EFI_IPSEC2_PROTOCOL *mIpSec;
    89 extern BOOLEAN             mIpSec2Installed;
     86#define IP6_NO_MAPPING(IpInstance)  (!(IpInstance)->Interface->Configured)
     87
     88extern EFI_IPSEC2_PROTOCOL  *mIpSec;
     89extern BOOLEAN              mIpSec2Installed;
    9090
    9191//
     
    9999//
    100100typedef struct {
    101   IP6_PROTOCOL              *IpInstance;
    102   EFI_IP6_COMPLETION_TOKEN  *Token;
    103   EFI_EVENT                 IpSecRecycleSignal;
    104   NET_BUF                   *Packet;
    105   BOOLEAN                   Sent;
    106   INTN                      Life;
     101  IP6_PROTOCOL                *IpInstance;
     102  EFI_IP6_COMPLETION_TOKEN    *Token;
     103  EFI_EVENT                   IpSecRecycleSignal;
     104  NET_BUF                     *Packet;
     105  BOOLEAN                     Sent;
     106  INTN                        Life;
    107107} IP6_TXTOKEN_WRAP;
    108108
    109109typedef struct {
    110   EFI_EVENT                 IpSecRecycleSignal;
    111   NET_BUF                   *Packet;
     110  EFI_EVENT    IpSecRecycleSignal;
     111  NET_BUF      *Packet;
    112112} IP6_IPSEC_WRAP;
    113113
     
    122122//
    123123typedef struct {
    124   LIST_ENTRY                Link;
    125   IP6_PROTOCOL              *IpInstance;
    126   NET_BUF                   *Packet;
    127   EFI_IP6_RECEIVE_DATA      RxData;
     124  LIST_ENTRY              Link;
     125  IP6_PROTOCOL            *IpInstance;
     126  NET_BUF                 *Packet;
     127  EFI_IP6_RECEIVE_DATA    RxData;
    128128} IP6_RXDATA_WRAP;
    129129
    130130struct _IP6_PROTOCOL {
    131   UINT32                    Signature;
    132 
    133   EFI_IP6_PROTOCOL          Ip6Proto;
    134   EFI_HANDLE                Handle;
    135   INTN                      State;
    136 
    137   IP6_SERVICE               *Service;
    138   LIST_ENTRY                Link; // Link to all the IP protocol from the service
    139 
    140   UINT8                     PrefixLength; // PrefixLength of the configured station address.
     131  UINT32                 Signature;
     132
     133  EFI_IP6_PROTOCOL       Ip6Proto;
     134  EFI_HANDLE             Handle;
     135  INTN                   State;
     136
     137  IP6_SERVICE            *Service;
     138  LIST_ENTRY             Link;    // Link to all the IP protocol from the service
     139
     140  UINT8                  PrefixLength;    // PrefixLength of the configured station address.
    141141  //
    142142  // User's transmit/receive tokens, and received/delivered packets
    143143  //
    144   NET_MAP                   RxTokens;
    145   NET_MAP                   TxTokens;   // map between (User's Token, IP6_TXTOKE_WRAP)
    146   LIST_ENTRY                Received;   // Received but not delivered packet
    147   LIST_ENTRY                Delivered;  // Delivered and to be recycled packets
    148   EFI_LOCK                  RecycleLock;
    149 
    150   IP6_INTERFACE             *Interface;
    151   LIST_ENTRY                AddrLink;   // Ip instances with the same IP address.
    152 
    153   EFI_IPv6_ADDRESS          *GroupList; // stored in network order.
    154   UINT32                    GroupCount;
    155 
    156   EFI_IP6_CONFIG_DATA       ConfigData;
    157   BOOLEAN                   InDestroy;
     144  NET_MAP                RxTokens;
     145  NET_MAP                TxTokens;      // map between (User's Token, IP6_TXTOKE_WRAP)
     146  LIST_ENTRY             Received;      // Received but not delivered packet
     147  LIST_ENTRY             Delivered;     // Delivered and to be recycled packets
     148  EFI_LOCK               RecycleLock;
     149
     150  IP6_INTERFACE          *Interface;
     151  LIST_ENTRY             AddrLink;      // Ip instances with the same IP address.
     152
     153  EFI_IPv6_ADDRESS       *GroupList;    // stored in network order.
     154  UINT32                 GroupCount;
     155
     156  EFI_IP6_CONFIG_DATA    ConfigData;
     157  BOOLEAN                InDestroy;
    158158};
    159159
    160160struct _IP6_SERVICE {
    161   UINT32                          Signature;
    162   EFI_SERVICE_BINDING_PROTOCOL    ServiceBinding;
    163   INTN                            State;
     161  UINT32                             Signature;
     162  EFI_SERVICE_BINDING_PROTOCOL       ServiceBinding;
     163  INTN                               State;
    164164
    165165  //
     
    167167  // interface and route table and caches.
    168168  //
    169   UINTN                           NumChildren;
    170   LIST_ENTRY                      Children;
    171 
    172   LIST_ENTRY                      Interfaces;
    173 
    174   IP6_INTERFACE                   *DefaultInterface;
    175   IP6_ROUTE_TABLE                 *RouteTable;
    176 
    177   IP6_LINK_RX_TOKEN               RecvRequest;
     169  UINTN                              NumChildren;
     170  LIST_ENTRY                         Children;
     171
     172  LIST_ENTRY                         Interfaces;
     173
     174  IP6_INTERFACE                      *DefaultInterface;
     175  IP6_ROUTE_TABLE                    *RouteTable;
     176
     177  IP6_LINK_RX_TOKEN                  RecvRequest;
    178178
    179179  //
    180180  // Ip reassemble utilities and MLD data
    181181  //
    182   IP6_ASSEMBLE_TABLE              Assemble;
    183   IP6_MLD_SERVICE_DATA            MldCtrl;
    184 
    185   EFI_IPv6_ADDRESS                LinkLocalAddr;
    186   BOOLEAN                         LinkLocalOk;
    187   BOOLEAN                         LinkLocalDadFail;
    188   BOOLEAN                         Dhcp6NeedStart;
    189   BOOLEAN                         Dhcp6NeedInfoRequest;
     182  IP6_ASSEMBLE_TABLE                 Assemble;
     183  IP6_MLD_SERVICE_DATA               MldCtrl;
     184
     185  EFI_IPv6_ADDRESS                   LinkLocalAddr;
     186  BOOLEAN                            LinkLocalOk;
     187  BOOLEAN                            LinkLocalDadFail;
     188  BOOLEAN                            Dhcp6NeedStart;
     189  BOOLEAN                            Dhcp6NeedInfoRequest;
    190190
    191191  //
    192192  // ND data
    193193  //
    194   UINT8                           CurHopLimit;
    195   UINT32                          LinkMTU;
    196   UINT32                          BaseReachableTime;
    197   UINT32                          ReachableTime;
    198   UINT32                          RetransTimer;
    199   LIST_ENTRY                      NeighborTable;
    200 
    201   LIST_ENTRY                      OnlinkPrefix;
    202   LIST_ENTRY                      AutonomousPrefix;
    203 
    204   LIST_ENTRY                      DefaultRouterList;
    205   UINT32                          RoundRobin;
    206 
    207   UINT8                           InterfaceIdLen;
    208   UINT8                           *InterfaceId;
    209 
    210   BOOLEAN                         RouterAdvertiseReceived;
    211   UINT8                           SolicitTimer;
    212   UINT32                          Ticks;
     194  UINT8                              CurHopLimit;
     195  UINT32                             LinkMTU;
     196  UINT32                             BaseReachableTime;
     197  UINT32                             ReachableTime;
     198  UINT32                             RetransTimer;
     199  LIST_ENTRY                         NeighborTable;
     200
     201  LIST_ENTRY                         OnlinkPrefix;
     202  LIST_ENTRY                         AutonomousPrefix;
     203
     204  LIST_ENTRY                         DefaultRouterList;
     205  UINT32                             RoundRobin;
     206
     207  UINT8                              InterfaceIdLen;
     208  UINT8                              *InterfaceId;
     209
     210  BOOLEAN                            RouterAdvertiseReceived;
     211  UINT8                              SolicitTimer;
     212  UINT32                             Ticks;
    213213
    214214  //
    215215  // Low level protocol used by this service instance
    216216  //
    217   EFI_HANDLE                      Image;
    218   EFI_HANDLE                      Controller;
    219 
    220   EFI_HANDLE                      MnpChildHandle;
    221   EFI_MANAGED_NETWORK_PROTOCOL    *Mnp;
    222 
    223   EFI_MANAGED_NETWORK_CONFIG_DATA MnpConfigData;
    224   EFI_SIMPLE_NETWORK_MODE         SnpMode;
    225 
    226   EFI_EVENT                       Timer;
    227   EFI_EVENT                       FasterTimer;
     217  EFI_HANDLE                         Image;
     218  EFI_HANDLE                         Controller;
     219
     220  EFI_HANDLE                         MnpChildHandle;
     221  EFI_MANAGED_NETWORK_PROTOCOL       *Mnp;
     222
     223  EFI_MANAGED_NETWORK_CONFIG_DATA    MnpConfigData;
     224  EFI_SIMPLE_NETWORK_MODE            SnpMode;
     225
     226  EFI_EVENT                          Timer;
     227  EFI_EVENT                          FasterTimer;
    228228
    229229  //
    230230  // IPv6 Configuration Protocol instance
    231231  //
    232   IP6_CONFIG_INSTANCE             Ip6ConfigInstance;
     232  IP6_CONFIG_INSTANCE                Ip6ConfigInstance;
    233233
    234234  //
     
    236236  // NIC this IP6_SERVICE works on.
    237237  //
    238   CHAR16                          *MacString;
    239   UINT32                          MaxPacketSize;
    240   UINT32                          OldMaxPacketSize;
     238  CHAR16                             *MacString;
     239  UINT32                             MaxPacketSize;
     240  UINT32                             OldMaxPacketSize;
    241241};
    242242
     
    265265EFIAPI
    266266Ip6FreeTxToken (
    267   IN VOID                   *Context
     267  IN VOID  *Context
    268268  );
    269269
     
    288288EFI_STATUS
    289289Ip6ServiceConfigMnp (
    290   IN IP6_SERVICE            *IpSb,
    291   IN BOOLEAN                Force
     290  IN IP6_SERVICE  *IpSb,
     291  IN BOOLEAN      Force
    292292  );
    293293
     
    308308EFI_STATUS
    309309Ip6Cancel (
    310   IN IP6_PROTOCOL             *IpInstance,
    311   IN EFI_IP6_COMPLETION_TOKEN *Token          OPTIONAL
     310  IN IP6_PROTOCOL              *IpInstance,
     311  IN EFI_IP6_COMPLETION_TOKEN  *Token          OPTIONAL
    312312  );
    313313
     
    321321VOID
    322322Ip6InitProtocol (
    323   IN IP6_SERVICE            *IpSb,
    324   IN OUT IP6_PROTOCOL       *IpInstance
     323  IN IP6_SERVICE       *IpSb,
     324  IN OUT IP6_PROTOCOL  *IpInstance
    325325  );
    326326
     
    336336EFI_STATUS
    337337Ip6CleanProtocol (
    338   IN OUT IP6_PROTOCOL            *IpInstance
     338  IN OUT IP6_PROTOCOL  *IpInstance
    339339  );
    340340
     
    363363EFIAPI
    364364EfiIp6GetModeData (
    365   IN EFI_IP6_PROTOCOL                 *This,
    366   OUT EFI_IP6_MODE_DATA               *Ip6ModeData     OPTIONAL,
    367   OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData   OPTIONAL,
    368   OUT EFI_SIMPLE_NETWORK_MODE         *SnpModeData     OPTIONAL
     365  IN EFI_IP6_PROTOCOL                  *This,
     366  OUT EFI_IP6_MODE_DATA                *Ip6ModeData     OPTIONAL,
     367  OUT EFI_MANAGED_NETWORK_CONFIG_DATA  *MnpConfigData   OPTIONAL,
     368  OUT EFI_SIMPLE_NETWORK_MODE          *SnpModeData     OPTIONAL
    369369  );
    370370
     
    419419EFIAPI
    420420EfiIp6Configure (
    421   IN EFI_IP6_PROTOCOL          *This,
    422   IN EFI_IP6_CONFIG_DATA       *Ip6ConfigData OPTIONAL
     421  IN EFI_IP6_PROTOCOL     *This,
     422  IN EFI_IP6_CONFIG_DATA  *Ip6ConfigData OPTIONAL
    423423  );
    424424
     
    508508EFIAPI
    509509EfiIp6Routes (
    510   IN EFI_IP6_PROTOCOL    *This,
    511   IN BOOLEAN             DeleteRoute,
    512   IN EFI_IPv6_ADDRESS    *Destination    OPTIONAL,
    513   IN UINT8               PrefixLength,
    514   IN EFI_IPv6_ADDRESS    *GatewayAddress OPTIONAL
     510  IN EFI_IP6_PROTOCOL  *This,
     511  IN BOOLEAN           DeleteRoute,
     512  IN EFI_IPv6_ADDRESS  *Destination    OPTIONAL,
     513  IN UINT8             PrefixLength,
     514  IN EFI_IPv6_ADDRESS  *GatewayAddress OPTIONAL
    515515  );
    516516
     
    564564EFIAPI
    565565EfiIp6Neighbors (
    566   IN EFI_IP6_PROTOCOL          *This,
    567   IN BOOLEAN                   DeleteFlag,
    568   IN EFI_IPv6_ADDRESS          *TargetIp6Address,
    569   IN EFI_MAC_ADDRESS           *TargetLinkAddress OPTIONAL,
    570   IN UINT32                    Timeout,
    571   IN BOOLEAN                   Override
     566  IN EFI_IP6_PROTOCOL  *This,
     567  IN BOOLEAN           DeleteFlag,
     568  IN EFI_IPv6_ADDRESS  *TargetIp6Address,
     569  IN EFI_MAC_ADDRESS   *TargetLinkAddress OPTIONAL,
     570  IN UINT32            Timeout,
     571  IN BOOLEAN           Override
    572572  );
    573573
     
    743743EFIAPI
    744744EfiIp6Poll (
    745   IN EFI_IP6_PROTOCOL          *This
     745  IN EFI_IP6_PROTOCOL  *This
    746746  );
    747747
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette