3.1.5.4.2 Receiving a DC Referral Response

This is applicable only to a domain-joined computer. The DFS client receives this referral response for the DC referral request that it sent in step 5.2 of section 3.1.4.1. The DC referral response MUST be version 3 or later; otherwise, the client MUST ignore the referral response.

The client MUST verify that the NumberOfReferrals field of the referral header is 1 and that the NameListReferral bit is set in the referral entry. The other bits of ReferralEntryFlags in the referral entry MUST be ignored. The NumberOfExpandedNames in the referral entry contains the number of DC names returned. The client MUST use the value in the NumberOfExpandedNames field to determine how many names are present in the list at ExpandedNameOffset. The client can access the first null-terminated Unicode DC name string that is returned by adding the value in the ExpandedNameOffset field to the address of the referral entry. Immediately following the null termination of a DC name is the next DC name returned. The client can access the null-terminated Unicode domain name that corresponds to the referral response by adding the value in the SpecialNameOffset to the address of the referral entry.

The client MUST add the list of DCs determined for a domain name to DCList of the DomainCache entry that corresponds to the domain name. If the DomainCache entry's DCList is not empty, the client MUST replace it with the DC list from the referral response and set DCHint to the first DC in the new DCList.