- 時間撮記:
- 2023-4-14 下午03:17:44 (2 年 以前)
- svn:sync-xref-src-repo-rev:
- 156854
- 位置:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- 檔案:
-
- 修改 2 筆資料
圖例:
- 未更動
- 新增
- 刪除
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
屬性 svn:mergeinfo
由 (切換已刪除的分支)
變更至 (切換已刪除的分支)/vendor/edk2/current 103735-103757,103769-103776,129194-145445 /vendor/edk2/current 103735-103757,103769-103776,129194-156846
-
屬性 svn:mergeinfo
由 (切換已刪除的分支)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/MdePkg/Include/Protocol/Dhcp6.h
r80721 r99404 31 31 /// to be called 32 32 /// 33 Dhcp6Init 33 Dhcp6Init = 0x0, 34 34 /// 35 35 /// A Solicit packet is sent out to discover DHCPv6 server, and the EFI 36 36 /// DHCPv6 Protocol instance is collecting Advertise packets. 37 37 /// 38 Dhcp6Selecting 38 Dhcp6Selecting = 0x1, 39 39 /// 40 40 /// A Request is sent out to the DHCPv6 server, and the EFI DHCPv6 41 41 /// Protocol instance is waiting for Reply packet. 42 42 /// 43 Dhcp6Requesting 43 Dhcp6Requesting = 0x2, 44 44 /// 45 45 /// A Decline packet is sent out to indicate one or more addresses of the … … 47 47 /// Protocol instance is waiting for Reply packet. 48 48 /// 49 Dhcp6Declining 49 Dhcp6Declining = 0x3, 50 50 /// 51 51 /// A Confirm packet is sent out to confirm the IPv6 addresses of the 52 52 /// configured IA, and the EFI DHCPv6 Protocol instance is waiting for Reply packet. 53 53 /// 54 Dhcp6Confirming 54 Dhcp6Confirming = 0x4, 55 55 /// 56 56 /// A Release packet is sent out to release one or more IPv6 addresses of 57 57 /// the configured IA, and the EFI DHCPv6 Protocol instance is waiting for Reply packet. 58 58 /// 59 Dhcp6Releasing 59 Dhcp6Releasing = 0x5, 60 60 /// 61 61 /// The DHCPv6 S.A.R.R process is completed for the configured IA. 62 62 /// 63 Dhcp6Bound 63 Dhcp6Bound = 0x6, 64 64 /// 65 65 /// A Renew packet is sent out to extend lifetime for the IPv6 addresses of 66 66 /// the configured IA, and the EFI DHCPv6 Protocol instance is waiting for Reply packet. 67 67 /// 68 Dhcp6Renewing 68 Dhcp6Renewing = 0x7, 69 69 /// 70 70 /// A Rebind packet is sent out to extend lifetime for the IPv6 addresses of 71 71 /// the configured IA, and the EFI DHCPv6 Protocol instance is waiting for Reply packet. 72 72 /// 73 Dhcp6Rebinding 73 Dhcp6Rebinding = 0x8 74 74 } EFI_DHCP6_STATE; 75 75 … … 79 79 /// can be modified or replaced in Dhcp6Callback. 80 80 /// 81 Dhcp6SendSolicit 81 Dhcp6SendSolicit = 0x0, 82 82 /// 83 83 /// An Advertise packet is received and will be passed to Dhcp6Callback. 84 84 /// 85 Dhcp6RcvdAdvertise 85 Dhcp6RcvdAdvertise = 0x1, 86 86 /// 87 87 /// It is time for Dhcp6Callback to determine whether select the default Advertise 88 88 /// packet by RFC 3315 policy, or overwrite it by specific user policy. 89 89 /// 90 Dhcp6SelectAdvertise 90 Dhcp6SelectAdvertise = 0x2, 91 91 /// 92 92 /// A Request packet is about to be sent. The packet is passed to Dhcp6Callback and 93 93 /// can be modified or replaced in Dhcp6Callback. 94 94 /// 95 Dhcp6SendRequest 95 Dhcp6SendRequest = 0x3, 96 96 /// 97 97 /// A Reply packet is received and will be passed to Dhcp6Callback. 98 98 /// 99 Dhcp6RcvdReply 99 Dhcp6RcvdReply = 0x4, 100 100 /// 101 101 /// A Reconfigure packet is received and will be passed to Dhcp6Callback. 102 102 /// 103 Dhcp6RcvdReconfigure 103 Dhcp6RcvdReconfigure = 0x5, 104 104 /// 105 105 /// A Decline packet is about to be sent. The packet is passed to Dhcp6Callback and 106 106 /// can be modified or replaced in Dhcp6Callback. 107 107 /// 108 Dhcp6SendDecline 108 Dhcp6SendDecline = 0x6, 109 109 /// 110 110 /// A Confirm packet is about to be sent. The packet is passed to Dhcp6Callback and 111 111 /// can be modified or replaced in Dhcp6Callback. 112 112 /// 113 Dhcp6SendConfirm 113 Dhcp6SendConfirm = 0x7, 114 114 /// 115 115 /// A Release packet is about to be sent. The packet is passed to Dhcp6Callback and 116 116 /// can be modified or replaced in Dhcp6Callback. 117 117 /// 118 Dhcp6SendRelease 118 Dhcp6SendRelease = 0x8, 119 119 /// 120 120 /// A Renew packet is about to be sent. The packet is passed to Dhcp6Callback and 121 121 /// can be modified or replaced in Dhcp6Callback. 122 122 /// 123 Dhcp6EnterRenewing 123 Dhcp6EnterRenewing = 0x9, 124 124 /// 125 125 /// A Rebind packet is about to be sent. The packet is passed to Dhcp6Callback and 126 126 /// can be modified or replaced in Dhcp6Callback. 127 127 /// 128 Dhcp6EnterRebinding 128 Dhcp6EnterRebinding = 0xa 129 129 } EFI_DHCP6_EVENT; 130 130 … … 132 132 /// An IA which carries assigned not temporary address. 133 133 /// 134 #define EFI_DHCP6_IA_TYPE_NA 134 #define EFI_DHCP6_IA_TYPE_NA 3 135 135 /// 136 136 /// An IA which carries assigned temporary address. 137 137 /// 138 #define EFI_DHCP6_IA_TYPE_TA 138 #define EFI_DHCP6_IA_TYPE_TA 4 139 139 140 140 #pragma pack(1) … … 148 148 /// The DHCPv6 option code, stored in network order. 149 149 /// 150 UINT16 150 UINT16 OpCode; 151 151 /// 152 152 /// Length of the DHCPv6 option data, stored in network order. 153 153 /// From the first byte to the last byte of the Data field. 154 154 /// 155 UINT16 155 UINT16 OpLen; 156 156 /// 157 157 /// The data for the DHCPv6 option, stored in network order. 158 158 /// 159 UINT8 159 UINT8 Data[1]; 160 160 } EFI_DHCP6_PACKET_OPTION; 161 161 … … 164 164 /// defines the format of the DHCPv6 header. See RFC 3315 for more information. 165 165 /// 166 typedef struct {166 typedef struct { 167 167 /// 168 168 /// The DHCPv6 transaction ID. 169 169 /// 170 UINT32 MessageType:8;170 UINT32 MessageType : 8; 171 171 /// 172 172 /// The DHCPv6 message type. 173 173 /// 174 UINT32 TransactionId:24;174 UINT32 TransactionId : 24; 175 175 } EFI_DHCP6_HEADER; 176 176 … … 183 183 /// Size of the EFI_DHCP6_PACKET buffer. 184 184 /// 185 UINT32 185 UINT32 Size; 186 186 /// 187 187 /// Length of the EFI_DHCP6_PACKET from the first byte of the Header field to the last 188 188 /// byte of the Option[] field. 189 189 /// 190 UINT32 191 struct {190 UINT32 Length; 191 struct { 192 192 /// 193 193 /// The DHCPv6 packet header. 194 194 /// 195 EFI_DHCP6_HEADER 195 EFI_DHCP6_HEADER Header; 196 196 /// 197 197 /// Start of the DHCPv6 packed option data. 198 198 /// 199 UINT8 199 UINT8 Option[1]; 200 200 } Dhcp6; 201 201 } EFI_DHCP6_PACKET; … … 207 207 /// Length of DUID in octects. 208 208 /// 209 UINT16 209 UINT16 Length; 210 210 /// 211 211 /// Array of DUID octects. 212 212 /// 213 UINT8 213 UINT8 Duid[1]; 214 214 } EFI_DHCP6_DUID; 215 215 … … 218 218 /// Initial retransmission timeout. 219 219 /// 220 UINT32 220 UINT32 Irt; 221 221 /// 222 222 /// Maximum retransmission count for one packet. If Mrc is zero, there's no upper limit 223 223 /// for retransmission count. 224 224 /// 225 UINT32 225 UINT32 Mrc; 226 226 /// 227 227 /// Maximum retransmission timeout for each retry. It's the upper bound of the number of … … 229 229 /// timeout. 230 230 /// 231 UINT32 231 UINT32 Mrt; 232 232 /// 233 233 /// Maximum retransmission duration for one packet. It's the upper bound of the numbers … … 235 235 /// retransmission duration. 236 236 /// 237 UINT32 237 UINT32 Mrd; 238 238 } EFI_DHCP6_RETRANSMISSION; 239 239 … … 242 242 /// The IPv6 address. 243 243 /// 244 EFI_IPv6_ADDRESS 244 EFI_IPv6_ADDRESS IpAddress; 245 245 /// 246 246 /// The preferred lifetime in unit of seconds for the IPv6 address. 247 247 /// 248 UINT32 248 UINT32 PreferredLifetime; 249 249 /// 250 250 /// The valid lifetime in unit of seconds for the IPv6 address. 251 251 /// 252 UINT32 252 UINT32 ValidLifetime; 253 253 } EFI_DHCP6_IA_ADDRESS; 254 254 255 255 typedef struct { 256 UINT16 Type;///< Type for an IA.257 UINT32 IaId;///< The identifier for an IA.256 UINT16 Type; ///< Type for an IA. 257 UINT32 IaId; ///< The identifier for an IA. 258 258 } EFI_DHCP6_IA_DESCRIPTOR; 259 259 … … 262 262 /// The descriptor for IA. 263 263 /// 264 EFI_DHCP6_IA_DESCRIPTOR 264 EFI_DHCP6_IA_DESCRIPTOR Descriptor; 265 265 /// 266 266 /// The state of the configured IA. 267 267 /// 268 EFI_DHCP6_STATE 268 EFI_DHCP6_STATE State; 269 269 /// 270 270 /// Pointer to the cached latest Reply packet. May be NULL if no packet is cached. 271 271 /// 272 EFI_DHCP6_PACKET 272 EFI_DHCP6_PACKET *ReplyPacket; 273 273 /// 274 274 /// Number of IPv6 addresses of the configured IA. 275 275 /// 276 UINT32 276 UINT32 IaAddressCount; 277 277 /// 278 278 /// List of the IPv6 addresses of the configured IA. When the state of the configured IA is 279 279 /// in Dhcp6Bound, Dhcp6Renewing and Dhcp6Rebinding, the IPv6 addresses are usable. 280 280 /// 281 EFI_DHCP6_IA_ADDRESS 281 EFI_DHCP6_IA_ADDRESS IaAddress[1]; 282 282 } EFI_DHCP6_IA; 283 283 … … 286 286 /// Pointer to the DHCPv6 unique identifier. The caller is responsible for freeing this buffer. 287 287 /// 288 EFI_DHCP6_DUID 288 EFI_DHCP6_DUID *ClientId; 289 289 /// 290 290 /// Pointer to the configured IA of current instance. The caller can free this buffer after 291 291 /// using it. 292 292 /// 293 EFI_DHCP6_IA 293 EFI_DHCP6_IA *Ia; 294 294 } EFI_DHCP6_MODE_DATA; 295 295 … … 330 330 /// process. Set to NULL to ignore all those events. 331 331 /// 332 EFI_DHCP6_CALLBACK 332 EFI_DHCP6_CALLBACK Dhcp6Callback; 333 333 /// 334 334 /// Pointer to the context that will be passed to Dhcp6Callback. 335 335 /// 336 VOID 336 VOID *CallbackContext; 337 337 /// 338 338 /// Number of the DHCPv6 options in the OptionList. 339 339 /// 340 UINT32 340 UINT32 OptionCount; 341 341 /// 342 342 /// List of the DHCPv6 options to be included in Solicit and Request packet. The buffer … … 346 346 /// automatically. 347 347 /// 348 EFI_DHCP6_PACKET_OPTION 348 EFI_DHCP6_PACKET_OPTION **OptionList; 349 349 /// 350 350 /// The descriptor for the IA of the EFI DHCPv6 Protocol instance. 351 351 /// 352 EFI_DHCP6_IA_DESCRIPTOR 352 EFI_DHCP6_IA_DESCRIPTOR IaDescriptor; 353 353 /// 354 354 /// If not NULL, the event will be signaled when any IPv6 address information of the … … 358 358 /// operations, and they will wait for the exchange process completion or failure. 359 359 /// 360 EFI_EVENT 360 EFI_EVENT IaInfoEvent; 361 361 /// 362 362 /// If TRUE, the EFI DHCPv6 Protocol instance is willing to accept Reconfigure packet. … … 364 364 /// OptionList parameter. 365 365 /// 366 BOOLEAN 366 BOOLEAN ReconfigureAccept; 367 367 /// 368 368 /// If TRUE, the EFI DHCPv6 Protocol instance will send Solicit packet with Rapid … … 370 370 /// packet. Rapid Commit option can not be specified through OptionList parameter. 371 371 /// 372 BOOLEAN 372 BOOLEAN RapidCommit; 373 373 /// 374 374 /// Parameter to control Solicit packet retransmission behavior. The 375 375 /// buffer can be freed after EFI_DHCP6_PROTOCOL.Configure() returns. 376 376 /// 377 EFI_DHCP6_RETRANSMISSION 377 EFI_DHCP6_RETRANSMISSION *SolicitRetransmission; 378 378 } EFI_DHCP6_CONFIG_DATA; 379 379 … … 757 757 IN OUT UINT32 *OptionCount, 758 758 OUT EFI_DHCP6_PACKET_OPTION *PacketOptionList[] OPTIONAL 759 );759 ); 760 760 761 761 /// … … 764 764 /// 765 765 struct _EFI_DHCP6_PROTOCOL { 766 EFI_DHCP6_GET_MODE_DATA 767 EFI_DHCP6_CONFIGURE 768 EFI_DHCP6_START 769 EFI_DHCP6_INFO_REQUEST 770 EFI_DHCP6_RENEW_REBIND 771 EFI_DHCP6_DECLINE 772 EFI_DHCP6_RELEASE 773 EFI_DHCP6_STOP 774 EFI_DHCP6_PARSE 766 EFI_DHCP6_GET_MODE_DATA GetModeData; 767 EFI_DHCP6_CONFIGURE Configure; 768 EFI_DHCP6_START Start; 769 EFI_DHCP6_INFO_REQUEST InfoRequest; 770 EFI_DHCP6_RENEW_REBIND RenewRebind; 771 EFI_DHCP6_DECLINE Decline; 772 EFI_DHCP6_RELEASE Release; 773 EFI_DHCP6_STOP Stop; 774 EFI_DHCP6_PARSE Parse; 775 775 }; 776 776 777 extern EFI_GUID gEfiDhcp6ProtocolGuid;778 extern EFI_GUID gEfiDhcp6ServiceBindingProtocolGuid;777 extern EFI_GUID gEfiDhcp6ProtocolGuid; 778 extern EFI_GUID gEfiDhcp6ServiceBindingProtocolGuid; 779 779 780 780 #endif
注意:
瀏覽 TracChangeset
來幫助您使用更動檢視器