#include <Library/PcdLib.h>\r
\r
typedef struct _PXEBC_PRIVATE_DATA PXEBC_PRIVATE_DATA;\r
+typedef struct _PXEBC_PRIVATE_PROTOCOL PXEBC_PRIVATE_PROTOCOL;\r
typedef struct _PXEBC_VIRTUAL_NIC PXEBC_VIRTUAL_NIC;\r
\r
#include "PxeBcDriver.h"\r
#define PXEBC_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('P', 'X', 'E', 'P')\r
#define PXEBC_VIRTUAL_NIC_SIGNATURE SIGNATURE_32 ('P', 'X', 'E', 'V')\r
#define PXEBC_PRIVATE_DATA_FROM_PXEBC(a) CR (a, PXEBC_PRIVATE_DATA, PxeBc, PXEBC_PRIVATE_DATA_SIGNATURE)\r
+#define PXEBC_PRIVATE_DATA_FROM_ID(a) CR (a, PXEBC_PRIVATE_DATA, Id, PXEBC_PRIVATE_DATA_SIGNATURE)\r
#define PXEBC_VIRTUAL_NIC_FROM_LOADFILE(a) CR (a, PXEBC_VIRTUAL_NIC, LoadFile, PXEBC_VIRTUAL_NIC_SIGNATURE)\r
\r
+#define PXEBC_PRIVATE_GUID \\r
+ { \\r
+ 0xa4dfac32, 0xfbb4, 0x4907,{0xb3, 0x13, 0x4, 0xe, 0xe2, 0x42, 0x33, 0x20 } \\r
+ }\r
+\r
+\r
typedef union {\r
PXEBC_DHCP4_PACKET_CACHE Dhcp4;\r
PXEBC_DHCP6_PACKET_CACHE Dhcp6;\r
} PXEBC_DHCP_PACKET_CACHE;\r
\r
+struct _PXEBC_PRIVATE_PROTOCOL {\r
+ UINT64 Reserved;\r
+};\r
+\r
struct _PXEBC_VIRTUAL_NIC {\r
UINT32 Signature;\r
EFI_HANDLE Controller;\r
EFI_HANDLE Controller;\r
EFI_HANDLE Image;\r
\r
+ PXEBC_PRIVATE_PROTOCOL Id;\r
+ EFI_SIMPLE_NETWORK_PROTOCOL *Snp; \r
+\r
PXEBC_VIRTUAL_NIC *Ip4Nic;\r
PXEBC_VIRTUAL_NIC *Ip6Nic;\r
\r