NAME

xdsbdcp.h - Definitions for the Basic Directory Contents Package

SYNOPSIS

#include <xom.h>
#include <xds.h>
#include <xdsbdcp.h>

DESCRIPTION

The xdsbdcp.h header defines the object identifiers of directory attribute types and object classes supported by the Basic Directory Contents Package. It also defines OM classes used to represent the values of the attribute types.

All application programs that include this header must first include the xom.h Object Management header and the xds.h header.

Object identifiers are defined for the (directory) attribute types that are specified in the following list. The actual values of the object identifiers are listed in the OSF DCE Application Development Guide.

#ifndef XDSBDCP_HEADER
#define XDSBDCP_HEADER

/* BDC package object identifier */
/* { iso(1) identified-organization(3) icd-ecma(12)
     member-company(2) dec(1011) xopen(28) bdcp(1) } */

#define OMP_O_DS_BASIC_DIR_CONTENTS_PKG \
 "\x2B\x0C\x02\x87\x73\x1c\x01"


/* Intermediate object identifier macros */

#ifndef dsP_attributeType     /* joint-iso-ccitt(2)         */
                                /* ds(5) attributeType(4) ... */
#define dsP_attributeType (X)   ("\x55\x04" #X)
#endif

#ifndef dsP_objectClass       /* joint-iso-ccitt(2)         */
                                /* ds(5) objectClass(6) ...   */
#define dsP_objectClass(X)      ("\x55\x06" #X)
#endif

#define dsP_bdcp_c(X) (OMP_O_DS_BASIC_DIR_CONTENTS_PKG #X)


/* OM class names (prefixed by DS_C_)                       */
/* Directory attribute types (prefixed by DS_A_)            */
/* Directory object classes (prefixed by DS_O_)             */

/* Every application program which makes use of a class or  */
/* other Object Identifier must explicitly import it into   */
/* every compilation unit (C source program) which uses it. */
/* Each such class or Object Identifier name must be        */
/* explicitly exported from just one compilation unit.      */

/* In the header file, OM class constants are prefixed with */
/* the OMP_O prefix to denote that they are OM classes.     */
/* However, when using the OM_IMPORT and OM_EXPORT macros,  */
/* the base names (without the OMP_O prefix) should be used.*/
/* For example:                                             */
/*         OM_IMPORT (DS_O_COUNTRY)                         */


/* Directory attribute types */

#define OMP_O_DS_A_ALIASED_OBJECT_NAME    dsP_attributeType(\x01)
#define OMP_O_DS_A_BUSINESS_CATEGORY      dsP_attributeType(\x0F)
#define OMP_O_DS_A_COMMON_NAME            dsP_attributeType(\x03)
#define OMP_O_DS_A_COUNTRY_NAME           dsP_attributeType(\x06)
#define OMP_O_DS_A_DESCRIPTION            dsP_attributeType(\x0D)
#define OMP_O_DS_A_DEST_INDICATOR         dsP_attributeType(\x1B)
#define OMP_O_DS_A_FACSIMILE_PHONE_NBR    dsP_attributeType(\x17)
#define OMP_O_DS_A_INTERNAT_ISDN_NBR      dsP_attributeType(\x19)
#define OMP_O_DS_A_KNOWLEDGE_INFO         dsP_attributeType(\x02)
#define OMP_O_DS_A_LOCALITY_NAME          dsP_attributeType(\x07)
#define OMP_O_DS_A_MEMBER                 dsP_attributeType(\x1F)
#define OMP_O_DS_A_OBJECT_CLASS           dsP_attributeType(\x00)
#define OMP_O_DS_A_ORG_NAME               dsP_attributeType(\x0A)
#define OMP_O_DS_A_ORG_UNIT_NAME          dsP_attributeType(\x0B)
#define OMP_O_DS_A_OWNER                  dsP_attributeType(\x20)
#define OMP_O_DS_A_PHYS_DELIV_OFF_NAME    dsP_attributeType(\x13)
#define OMP_O_DS_A_POST_OFFICE_BOX        dsP_attributeType(\x12)
#define OMP_O_DS_A_POSTAL_ADDRESS         dsP_attributeType(\x10)
#define OMP_O_DS_A_POSTAL_CODE            dsP_attributeType(\x11)
#define OMP_O_DS_A_PREF_DELIV_METHOD      dsP_attributeType(\x1C)
#define OMP_O_DS_A_PRESENTATION_ADDRESS   dsP_attributeType(\x1D)
#define OMP_O_DS_A_REGISTERED_ADDRESS     dsP_attributeType(\x1A)
#define OMP_O_DS_A_ROLE_OCCUPANT          dsP_attributeType(\x21)
#define OMP_O_DS_A_SEARCH_GUIDE           dsP_attributeType(\x0E)
#define OMP_O_DS_A_SEE_ALSO               dsP_attributeType(\x22)
#define OMP_O_DS_A_SERIAL_NBR             dsP_attributeType(\x05)
#define OMP_O_DS_A_STATE_OR_PROV_NAME     dsP_attributeType(\x08)
#define OMP_O_DS_A_STREET_ADDRESS         dsP_attributeType(\x09)
#define OMP_O_DS_A_SUPPORT_APPLIC_CONTEXT dsP_attributeType(\x1E)
#define OMP_O_DS_A_SURNAME                dsP_attributeType(\x04)
#define OMP_O_DS_A_PHONE_NBR              dsP_attributeType(\x14)
#define OMP_O_DS_A_TELETEX_TERM_IDENT     dsP_attributeType(\x16)
#define OMP_O_DS_A_TELEX_NBR              dsP_attributeType(\x15)
#define OMP_O_DS_A_TITLE                  dsP_attributeType(\x0C)
#define OMP_O_DS_A_USER_PASSWORD          dsP_attributeType(\x23)
#define OMP_O_DS_A_X121_ADDRESS           dsP_attributeType(\x18)


