dsapi_const.h
Go to the documentation of this file.
1/* Emacs mode: -*- C -*- */
2
3/*
4 * Copyright (c) 2004-2021, Isode Limited, London, England.
5 * All rights reserved.
6 *
7 * Acquisition and use of this software and related materials for any
8 * purpose requires a written licence agreement from Isode Limited, or
9 * a written licence from an organisation licenced by Isode Limited to
10 * grant such a licence.
11 *
12 */
13
14/*
15 * dsapi_const.h
16 *
17 * Symbolic constants.
18 *
19 */
20
21/*
22 *
23 *
24 * @VERSION@
25 */
26
27#ifndef ISODE_DSAPI_CONST_H
28#define ISODE_DSAPI_CONST_H
29
34/* API Version. */
35#define DSAPI_VERSION 2048
38/* Generic parameter representation. */
40#ifndef PRIVATE_DEFINITION
41#define DS_INT_TYPE 0x01000000
43#define DS_STR_TYPE 0x02000000
45#define DS_BOOL_TYPE 0x04000000
47#define DS_BYTES_TYPE 0x08000000
50/* Get parameter type from ID (see dsapi_const.h for parameter IDs). */
51#define DS_PARAM_TYPE_MASK 0xff000000
53#define PARAMTYPE(id) ( id & DS_PARAM_TYPE_MASK )
55/* Add typing bits to a parameter ID value. */
56#define MAKE_PARAM_ID(val, param_type) ( val | param_type )
58#endif
66typedef enum {
67 DS_E_NOERROR = 0,
70 DS_E_NOSPACE = 1,
73 DS_E_BADPARAM = 2,
76 DS_E_NOTFOUND = 3,
79 DS_E_NOMEMORY = 4,
97 DS_E_BADDN = 10,
100 DS_E_BADENTRY = 11,
103 DS_E_DSOPFAILED = 12,
106 DS_E_INTERNAL = 13,
109 DS_E_NOTBOUND = 14,
113 DS_E_BADADDR = 15,
119 DS_E_OPFAILED = 17,
122 DS_E_ABORTED = 18,
130
138typedef enum {
139 DS_E_SUCCESS = 0,
140 /*< Successful operation. */
141
142 DS_E_ATTRIBUTE = 1,
145 DS_E_NAME = 2,
148 DS_E_SERVICE = 3,
151 DS_E_REFERRAL = 4,
154 DS_E_ABANDONED = 5,
157 DS_E_SECURITY = 6,
163 DS_E_UPDATE = 8,
169 DS_E_LOCAL = 10,
172 DS_E_REMOTE = 11,
175 DS_E_UNKNOWN = 12,
178 DS_E_X509 = 13
182
314
326#define DS_SVC_OPT_PREFERCHAIN MAKE_PARAM_ID(1, DS_BOOL_TYPE)
327
328#define DS_SVC_OPT_CHAININGPROHIBIT MAKE_PARAM_ID(2, DS_BOOL_TYPE)
331#define DS_SVC_OPT_LOCALSCOPE MAKE_PARAM_ID(3, DS_BOOL_TYPE)
334#define DS_SVC_OPT_DONTUSECOPY MAKE_PARAM_ID(4, DS_BOOL_TYPE)
337#define DS_SVC_OPT_DONTDEREFALIAS MAKE_PARAM_ID(5, DS_BOOL_TYPE)
340#define DS_SVC_OPT_SUBENTRIES MAKE_PARAM_ID(6, DS_BOOL_TYPE)
343#define DS_SVC_OPT_COPYSHALLDO MAKE_PARAM_ID(7, DS_BOOL_TYPE)
348#define DS_SVC_PRIORITY MAKE_PARAM_ID(8, DS_INT_TYPE)
351#define DS_SVC_TIMELIMIT MAKE_PARAM_ID(9, DS_INT_TYPE)
354#define DS_SVC_SIZELIMIT MAKE_PARAM_ID(10, DS_INT_TYPE)
357#define DS_EXT_OPT_MANAGEDSAIT MAKE_PARAM_ID(11, DS_BOOL_TYPE)
360#define DS_SEC_SIGNED MAKE_PARAM_ID(12, DS_BOOL_TYPE)
364#define DS_SEC_ENCRYPTED MAKE_PARAM_ID(13, DS_BOOL_TYPE)
367#define DS_SVC_OPT_ATTRSONLY MAKE_PARAM_ID(14, DS_BOOL_TYPE)
372#define DS_SVC_OPT_SEARCHALIASES MAKE_PARAM_ID(15, DS_BOOL_TYPE)
377#define DS_EXT_OPT_USEALIASONUPDATE MAKE_PARAM_ID(16, DS_BOOL_TYPE)
382#define DS_SVC_PASSWORDPOLICY MAKE_PARAM_ID(17, DS_BOOL_TYPE)
387#define DS_SVC_OPT_PAGESIZE MAKE_PARAM_ID(18, DS_INT_TYPE)
392#define DS_SEC_DISABLEVERIFICATION MAKE_PARAM_ID(19, DS_BOOL_TYPE)
397#define DS_SVC_OPT_TXNID MAKE_PARAM_ID(20, DS_BYTES_TYPE)
444
447#endif /* ISODE_DSAPI_CONST_H */
DS_ErrorType
@ DS_E_UNKNOWN
@ DS_E_LOCAL
@ DS_E_NAME
@ DS_E_SECURITY
@ DS_E_X509
@ DS_E_ABANDONFAILED
@ DS_E_DSAREFERRAL
@ DS_E_SERVICE
@ DS_E_REFERRAL
@ DS_E_UPDATE
@ DS_E_ABANDONED
@ DS_E_REMOTE
@ DS_E_ATTRIBUTE
DS_ErrorValue
@ DS_E_UPD_ALREADYEXISTS
@ DS_E_NOINFO
@ DS_E_SEC_AUTHENTICATION
@ DS_E_SVC_UNWILLINGTOPERFORM
@ DS_E_SVC_UNAVAILABLE
@ DS_E_SEC_INVALIDSIGNATURE
@ DS_E_SVC_DITERROR
@ DS_E_UPD_OBJECTCLASSVIOLATION
@ DS_E_SVC_ADMINISTRATIVELIMITEXCEEDED
@ DS_E_SVC_CHAININGREQUIRED
@ DS_E_AB_TOOLATE
@ DS_E_AT_TYPEORVALUEEXISTS
@ DS_E_UPD_NOTONRDN
@ DS_E_AT_NOSUCHATTRIBUTE
@ DS_E_AT_UNDEFINEDATTRIBUTETYPE
@ DS_E_UPD_NAMINGVIOLATION
@ DS_E_UPD_NOOBJECTCLASSMODS
@ DS_E_SVC_LOOPDETECTED
@ DS_E_SVC_INVALIDQUERYREFERENCE
@ DS_E_UPD_NOTONNONLEAF
@ DS_E_SEC_INVALIDCREDENTIALS
@ DS_E_SVC_UNAVAILABLECRITICALEXTENSION
@ DS_E_X509_RESULTSDISCARDED
@ DS_E_AT_INAPPROPRIATEMATCHING
@ DS_E_UPD_AFFECTSMULTIPLEDSAS
@ DS_E_SVC_BUSY
@ DS_E_SVC_UNABLETOPROCEED
@ DS_E_AT_CONSTRAINTVIOLATION
@ DS_E_AB_CANNOTABANDON
@ DS_E_NAME_ALIASPROBLEM
@ DS_E_NAME_NOSUCHOBJECT
@ DS_E_SEC_PROTECTIONREQUIRED
@ DS_E_NAME_INVALIDATTRIBUTESYNTAX
@ DS_E_SVC_TIMELIMITEXCEEDED
@ DS_E_SVC_INVALIDREFERENCE
@ DS_E_SEC_ACCESSRIGHTS
@ DS_E_AT_INVALIDATTRIBUTESYNTAX
@ DS_E_SEC_NOINFORMATION
@ DS_E_AB_NOSUCHOPERATION
@ DS_E_SVC_OUTOFSCOPE
@ DS_E_NAME_ALIASDEREFERENCE
DS_Status
Definition dsapi_const.h:66
@ DS_E_NOTBOUND
@ DS_E_BADATTRSYNTAX
Definition dsapi_const.h:91
@ DS_E_BADPARAM
Definition dsapi_const.h:73
@ DS_E_DSOPFAILED
@ DS_E_OPFAILED
@ DS_E_CONNECTIONLOST
@ DS_E_NOSPACE
Definition dsapi_const.h:70
@ DS_E_ABORTED
@ DS_E_NOTFOUND
Definition dsapi_const.h:76
@ DS_E_BADADDR
@ DS_E_BADATTRVALUE
Definition dsapi_const.h:88
@ DS_E_NOMEMORY
Definition dsapi_const.h:79
@ DS_E_BADFILTER
Definition dsapi_const.h:94
@ DS_E_BADDN
Definition dsapi_const.h:97
@ DS_E_SIGNEDOPFAILED
@ DS_E_NOERROR
Definition dsapi_const.h:67
@ DS_E_BADATTRTYPE
Definition dsapi_const.h:85
@ DS_E_NOTIMPLEMENTED
Definition dsapi_const.h:82
@ DS_E_BADENTRY
@ DS_E_INTERNAL
DS_PasswordPolicyError
@ DS_PP_ACCOUNT_LOCKED
@ DS_PP_PASSWORD_EXPIRED
@ DS_PP_CHANGE_AFTER_RESET
@ DS_PP_PASSWORD_TOO_YOUNG
@ DS_PP_PASSWORD_TOO_SHORT
@ DS_PP_NO_ERROR
@ DS_PP_INSUFFICIENT_PASSWORD_QUALITY
@ DS_PP_MUST_SUPPLY_OLD_PASSWORD
@ DS_PP_PASSWORD_MOD_NOT_ALLOWED
@ DS_PP_PASSWORD_IN_HISTORY

All rights reserved © 2002 - 2024 Isode Ltd.