CHAR16 *HostNameStr;\r
HTTP_TOKEN_WRAP *Wrap;\r
HTTP_TCP_TOKEN_WRAP *TcpWrap;\r
-\r
+ CHAR8 *FileUrl;\r
+ \r
if ((This == NULL) || (Token == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
//\r
// Create request message.\r
//\r
- RequestStr = HttpGenRequestString (HttpInstance, HttpMsg, Url);\r
+ FileUrl = Url;\r
+ if (*FileUrl != '/') {\r
+ //\r
+ // Convert the absolute-URI to the absolute-path\r
+ //\r
+ while (*FileUrl != ':') {\r
+ FileUrl++;\r
+ }\r
+ if ((*(FileUrl+1) == '/') && (*(FileUrl+2) == '/')) {\r
+ FileUrl += 3;\r
+ while (*FileUrl != '/') {\r
+ FileUrl++;\r
+ }\r
+ } else {\r
+ Status = EFI_INVALID_PARAMETER;\r
+ goto Error3;\r
+ }\r
+ }\r
+ RequestStr = HttpGenRequestString (HttpInstance, HttpMsg, FileUrl);\r
if (RequestStr == NULL) {\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Error3;\r