/* Directory object classes */

#define OMP_O_DS_O_ALIAS                  dsP_objectClass(\x01)
#define OMP_O_DS_O_APPLIC_ENTITY          dsP_objectClass(\x0C)
#define OMP_O_DS_O_APPLIC_PROCESS         dsP_objectClass(\x0B)
#define OMP_O_DS_O_COUNTRY                dsP_objectClass(\x02)
#define OMP_O_DS_O_DEVICE                 dsP_objectClass(\x0E)
#define OMP_O_DS_O_DSA                    dsP_objectClass(\x0D)
#define OMP_O_DS_O_GROUP_OF_NAMES         dsP_objectClass(\x09)
#define OMP_O_DS_O_LOCALITY               dsP_objectClass(\x03)
#define OMP_O_DS_O_ORG                    dsP_objectClass(\x04)
#define OMP_O_DS_O_ORG_PERSON             dsP_objectClass(\x07)
#define OMP_O_DS_O_ORG_ROLE               dsP_objectClass(\x08)
#define OMP_O_DS_O_ORG_UNIT               dsP_objectClass(\x05)
#define OMP_O_DS_O_PERSON                 dsP_objectClass(\x06)
#define OMP_O_DS_O_RESIDENTIAL_PERSON     dsP_objectClass(\x0A)
#define OMP_O_DS_O_TOP                    dsP_objectClass(\x00)


/* OM class names */

#define OMP_O_DS_C_FACSIMILE_PHONE_NBR            dsP_bdcp_c(\x86\x21)
#define OMP_O_DS_C_POSTAL_ADDRESS                 dsP_bdcp_c(\x86\x22)
#define OMP_O_DS_C_SEARCH_CRITERION               dsP_bdcp_c(\x86\x23)
#define OMP_O_DS_C_SEARCH_GUIDE                   dsP_bdcp_c(\x86\x24)
#define OMP_O_DS_C_TELETEX_TERM_IDENT             dsP_bdcp_c(\x86\x25)
#define OMP_O_DS_C_TELEX_NBR                      dsP_bdcp_c(\x86\x26)


/* OM attribute names */

#define DS_ANSWERBACK           ((OM_type) 801)
#define DS_COUNTRY_CODE         ((OM_type) 802)
#define DS_CRITERIA             ((OM_type) 803)
#define DS_OBJECT_CLASS         ((OM_type) 804)
#define DS_PARAMETERS           ((OM_type) 805)
#define DS_POSTAL_ADDRESS       ((OM_type) 806)
#define DS_PHONE_NBR            ((OM_type) 807)
#define DS_TELETEX_TERM         ((OM_type) 808)
#define DS_TELEX_NBR            ((OM_type) 809)


/* DS_Preferred_Delivery_Method: */

#define DS_ANY_DELIV_METHOD
#define DS_MHS_DELIV
#define DS_PHYS_DELIV
#define DS_TELEX_DELIV
#define DS_TELETEX_DELIV
#define DS_G3_FACSIMILE_DELIV
#define DS_G4_FACSIMILE_DELIV
#define DS_IA5_TERMINAL_DELIV
#define DS_VIDEOTEX_DELIV
#define DS_PHONE_DELIV


/* Upper bounds on string lengths and the number of repeated OM */
/* attribute values                                             */

#define DS_VL_A_BUSINESS_CATEGORY          ((OM_value_length) 128)
#define DS_VL_A_COMMON_NAME                ((OM_value_length) 64)
#define DS_VL_A_DESCRIPTION                ((OM_value_length) 1024)
#define DS_VL_A_DEST_INDICATOR             ((OM_value_length) 128)
#define DS_VL_A_INTERNAT_ISDN_NBR          ((OM_value_length) 16)
#define DS_VL_A_LOCALITY_NAME              ((OM_value_length) 128)
#define DS_VL_A_ORG_NAME                   ((OM_value_length) 64)
#define DS_VL_A_ORG_UNIT_NAME              ((OM_value_length) 64)
#define DS_VL_A_PHYS_DELIV_ OFF_NAME       ((OM_value_length) 128)
#define DS_VL_A_POST_OFFICE_BOX            ((OM_value_length) 40)
#define DS_VL_A_POSTAL_CODE                ((OM_value_length) 40)
#define DS_VL_A_SERIAL_NBR                 ((OM_value_length) 64)
#define DS_VL_A_STATE_OR_PROV_NAME         ((OM_value_length) 128)
#define DS_VL_A_STREET_ADDRESS             ((OM_value_length) 128)
#define DS_VL_A_SURNAME                    ((OM_value_length) 64)
#define DS_VL_A_PHONE_NBR                  ((OM_value_length) 32)
#define DS_VL_A_TITLE                      ((OM_value_length) 64)
#define DS_VL_A_USER_PASSWORD              ((OM_value_length) 128)
#define DS_VL_A_X121_ADDRESS               ((OM_value_length) 15)
#define DS_VL_ANSWERBACK                   ((OM_value_length) 8)
#define DS_VL_COUNTRY_CODE                 ((OM_value_length) 4)
#define DS_VL_POSTAL_ADDRESS               ((OM_value_length) 30)
#define DS_VL_PHONE_NBR                    ((OM_value_length) 32)
#define DS_VL_TELETEX_TERM                 ((OM_value_length) 1024)
#define DS_VL_TELEX_NBR                    ((OM_value_length) 14)
#define DS_VN_POSTAL_ADDRESS               ((OM_value_length) 6)

#endif  /* XDSBDCP_HEADER */

"RELATED INFORMATION

Books: OSF DCE Application Development Guide.


© 1990-1996, Transarc Corporation