]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/HttpBootDxe/HttpBootDxe.h
NetworkPkg/IScsiDxe: Fix the incorrect max length of IP_ADDRESS.
[mirror_edk2.git] / NetworkPkg / HttpBootDxe / HttpBootDxe.h
index 28145949fed70265ddf1294710b17fe6603d7fee..2c07cf74665fec8380bc51e386239d01ff0ff89e 100644 (file)
@@ -62,6 +62,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 // Produced Protocols\r
 //\r
 #include <Protocol/LoadFile.h>\r
+#include <Protocol/HttpBootCallback.h>\r
 \r
 //\r
 // Consumed Guids\r
@@ -74,10 +75,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define HTTP_BOOT_DXE_VERSION  0xa\r
 \r
 //\r
-// Provisional Standard Media Types defined in \r
-// http://www.iana.org/assignments/provisional-standard-media-types/provisional-standard-media-types.xhtml\r
+// Standard Media Types defined in \r
+// http://www.iana.org/assignments/media-types\r
 //\r
 #define HTTP_CONTENT_TYPE_APP_EFI           "application/efi"\r
+#define HTTP_CONTENT_TYPE_APP_IMG           "application/vnd.efi-img"\r
+#define HTTP_CONTENT_TYPE_APP_ISO           "application/vnd.efi-iso"\r
 \r
 //\r
 // Protocol instances\r
@@ -131,6 +134,14 @@ struct _HTTP_BOOT_VIRTUAL_NIC {
   CallbackInfo, \\r
   HTTP_BOOT_PRIVATE_DATA_SIGNATURE \\r
   )\r
+  \r
+#define HTTP_BOOT_PRIVATE_DATA_FROM_CALLBACK_PROTOCOL(CallbackProtocol) \\r
+    CR ( \\r
+    CallbackProtocol, \\r
+    HTTP_BOOT_PRIVATE_DATA, \\r
+    LoadFileCallback, \\r
+    HTTP_BOOT_PRIVATE_DATA_SIGNATURE \\r
+    )\r
 \r
 struct _HTTP_BOOT_PRIVATE_DATA {\r
   UINT32                                    Signature;\r
@@ -166,6 +177,15 @@ struct _HTTP_BOOT_PRIVATE_DATA {
   EFI_LOAD_FILE_PROTOCOL                    LoadFile;\r
   EFI_DEVICE_PATH_PROTOCOL                  *DevicePath;\r
   UINT32                                    Id;\r
+  EFI_HTTP_BOOT_CALLBACK_PROTOCOL           *HttpBootCallback;\r
+  EFI_HTTP_BOOT_CALLBACK_PROTOCOL           LoadFileCallback;\r
+\r
+  //\r
+  // Data for the default HTTP Boot callback protocol\r
+  //\r
+  UINT64                                    FileSize;\r
+  UINT64                                    ReceivedSize;\r
+  UINT32                                    Percentage;\r
 \r
   //\r
   // HII callback info block\r
@@ -182,6 +202,8 @@ struct _HTTP_BOOT_PRIVATE_DATA {
   EFI_IP_ADDRESS                            GatewayIp;\r
   EFI_IP_ADDRESS                            ServerIp;\r
   UINT16                                    Port;\r
+  UINT32                                    DnsServerCount;\r
+  EFI_IP_ADDRESS                            *DnsServerIp;\r
 \r
   //\r
   // The URI string attempt to download through HTTP, may point to\r