ds_version(3xds) — Subroutines
Name
ds_version - Negotiates features of the interface and service
Synopsis
#include <xom.h>
#include <xds.h> DS_status ds_version(
DS_feature feature_list[],
OM_workspace workspace);
Parameters
Input
workspaceSpecifies the workspace obtained from a call to om_initialize() for which the features are to be negotiated. The features will be in effect for operations that use the workspace or directory sessions associated with the workspace.
Input/Output
feature_list[](DS_feature). On input contains an ordered sequence of features, each represented by an object identifier. The sequence is terminated by an object identifier having no components (a length of 0 (zero) and any value for the data pointer.) If the function completed successfully, an ordered sequence of boolean values are returned, with the same number of elements as the feature_list[] parameter. If OM_TRUE, each value indicates that the corresponding feature is now part of the interface. If OM_FALSE, each value indicates that the corresponding feature is not available. This result is combined with the feature_list[] parameter as a single array of structures of type DS_feature, which is defined as follows:
typedef struct
{
OM_object_identifier feature;
OM_boolean activated;
}
DS_feature;
Description
The ds_version() function negotiates features of the interface, which are represented by object identifiers. The DS_BASIC_DIR_CONTENTS_PKG, DS_STRONG_AUTHENT_PKG, and the MHS_DIR_USER_PKG specified in the OSF DCE Application Development Guide—Directory Services are negotiable features in this specification. Features can also include vendor extensions, such as the DSX_GDS_PKG, and new features in future versions of the XDS specification. Versions are negotiated after a workspace is initialized with ds_initialize().
Return Values
DS_statusTakes the value DS_SUCCESS if the function completed successfully.
Errors
The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.
This function can return a DS_C_SYSTEM_ERROR or the following DS_C_LIBRARY_ERROR errors:
•DS_E_BAD_WORKSPACE
•DS_E_MISCELLANEOUS
This function does not return a DS_C_COMMUNICATIONS_ERROR or any directory errors. However, this function can return the error constant DS_NO_WORKSPACE.