Directory Services

ADS_CHASE_REFERRALS_ENUM

The ADS_CHASE_REFERRALS_ENUM enumeration specifies if, and how, referral chasing occurs. When a server determines that other servers hold relevant data, in part or as a whole, it may refer the client to another server to obtain the result. Referral chasing is the action taken by a client to contact the referred-to server to continue the directory search.

typedef enum 
{
  ADS_CHASE_REFERRALS_NEVER = 0x00, 
  ADS_CHASE_REFERRALS_SUBORDINATE = 0x20, 
  ADS_CHASE_REFERRALS_EXTERNAL = 0x40, 
  ADS_CHASE_REFERRALS_ALWAYS = 0x20 | 0x40
} ADS_CHASE_REFERRALS_ENUM;

Values

ADS_CHASE_REFERRALS_NEVER
The client should never chase the referred-to server. Setting this option prevents a client from contacting other servers in a referral process.
ADS_CHASE_REFERRALS_SUBORDINATE
The client chases only subordinate referrals which are a subordinate naming context in a directory tree. For example, if the base search is requested for DC=Fabrikam, DC=Com, and the server returns a result set and a referral of DC=Sales, DC=Fabrikam, DC=Com on the AdbSales server, the client can contact the AdbSales server to continue the search. The ADSI LDAP provider always turns off this flag for paged searches.
ADS_CHASE_REFERRALS_EXTERNAL
The client chases external referrals. For example, a client requests server A to perform a search for DC=Fabrikam,DC=Com. However, server A does not contain the object, but knows that an independent server, B, owns it. It then refers the client to server B.
ADS_CHASE_REFERRALS_ALWAYS
Referrals are chased for either the subordinate or external type.

Remarks

Use the constants of this enumeration to set up search preferences for referral chasing. The action amounts to assigning the appropriate fields of the ADS_SEARCHPREF_INFO structure with elements of the ADS_CHASE_REFERRALS_ENUM and ADS_SEARCHPREF_ENUM enumerations. The values of this enumeration can also be used with IADsObjectOptions to specify whether referral chasing should take place when enumerating the objects under a container object,

The ADSI LDAP provider supports external referrals for paged searches, but does not support subordinate referrals during paging.

Note  Because VBScript cannot read data from a type library, VBScript applications do not understand the symbolic constants as defined above. You should use the numerical constants instead to set the appropriate flags in your VBScript applications. If you want to use the symbolic constants as a good programming practice, you should make explicit declarations of such constants, as done here, in your VBScript applications.

Requirements

Client: Included in Windows XP and Windows 2000 Professional.
Server: Included in Windows Server 2003 and Windows 2000 Server.
Redistributable: Requires Active Directory Client Extension on Windows NT 4.0 SP6a and Windows 95/98/Me.
Header: Declared in Iads.h.

See Also

ADSI Enumerations, ADS_SEARCHPREF_ENUM, ADS_SEARCHPREF_INFO