Changeset 99404 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/NetworkPkg/Ip4Dxe/Ip4Impl.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/Ip4Dxe/Ip4Impl.h
r85718 r99404 61 61 // is called, it becomes UNCONFIGED again. 62 62 // 63 #define IP4_STATE_UNCONFIGED 64 #define IP4_STATE_CONFIGED 63 #define IP4_STATE_UNCONFIGED 0 64 #define IP4_STATE_CONFIGED 1 65 65 66 66 // … … 70 70 // to DESTROY. 71 71 // 72 #define IP4_SERVICE_UNSTARTED 0 73 #define IP4_SERVICE_STARTED 1 74 #define IP4_SERVICE_CONFIGED 2 75 #define IP4_SERVICE_DESTROY 3 76 72 #define IP4_SERVICE_UNSTARTED 0 73 #define IP4_SERVICE_STARTED 1 74 #define IP4_SERVICE_CONFIGED 2 75 #define IP4_SERVICE_DESTROY 3 77 76 78 77 /// … … 86 85 /// 87 86 typedef struct { 88 IP4_PROTOCOL *IpInstance;89 EFI_IP4_COMPLETION_TOKEN *Token;90 EFI_EVENT IpSecRecycleSignal;91 NET_BUF *Packet;92 BOOLEAN Sent;93 INTN Life;87 IP4_PROTOCOL *IpInstance; 88 EFI_IP4_COMPLETION_TOKEN *Token; 89 EFI_EVENT IpSecRecycleSignal; 90 NET_BUF *Packet; 91 BOOLEAN Sent; 92 INTN Life; 94 93 } IP4_TXTOKEN_WRAP; 95 94 … … 101 100 /// 102 101 typedef struct { 103 EFI_EVENT 104 NET_BUF 102 EFI_EVENT IpSecRecycleSignal; 103 NET_BUF *Packet; 105 104 } IP4_IPSEC_WRAP; 106 105 … … 115 114 /// 116 115 typedef struct { 117 LIST_ENTRY 118 IP4_PROTOCOL 119 NET_BUF 120 EFI_IP4_RECEIVE_DATA 116 LIST_ENTRY Link; 117 IP4_PROTOCOL *IpInstance; 118 NET_BUF *Packet; 119 EFI_IP4_RECEIVE_DATA RxData; 121 120 } IP4_RXDATA_WRAP; 122 121 123 124 122 struct _IP4_PROTOCOL { 125 UINT32 126 127 EFI_IP4_PROTOCOL 128 EFI_HANDLE 129 INTN 130 131 BOOLEAN 132 133 IP4_SERVICE 134 LIST_ENTRY Link;// Link to all the IP protocol from the service123 UINT32 Signature; 124 125 EFI_IP4_PROTOCOL Ip4Proto; 126 EFI_HANDLE Handle; 127 INTN State; 128 129 BOOLEAN InDestroy; 130 131 IP4_SERVICE *Service; 132 LIST_ENTRY Link; // Link to all the IP protocol from the service 135 133 136 134 // 137 135 // User's transmit/receive tokens, and received/delivered packets 138 136 // 139 NET_MAP 140 NET_MAP TxTokens;// map between (User's Token, IP4_TXTOKE_WRAP)141 LIST_ENTRY Received;// Received but not delivered packet142 LIST_ENTRY Delivered;// Delivered and to be recycled packets143 EFI_LOCK 137 NET_MAP RxTokens; 138 NET_MAP TxTokens; // map between (User's Token, IP4_TXTOKE_WRAP) 139 LIST_ENTRY Received; // Received but not delivered packet 140 LIST_ENTRY Delivered; // Delivered and to be recycled packets 141 EFI_LOCK RecycleLock; 144 142 145 143 // … … 148 146 // is used to communicate the current route info to the upper layer. 149 147 // 150 IP4_INTERFACE 151 LIST_ENTRY AddrLink;// Ip instances with the same IP address.152 IP4_ROUTE_TABLE 153 154 EFI_IP4_ROUTE_TABLE 155 UINT32 148 IP4_INTERFACE *Interface; 149 LIST_ENTRY AddrLink; // Ip instances with the same IP address. 150 IP4_ROUTE_TABLE *RouteTable; 151 152 EFI_IP4_ROUTE_TABLE *EfiRouteTable; 153 UINT32 EfiRouteCount; 156 154 157 155 // 158 156 // IGMP data for this instance 159 157 // 160 IP4_ADDR *Groups; // stored in network byte order 161 UINT32 GroupCount; 162 163 EFI_IP4_CONFIG_DATA ConfigData; 164 158 IP4_ADDR *Groups; // stored in network byte order 159 UINT32 GroupCount; 160 161 EFI_IP4_CONFIG_DATA ConfigData; 165 162 }; 166 163 167 164 struct _IP4_SERVICE { 168 UINT32 Signature;169 EFI_SERVICE_BINDING_PROTOCOL ServiceBinding;170 INTN State;165 UINT32 Signature; 166 EFI_SERVICE_BINDING_PROTOCOL ServiceBinding; 167 INTN State; 171 168 172 169 // … … 174 171 // interface and route table and caches. 175 172 // 176 UINTN NumChildren;177 LIST_ENTRY Children;178 179 LIST_ENTRY Interfaces;180 181 IP4_INTERFACE *DefaultInterface;182 IP4_ROUTE_TABLE *DefaultRouteTable;173 UINTN NumChildren; 174 LIST_ENTRY Children; 175 176 LIST_ENTRY Interfaces; 177 178 IP4_INTERFACE *DefaultInterface; 179 IP4_ROUTE_TABLE *DefaultRouteTable; 183 180 184 181 // 185 182 // Ip reassemble utilities, and IGMP data 186 183 // 187 IP4_ASSEMBLE_TABLE Assemble;188 IGMP_SERVICE_DATA IgmpCtrl;184 IP4_ASSEMBLE_TABLE Assemble; 185 IGMP_SERVICE_DATA IgmpCtrl; 189 186 190 187 // 191 188 // Low level protocol used by this service instance 192 189 // 193 EFI_HANDLE Image;194 EFI_HANDLE Controller;195 196 EFI_HANDLE MnpChildHandle;197 EFI_MANAGED_NETWORK_PROTOCOL *Mnp;198 199 EFI_MANAGED_NETWORK_CONFIG_DATA MnpConfigData;200 EFI_SIMPLE_NETWORK_MODE SnpMode;201 202 EFI_EVENT Timer;203 EFI_EVENT ReconfigCheckTimer;204 EFI_EVENT ReconfigEvent;205 206 BOOLEAN Reconfig;190 EFI_HANDLE Image; 191 EFI_HANDLE Controller; 192 193 EFI_HANDLE MnpChildHandle; 194 EFI_MANAGED_NETWORK_PROTOCOL *Mnp; 195 196 EFI_MANAGED_NETWORK_CONFIG_DATA MnpConfigData; 197 EFI_SIMPLE_NETWORK_MODE SnpMode; 198 199 EFI_EVENT Timer; 200 EFI_EVENT ReconfigCheckTimer; 201 EFI_EVENT ReconfigEvent; 202 203 BOOLEAN Reconfig; 207 204 208 205 // 209 206 // Underlying media present status. 210 207 // 211 BOOLEAN MediaPresent;208 BOOLEAN MediaPresent; 212 209 213 210 // 214 211 // IPv4 Configuration II Protocol instance 215 212 // 216 IP4_CONFIG2_INSTANCE Ip4Config2Instance;217 218 CHAR16 *MacString;219 220 UINT32 MaxPacketSize;221 UINT32 OldMaxPacketSize; ///< The MTU before IPsec enable.213 IP4_CONFIG2_INSTANCE Ip4Config2Instance; 214 215 CHAR16 *MacString; 216 217 UINT32 MaxPacketSize; 218 UINT32 OldMaxPacketSize; ///< The MTU before IPsec enable. 222 219 }; 223 220 … … 231 228 CR (This, IP4_SERVICE, Ip4Config2Instance, IP4_SERVICE_SIGNATURE) 232 229 233 234 #define IP4_NO_MAPPING(IpInstance) (!(IpInstance)->Interface->Configured) 235 236 extern EFI_IP4_PROTOCOL mEfiIp4ProtocolTemplete; 230 #define IP4_NO_MAPPING(IpInstance) (!(IpInstance)->Interface->Configured) 231 232 extern EFI_IP4_PROTOCOL mEfiIp4ProtocolTemplete; 237 233 238 234 /** … … 256 252 EFI_STATUS 257 253 Ip4ServiceConfigMnp ( 258 IN IP4_SERVICE 259 IN BOOLEAN 254 IN IP4_SERVICE *IpSb, 255 IN BOOLEAN Force 260 256 ); 261 257 … … 269 265 VOID 270 266 Ip4InitProtocol ( 271 IN IP4_SERVICE 272 IN OUT IP4_PROTOCOL 267 IN IP4_SERVICE *IpSb, 268 IN OUT IP4_PROTOCOL *IpInstance 273 269 ); 274 270 … … 284 280 EFI_STATUS 285 281 Ip4CleanProtocol ( 286 IN IP4_PROTOCOL 282 IN IP4_PROTOCOL *IpInstance 287 283 ); 288 284 … … 302 298 EFI_STATUS 303 299 Ip4Cancel ( 304 IN IP4_PROTOCOL *IpInstance,305 IN EFI_IP4_COMPLETION_TOKEN *Token OPTIONAL300 IN IP4_PROTOCOL *IpInstance, 301 IN EFI_IP4_COMPLETION_TOKEN *Token OPTIONAL 306 302 ); 307 303 … … 323 319 EFI_STATUS 324 320 Ip4Groups ( 325 IN IP4_PROTOCOL 326 IN BOOLEAN 327 IN EFI_IPv4_ADDRESS 321 IN IP4_PROTOCOL *IpInstance, 322 IN BOOLEAN JoinFlag, 323 IN EFI_IPv4_ADDRESS *GroupAddress OPTIONAL 328 324 ); 329 325 … … 340 336 EFIAPI 341 337 Ip4TimerTicking ( 342 IN EFI_EVENT 343 IN VOID 338 IN EFI_EVENT Event, 339 IN VOID *Context 344 340 ); 345 341 … … 359 355 EFIAPI 360 356 Ip4TimerReconfigChecking ( 361 IN EFI_EVENT 362 IN VOID 357 IN EFI_EVENT Event, 358 IN VOID *Context 363 359 ); 364 360 … … 380 376 EFIAPI 381 377 Ip4SentPacketTicking ( 382 IN NET_MAP 383 IN NET_MAP_ITEM 384 IN VOID 378 IN NET_MAP *Map, 379 IN NET_MAP_ITEM *Item, 380 IN VOID *Context 385 381 ); 386 382 … … 409 405 EFIAPI 410 406 Ip4FreeTxToken ( 411 IN VOID 412 ); 413 414 extern EFI_IPSEC2_PROTOCOL 415 extern BOOLEAN 407 IN VOID *Context 408 ); 409 410 extern EFI_IPSEC2_PROTOCOL *mIpSec; 411 extern BOOLEAN mIpSec2Installed; 416 412 417 413 #endif
Note:
See TracChangeset
for help on using the changeset viewer.