VirtualBox

Ignore:
Timestamp:
Apr 14, 2023 3:17:44 PM (22 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/UefiPxeBcDxe/PxeBcDhcp6.h

    r85718 r99404  
    1111#define __EFI_PXEBC_DHCP6_H__
    1212
    13 #define PXEBC_DHCP6_OPTION_MAX_NUM        16
    14 #define PXEBC_DHCP6_OPTION_MAX_SIZE       312
    15 #define PXEBC_DHCP6_PACKET_MAX_SIZE       (sizeof (EFI_PXE_BASE_CODE_PACKET))
    16 #define PXEBC_IP6_POLICY_MAX              0xff
    17 #define PXEBC_IP6_ROUTE_TABLE_TIMEOUT     10
    18 
    19 #define PXEBC_DHCP6_S_PORT                547
    20 #define PXEBC_DHCP6_C_PORT                546
    21 
    22 #define PXEBC_DHCP6_ENTERPRISE_NUM        343   // TODO: IANA TBD: temporarily using Intel's
    23 #define PXEBC_DHCP6_MAX_BOOT_FILE_SIZE    65535 //   It's a limitation of bit length, 65535*512 bytes.
    24 
    25 
    26 #define PXEBC_DHCP6_IDX_IA_NA             0
    27 #define PXEBC_DHCP6_IDX_BOOT_FILE_URL     1
    28 #define PXEBC_DHCP6_IDX_BOOT_FILE_PARAM   2
    29 #define PXEBC_DHCP6_IDX_VENDOR_CLASS      3
    30 #define PXEBC_DHCP6_IDX_DNS_SERVER        4
    31 #define PXEBC_DHCP6_IDX_MAX               5
     13#define PXEBC_DHCP6_OPTION_MAX_NUM     16
     14#define PXEBC_DHCP6_OPTION_MAX_SIZE    312
     15#define PXEBC_DHCP6_PACKET_MAX_SIZE    (sizeof (EFI_PXE_BASE_CODE_PACKET))
     16#define PXEBC_IP6_POLICY_MAX           0xff
     17#define PXEBC_IP6_ROUTE_TABLE_TIMEOUT  10
     18
     19#define PXEBC_DHCP6_S_PORT  547
     20#define PXEBC_DHCP6_C_PORT  546
     21
     22#define PXEBC_DHCP6_ENTERPRISE_NUM      343     // TODO: IANA TBD: temporarily using Intel's
     23#define PXEBC_DHCP6_MAX_BOOT_FILE_SIZE  65535   //   It's a limitation of bit length, 65535*512 bytes.
     24
     25#define PXEBC_DHCP6_IDX_IA_NA            0
     26#define PXEBC_DHCP6_IDX_BOOT_FILE_URL    1
     27#define PXEBC_DHCP6_IDX_BOOT_FILE_PARAM  2
     28#define PXEBC_DHCP6_IDX_VENDOR_CLASS     3
     29#define PXEBC_DHCP6_IDX_DNS_SERVER       4
     30#define PXEBC_DHCP6_IDX_MAX              5
    3231
    3332#define PXEBC_DHCP6_BOOT_FILE_URL_PREFIX  "tftp://"
     
    4847   (Type) == PxeOfferTypeProxyWfm11a)
    4948
    50 
    5149#pragma pack(1)
    5250typedef struct {
    53   UINT16 OpCode[256];
     51  UINT16    OpCode[256];
    5452} PXEBC_DHCP6_OPTION_ORO;
    5553
    5654typedef struct {
    57   UINT8 Type;
    58   UINT8 MajorVer;
    59   UINT8 MinorVer;
     55  UINT8    Type;
     56  UINT8    MajorVer;
     57  UINT8    MinorVer;
    6058} PXEBC_DHCP6_OPTION_UNDI;
    6159
    6260typedef struct {
    63   UINT16 Type;
     61  UINT16    Type;
    6462} PXEBC_DHCP6_OPTION_ARCH;
    6563
    6664typedef struct {
    67   UINT8 ClassIdentifier[10];
    68   UINT8 ArchitecturePrefix[5];
    69   UINT8 ArchitectureType[5];
    70   UINT8 Lit3[1];
    71   UINT8 InterfaceName[4];
    72   UINT8 Lit4[1];
    73   UINT8 UndiMajor[3];
    74   UINT8 UndiMinor[3];
     65  UINT8    ClassIdentifier[10];
     66  UINT8    ArchitecturePrefix[5];
     67  UINT8    ArchitectureType[5];
     68  UINT8    Lit3[1];
     69  UINT8    InterfaceName[4];
     70  UINT8    Lit4[1];
     71  UINT8    UndiMajor[3];
     72  UINT8    UndiMinor[3];
    7573} PXEBC_CLASS_ID;
    7674
    7775typedef struct {
    78   UINT32         Vendor;
    79   UINT16         ClassLen;
    80   PXEBC_CLASS_ID ClassId;
     76  UINT32            Vendor;
     77  UINT16            ClassLen;
     78  PXEBC_CLASS_ID    ClassId;
    8179} PXEBC_DHCP6_OPTION_VENDOR_CLASS;
    8280
     
    8482
    8583typedef union {
    86   PXEBC_DHCP6_OPTION_ORO            *Oro;
    87   PXEBC_DHCP6_OPTION_UNDI           *Undi;
    88   PXEBC_DHCP6_OPTION_ARCH           *Arch;
    89   PXEBC_DHCP6_OPTION_VENDOR_CLASS   *VendorClass;
     84  PXEBC_DHCP6_OPTION_ORO             *Oro;
     85  PXEBC_DHCP6_OPTION_UNDI            *Undi;
     86  PXEBC_DHCP6_OPTION_ARCH            *Arch;
     87  PXEBC_DHCP6_OPTION_VENDOR_CLASS    *VendorClass;
    9088} PXEBC_DHCP6_OPTION_ENTRY;
    9189
    9290typedef struct {
    93   LIST_ENTRY              Link;
    94   EFI_DHCP6_PACKET_OPTION *Option;
    95   UINT8                   Precedence;
     91  LIST_ENTRY                 Link;
     92  EFI_DHCP6_PACKET_OPTION    *Option;
     93  UINT8                      Precedence;
    9694} PXEBC_DHCP6_OPTION_NODE;
    9795
     
    9997
    10098typedef union {
    101   EFI_DHCP6_PACKET        Offer;
    102   EFI_DHCP6_PACKET        Ack;
    103   UINT8                   Buffer[PXEBC_CACHED_DHCP6_PACKET_MAX_SIZE];
     99  EFI_DHCP6_PACKET    Offer;
     100  EFI_DHCP6_PACKET    Ack;
     101  UINT8               Buffer[PXEBC_CACHED_DHCP6_PACKET_MAX_SIZE];
    104102} PXEBC_DHCP6_PACKET;
    105103
    106104typedef struct {
    107   PXEBC_DHCP6_PACKET      Packet;
    108   PXEBC_OFFER_TYPE        OfferType;
    109   EFI_DHCP6_PACKET_OPTION *OptList[PXEBC_DHCP6_IDX_MAX];
     105  PXEBC_DHCP6_PACKET         Packet;
     106  PXEBC_OFFER_TYPE           OfferType;
     107  EFI_DHCP6_PACKET_OPTION    *OptList[PXEBC_DHCP6_IDX_MAX];
    110108} PXEBC_DHCP6_PACKET_CACHE;
    111 
    112 
    113 
    114109
    115110/**
     
    129124EFI_STATUS
    130125PxeBcExtractBootFileUrl (
    131   IN PXEBC_PRIVATE_DATA      *Private,
    132      OUT UINT8               **FileName,
    133   IN OUT EFI_IPv6_ADDRESS    *SrvAddr,
    134   IN     CHAR8               *BootFile,
    135   IN     UINT16              Length
    136   );
    137 
     126  IN PXEBC_PRIVATE_DATA    *Private,
     127  OUT UINT8                **FileName,
     128  IN OUT EFI_IPv6_ADDRESS  *SrvAddr,
     129  IN     CHAR8             *BootFile,
     130  IN     UINT16            Length
     131  );
    138132
    139133/**
     
    149143EFI_STATUS
    150144PxeBcExtractBootFileParam (
    151   IN  CHAR8                  *BootFilePara,
    152   OUT UINT16                 *BootFileSize
    153   );
    154 
     145  IN  CHAR8   *BootFilePara,
     146  OUT UINT16  *BootFileSize
     147  );
    155148
    156149/**
     
    168161  );
    169162
    170 
    171163/**
    172164  Register the ready address by Ip6Config protocol.
     
    181173EFI_STATUS
    182174PxeBcRegisterIp6Address (
    183   IN PXEBC_PRIVATE_DATA            *Private,
    184   IN EFI_IPv6_ADDRESS              *Address
    185   );
    186 
     175  IN PXEBC_PRIVATE_DATA  *Private,
     176  IN EFI_IPv6_ADDRESS    *Address
     177  );
    187178
    188179/**
     
    194185VOID
    195186PxeBcUnregisterIp6Address (
    196   IN PXEBC_PRIVATE_DATA            *Private
    197   );
    198 
     187  IN PXEBC_PRIVATE_DATA  *Private
     188  );
    199189
    200190/**
     
    215205EFI_STATUS
    216206PxeBcDhcp6Discover (
    217   IN  PXEBC_PRIVATE_DATA            *Private,
    218   IN  UINT16                        Type,
    219   IN  UINT16                        *Layer,
    220   IN  BOOLEAN                       UseBis,
    221   IN  EFI_IP_ADDRESS                *DestIp
     207  IN  PXEBC_PRIVATE_DATA  *Private,
     208  IN  UINT16              Type,
     209  IN  UINT16              *Layer,
     210  IN  BOOLEAN             UseBis,
     211  IN  EFI_IP_ADDRESS      *DestIp
    222212  );
    223213
     
    233223EFI_STATUS
    234224PxeBcSetIp6Policy (
    235   IN PXEBC_PRIVATE_DATA            *Private
     225  IN PXEBC_PRIVATE_DATA  *Private
    236226  );
    237227
     
    247237EFI_STATUS
    248238PxeBcSetIp6Address (
    249   IN  PXEBC_PRIVATE_DATA              *Private
     239  IN  PXEBC_PRIVATE_DATA  *Private
    250240  );
    251241
     
    262252EFI_STATUS
    263253PxeBcDhcp6Sarr (
    264   IN PXEBC_PRIVATE_DATA            *Private,
    265   IN EFI_DHCP6_PROTOCOL            *Dhcp6
     254  IN PXEBC_PRIVATE_DATA  *Private,
     255  IN EFI_DHCP6_PROTOCOL  *Dhcp6
    266256  );
    267257
    268258#endif
    269 
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