Changeset 99404 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/HttpBootDxe/HttpBootDhcp6.h
- Timestamp:
- Apr 14, 2023 3:17:44 PM (22 months ago)
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-145445 /vendor/edk2/current 103735-103757,103769-103776,129194-156846
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/HttpBootDxe/HttpBootDhcp6.h
r85718 r99404 7 7 **/ 8 8 9 10 9 #ifndef __EFI_HTTP_BOOT_DHCP6_H__ 11 10 #define __EFI_HTTP_BOOT_DHCP6_H__ 12 11 13 #define HTTP_BOOT_OFFER_MAX_NUM 14 #define HTTP_BOOT_DHCP6_OPTION_MAX_NUM 15 #define HTTP_BOOT_DHCP6_OPTION_MAX_SIZE 16 #define HTTP_BOOT_DHCP6_PACKET_MAX_SIZE 17 #define HTTP_BOOT_IP6_ROUTE_TABLE_TIMEOUT 18 #define HTTP_BOOT_DEFAULT_HOPLIMIT 19 #define HTTP_BOOT_DEFAULT_LIFETIME 12 #define HTTP_BOOT_OFFER_MAX_NUM 16 13 #define HTTP_BOOT_DHCP6_OPTION_MAX_NUM 16 14 #define HTTP_BOOT_DHCP6_OPTION_MAX_SIZE 312 15 #define HTTP_BOOT_DHCP6_PACKET_MAX_SIZE 1472 16 #define HTTP_BOOT_IP6_ROUTE_TABLE_TIMEOUT 10 17 #define HTTP_BOOT_DEFAULT_HOPLIMIT 64 18 #define HTTP_BOOT_DEFAULT_LIFETIME 50000 20 19 21 #define HTTP_BOOT_DHCP6_ENTERPRISE_NUM 343// TODO: IANA TBD: temporarily using Intel's22 #define HTTP_BOOT_DHCP6_MAX_BOOT_FILE_SIZE 65535// It's a limitation of bit length, 65535*512 bytes.20 #define HTTP_BOOT_DHCP6_ENTERPRISE_NUM 343 // TODO: IANA TBD: temporarily using Intel's 21 #define HTTP_BOOT_DHCP6_MAX_BOOT_FILE_SIZE 65535 // It's a limitation of bit length, 65535*512 bytes. 23 22 24 #define HTTP_BOOT_DHCP6_IDX_IA_NA 25 #define HTTP_BOOT_DHCP6_IDX_BOOT_FILE_URL 26 #define HTTP_BOOT_DHCP6_IDX_BOOT_FILE_PARAM 27 #define HTTP_BOOT_DHCP6_IDX_VENDOR_CLASS 28 #define HTTP_BOOT_DHCP6_IDX_DNS_SERVER 29 #define HTTP_BOOT_DHCP6_IDX_MAX 23 #define HTTP_BOOT_DHCP6_IDX_IA_NA 0 24 #define HTTP_BOOT_DHCP6_IDX_BOOT_FILE_URL 1 25 #define HTTP_BOOT_DHCP6_IDX_BOOT_FILE_PARAM 2 26 #define HTTP_BOOT_DHCP6_IDX_VENDOR_CLASS 3 27 #define HTTP_BOOT_DHCP6_IDX_DNS_SERVER 4 28 #define HTTP_BOOT_DHCP6_IDX_MAX 5 30 29 31 30 #pragma pack(1) 32 31 typedef struct { 33 UINT16 OpCode[256];32 UINT16 OpCode[256]; 34 33 } HTTP_BOOT_DHCP6_OPTION_ORO; 35 34 36 35 typedef struct { 37 UINT8 Type;38 UINT8 MajorVer;39 UINT8 MinorVer;36 UINT8 Type; 37 UINT8 MajorVer; 38 UINT8 MinorVer; 40 39 } HTTP_BOOT_DHCP6_OPTION_UNDI; 41 40 42 41 typedef struct { 43 UINT16 Type;42 UINT16 Type; 44 43 } HTTP_BOOT_DHCP6_OPTION_ARCH; 45 44 46 45 typedef struct { 47 UINT8 ClassIdentifier[11];48 UINT8 ArchitecturePrefix[5];49 UINT8 ArchitectureType[5];50 UINT8 Lit3[1];51 UINT8 InterfaceName[4];52 UINT8 Lit4[1];53 UINT8 UndiMajor[3];54 UINT8 UndiMinor[3];46 UINT8 ClassIdentifier[11]; 47 UINT8 ArchitecturePrefix[5]; 48 UINT8 ArchitectureType[5]; 49 UINT8 Lit3[1]; 50 UINT8 InterfaceName[4]; 51 UINT8 Lit4[1]; 52 UINT8 UndiMajor[3]; 53 UINT8 UndiMinor[3]; 55 54 } HTTP_BOOT_CLASS_ID; 56 55 57 56 typedef struct { 58 UINT32 Vendor;59 UINT16 ClassLen;60 HTTP_BOOT_CLASS_ID ClassId;57 UINT32 Vendor; 58 UINT16 ClassLen; 59 HTTP_BOOT_CLASS_ID ClassId; 61 60 } HTTP_BOOT_DHCP6_OPTION_VENDOR_CLASS; 62 61 … … 64 63 65 64 typedef union { 66 HTTP_BOOT_DHCP6_OPTION_ORO *Oro;67 HTTP_BOOT_DHCP6_OPTION_UNDI *Undi;68 HTTP_BOOT_DHCP6_OPTION_ARCH *Arch;69 HTTP_BOOT_DHCP6_OPTION_VENDOR_CLASS *VendorClass;65 HTTP_BOOT_DHCP6_OPTION_ORO *Oro; 66 HTTP_BOOT_DHCP6_OPTION_UNDI *Undi; 67 HTTP_BOOT_DHCP6_OPTION_ARCH *Arch; 68 HTTP_BOOT_DHCP6_OPTION_VENDOR_CLASS *VendorClass; 70 69 } HTTP_BOOT_DHCP6_OPTION_ENTRY; 71 70 … … 73 72 74 73 typedef union { 75 EFI_DHCP6_PACKET 76 EFI_DHCP6_PACKET 77 UINT8 74 EFI_DHCP6_PACKET Offer; 75 EFI_DHCP6_PACKET Ack; 76 UINT8 Buffer[HTTP_CACHED_DHCP6_PACKET_MAX_SIZE]; 78 77 } HTTP_BOOT_DHCP6_PACKET; 79 78 80 79 typedef struct { 81 HTTP_BOOT_DHCP6_PACKET 82 HTTP_BOOT_OFFER_TYPE 83 EFI_DHCP6_PACKET_OPTION 84 VOID 80 HTTP_BOOT_DHCP6_PACKET Packet; 81 HTTP_BOOT_OFFER_TYPE OfferType; 82 EFI_DHCP6_PACKET_OPTION *OptList[HTTP_BOOT_DHCP6_IDX_MAX]; 83 VOID *UriParser; 85 84 } HTTP_BOOT_DHCP6_PACKET_CACHE; 86 85 … … 103 102 EFI_STATUS 104 103 HttpBootDhcp6Sarr ( 105 IN HTTP_BOOT_PRIVATE_DATA 104 IN HTTP_BOOT_PRIVATE_DATA *Private 106 105 ); 107 106 … … 117 116 EFI_STATUS 118 117 HttpBootSetIp6Policy ( 119 IN HTTP_BOOT_PRIVATE_DATA 118 IN HTTP_BOOT_PRIVATE_DATA *Private 120 119 ); 121 120 … … 134 133 EFI_STATUS 135 134 HttpBootSetIp6Dns ( 136 IN HTTP_BOOT_PRIVATE_DATA 137 IN UINTN 138 IN VOID 135 IN HTTP_BOOT_PRIVATE_DATA *Private, 136 IN UINTN DataLength, 137 IN VOID *DnsServerData 139 138 ); 140 139 … … 150 149 EFI_STATUS 151 150 HttpBootSetIp6Gateway ( 152 IN HTTP_BOOT_PRIVATE_DATA 151 IN HTTP_BOOT_PRIVATE_DATA *Private 153 152 ); 154 153 … … 164 163 EFI_STATUS 165 164 HttpBootSetIp6Address ( 166 IN HTTP_BOOT_PRIVATE_DATA 165 IN HTTP_BOOT_PRIVATE_DATA *Private 167 166 ); 168 167
Note:
See TracChangeset
for help on using the changeset viewer.