Lists the immediate subordinates of an object.
#include <nwnet.h> or #include <nwdsdsa.h> N_EXTERN_LIBRARY (NWDSCCODE) NWDSList ( NWDSContextHandle context, pnstr8 object, pnint_ptr iterationHandle, pBuf_T subordinates);
uses netwin32 Function NWDSList (context : NWDSContextHandle; object : pnstr8; iterationHandle : pnint_ptr; subordinates : pBuf_T ) : NWDSCCODE;
(IN) Specifies the NDS context for the request.
(IN) Points to the name of the object whose immediate subordinates are to be listed.
(IN/OUT) Points to information needed to resume subsequent iterations of NWDSList.
(OUT) Points to a result buffer containing an Object_Info_T structure for each subordinate.
These are common return values.
0x0000 0000 |
SUCCESSFUL |
0x8996 |
SERVER_OUT_OF_MEMORY |
0x89E2 |
TOO_FEW_FRAGMENTS |
0x89E3 |
TOO_MANY_FRAGMENTS |
0x89E4 |
PROTOCOL_VIOLATION |
0x89E5 |
SIZE_LIMIT_EXCEEDED |
0x89FD |
UNKNOWN_REQUEST |
0x89FD |
INVALID_PACKET_LENGTH |
0x89FE |
BAD_PACKET |
0x89FF |
Failure not related to eDirectory |
nonzero value |
Nonzero values indicate errors. See |
NWDSList returns an object's base class, entry flags, modification time, and subordinate object count.
The function succeeds if the object specified by object is found in eDirectory, regardless of whether there is any subordinate information to return.
If the name pointed to by the object parameter involves one or more aliases, the aliases are dereferenced unless prohibited by the context flag associated with DCV_DEREF_ALIAS. For more information, see Section 5.6, Context Keys and Flags.
The results buffer pointed to by subordinates receives a sequence of Object_Info_T structures containing information about objects subordinate to the specified object.
The iterationHandle parameter controls the retrieval of list results larger than the result buffer pointed to by subordinates.
Before the initial call to NWDSList, set the iterationHandle parameter to NO_MORE_ITERATIONS.
If the result buffer holds the complete results when NWDSList returns from its initial call, the location pointed to by iterationHandle is set to NO_MORE_ITERATIONS. If the iteration handle is not set to NO_MORE_ITERATIONS, use the iteration handle for subsequent calls to NWDSList to obtain further portions of the results. When the results are completely retrieved, the contents of the iteration handle will be set to NO_MORE_ITERATIONS.
NOTE:On large networks, iterative processes, such as NWDSList, might take a long time to complete. For example, listing all of the User objects on a corporate network might be too time consuming. Developers should use NWDSCloseIteration to allow users of their applications to abort an iterative process that is taking too long to complete.
To end the List operation before the complete results have been retrieved, call NWDSCloseIteration with a value of DSV_LIST to free memory and states associated with the List operation.
For more information, see Listing Objects in an eDirectory Container.