@param TokensMap All DNS transmittal Tokens entry. \r
@param Identification Identification for queried packet. \r
@param Type Type for queried packet.\r
+ @param Class Class for queried packet.\r
@param Item Return corresponding Token entry.\r
\r
@retval TRUE The response is valid.\r
IN NET_MAP *TokensMap,\r
IN UINT16 Identification,\r
IN UINT16 Type,\r
+ IN UINT16 Class,\r
OUT NET_MAP_ITEM **Item\r
)\r
{\r
DnsHeader = (DNS_HEADER *) TxString;\r
QueryName = (CHAR8 *) (TxString + sizeof (*DnsHeader));\r
QuerySection = (DNS_QUERY_SECTION *) (QueryName + AsciiStrLen (QueryName) + 1);\r
-\r
- DnsHeader->Identification = NTOHS (DnsHeader->Identification);\r
- QuerySection->Type = NTOHS (QuerySection->Type);\r
\r
- if (DnsHeader->Identification == Identification && QuerySection->Type == Type) {\r
+ if (NTOHS (DnsHeader->Identification) == Identification &&\r
+ NTOHS (QuerySection->Type) == Type && \r
+ NTOHS (QuerySection->Class) == Class) {\r
return TRUE;\r
}\r
} \r
}\r
\r
- *Item =NULL;\r
+ *Item = NULL;\r
\r
return FALSE;\r
}\r
// Check DnsResponse Validity, if so, also get a valid NET_MAP_ITEM.\r
//\r
if (Instance->Service->IpVersion == IP_VERSION_4) {\r
- if (!IsValidDnsResponse (&Instance->Dns4TxTokens, DnsHeader->Identification, QuerySection->Type, &Item)) {\r
+ if (!IsValidDnsResponse (\r
+ &Instance->Dns4TxTokens, \r
+ DnsHeader->Identification, \r
+ QuerySection->Type,\r
+ QuerySection->Class,\r
+ &Item\r
+ )) {\r
*Completed = FALSE;\r
Status = EFI_ABORTED;\r
goto ON_EXIT;\r
ASSERT (Item != NULL);\r
Dns4TokenEntry = (DNS4_TOKEN_ENTRY *) (Item->Key);\r
} else {\r
- if (!IsValidDnsResponse (&Instance->Dns6TxTokens, DnsHeader->Identification, QuerySection->Type, &Item)) {\r
+ if (!IsValidDnsResponse (\r
+ &Instance->Dns6TxTokens, \r
+ DnsHeader->Identification, \r
+ QuerySection->Type,\r
+ QuerySection->Class,\r
+ &Item\r
+ )) {\r
*Completed = FALSE;\r
Status = EFI_ABORTED;\r
goto ON_EXIT;\r
// Continue Check Some Errors.\r
//\r
if (DnsHeader->Flags.Bits.RCode != DNS_FLAGS_RCODE_NO_ERROR || DnsHeader->AnswersNum < 1 || \\r
- DnsHeader->Flags.Bits.QR != DNS_FLAGS_QR_RESPONSE || QuerySection->Class != DNS_CLASS_INET) {\r
+ DnsHeader->Flags.Bits.QR != DNS_FLAGS_QR_RESPONSE) {\r
Status = EFI_ABORTED;\r
goto ON_EXIT;\r
}\r
@param TokensMap All DNS transmittal Tokens entry. \r
@param Identification Identification for queried packet. \r
@param Type Type for queried packet.\r
+ @param Class Class for queried packet.\r
@param Item Return corresponding Token entry.\r
\r
@retval TRUE The response is valid.\r
IN NET_MAP *TokensMap,\r
IN UINT16 Identification,\r
IN UINT16 Type,\r
+ IN UINT16 Class,\r
OUT NET_MAP_ITEM **Item\r
);\r
\r