-- ASN module extracted from ITU-T X.518 (10/2019)
DistributedOperations
{joint-iso-itu-t ds(5) module(1) distributedOperations(3) 10}
DEFINITIONS ::=
BEGIN
-- EXPORTS All
/*
The types and values defined in this module are exported for use in the other ASN.1
modules contained within these Directory Specifications, and for the use of other
applications which will use them to access Directory services. Other applications may
use them for their own purposes, but this will not constrain extensions and
modifications needed to maintain or improve the Directory service.
*/
IMPORTS
-- from Rec. ITU-T X.501 | ISO/IEC 9594-2
DistinguishedName, Name, PresentationAddress, RDNSequence, UnboundedDirectoryString
FROM UsefulDefinitions
{joint-iso-itu-t ds(5) module(1) usefulDefinitions(0) 10} WITH SUCCESSORS
MRMapping, SearchRuleId
FROM ServiceAdministration
{joint-iso-itu-t ds(5) module(1) serviceAdministration(33) 10} WITH SUCCESSORS
AuthenticationLevel
FROM BasicAccessControl
{joint-iso-itu-t ds(5) module(1) basicAccessControl(24) 10} WITH SUCCESSORS
OPTIONALLY-PROTECTED{}
FROM EnhancedSecurity
{joint-iso-itu-t ds(5) module(1) enhancedSecurity(28) 10} WITH SUCCESSORS
-- from Rec. ITU-T X.511 | ISO/IEC 9594-3
abandon, addEntry, administerPassword, changePassword, CommonResults, compare,
directoryBindError, ldapTransport, linkedLDAP, list, modifyDN, modifyEntry,
read, referral, removeEntry, search, SecurityParameters, SimpleCredentials,
SpkmCredentials, StrongCredentials, Versions
FROM DirectoryAbstractService
{joint-iso-itu-t ds(5) module(1) directoryAbstractService(2) 10} WITH SUCCESSORS
-- from Rec. ITU-T X.519 | ISO/IEC 9594-5
ERROR, id-errcode-dsaReferral, OPERATION
FROM CommonProtocolSpecification
{joint-iso-itu-t ds(5) module(1) commonProtocolSpecification(35) 10}
WITH SUCCESSORS
-- from Rec. ITU-T X.520 | ISO/IEC 9594-6
ProtocolInformation, UniqueIdentifier
FROM SelectedAttributeTypes
{joint-iso-itu-t ds(5) module(1) selectedAttributeTypes(5) 10} WITH SUCCESSORS ;
-- errors and parameters
dsaReferral ERROR ::= {
PARAMETER OPTIONALLY-PROTECTED { DsaReferralData }
CODE id-errcode-dsaReferral }
DsaReferralData ::= SET {
reference [0] ContinuationReference,
contextPrefix [1] DistinguishedName OPTIONAL,
...,
...,
COMPONENTS OF CommonResults }
-- common arguments and results
ChainingArguments ::= SET {
originator [0] DistinguishedName OPTIONAL,
targetObject [1] DistinguishedName OPTIONAL,
operationProgress [2] OperationProgress
DEFAULT {nameResolutionPhase notStarted},
traceInformation [3] TraceInformation,
aliasDereferenced [4] BOOLEAN DEFAULT FALSE,
aliasedRDNs [5] INTEGER OPTIONAL,
returnCrossRefs [6] BOOLEAN DEFAULT FALSE,
referenceType [7] ReferenceType DEFAULT superior,
info [8] DomainInfo OPTIONAL,
timeLimit [9] Time OPTIONAL,
securityParameters [10] SecurityParameters DEFAULT {},
entryOnly [11] BOOLEAN DEFAULT FALSE,
uniqueIdentifier [12] UniqueIdentifier OPTIONAL,
authenticationLevel [13] AuthenticationLevel OPTIONAL,
exclusions [14] Exclusions OPTIONAL,
excludeShadows [15] BOOLEAN DEFAULT FALSE,
nameResolveOnMaster [16] BOOLEAN DEFAULT FALSE,
operationIdentifier [17] INTEGER OPTIONAL,
searchRuleId [18] SearchRuleId OPTIONAL,
chainedRelaxation [19] MRMapping OPTIONAL,
relatedEntry [20] INTEGER OPTIONAL,
dspPaging [21] BOOLEAN DEFAULT FALSE,
-- [22] Not to be used
-- [23] Not to be used
excludeWriteableCopies [24] BOOLEAN DEFAULT FALSE,
... }
Time ::= CHOICE {
utcTime UTCTime,
generalizedTime GeneralizedTime,
... }
DomainInfo ::= ABSTRACT-SYNTAX.&Type
ChainingResults ::= SET {
info [0] DomainInfo OPTIONAL,
crossReferences [1] SEQUENCE SIZE (1..MAX) OF CrossReference OPTIONAL,
securityParameters [2] SecurityParameters DEFAULT {},
alreadySearched [3] Exclusions OPTIONAL,
... }
CrossReference ::= SET {
contextPrefix [0] DistinguishedName,
accessPoint [1] AccessPointInformation,
... }
OperationProgress ::= SET {
nameResolutionPhase [0] ENUMERATED {
notStarted (1),
proceeding (2),
completed (3),
... },
nextRDNToBeResolved [1] INTEGER OPTIONAL,
... }
TraceInformation ::= SEQUENCE OF TraceItem
TraceItem ::= SET {
dsa [0] Name,
targetObject [1] Name OPTIONAL,
operationProgress [2] OperationProgress,
... }
ReferenceType ::= ENUMERATED {
superior (1),
subordinate (2),
cross (3),
nonSpecificSubordinate (4),
supplier (5),
master (6),
immediateSuperior (7),
self (8),
ditBridge (9),
... }
AccessPoint ::= SET {
ae-title [0] Name,
address [1] PresentationAddress,
protocolInformation [2] SET SIZE (1..MAX) OF ProtocolInformation OPTIONAL,
-- [6] Not to be used
... }
MasterOrShadowAccessPoint ::= SET {
COMPONENTS OF AccessPoint,
category [3] ENUMERATED {
master (0),
shadow (1),
writeableCopy (2),
... } DEFAULT master,
chainingRequired [5] BOOLEAN DEFAULT FALSE,
... }
MasterAndShadowAccessPoints ::= SET SIZE (1..MAX) OF MasterOrShadowAccessPoint
AccessPointInformation ::= SET {
COMPONENTS OF MasterOrShadowAccessPoint,
additionalPoints [4] MasterAndShadowAccessPoints OPTIONAL,
... }
DitBridgeKnowledge ::= SEQUENCE {
domainLocalID UnboundedDirectoryString OPTIONAL,
accessPoints MasterAndShadowAccessPoints,
... }
Exclusions ::= SET SIZE (1..MAX) OF RDNSequence
ContinuationReference ::= SET {
targetObject [0] Name,
aliasedRDNs [1] INTEGER OPTIONAL, -- only present in first edition systems
operationProgress [2] OperationProgress,
rdnsResolved [3] INTEGER OPTIONAL,
referenceType [4] ReferenceType,
accessPoints [5] SET OF AccessPointInformation,
entryOnly [6] BOOLEAN DEFAULT FALSE,
exclusions [7] Exclusions OPTIONAL,
returnToDUA [8] BOOLEAN DEFAULT FALSE,
nameResolveOnMaster [9] BOOLEAN DEFAULT FALSE,
... }
-- bind unbind operation
dSABind OPERATION ::= {
ARGUMENT DSABindArgument
RESULT DSABindResult
ERRORS { directoryBindError } }
DSABindArgument ::= SET {
credentials [0] DSACredentials OPTIONAL,
versions [1] Versions DEFAULT {v1},
... }
DSACredentials ::= CHOICE {
simple [0] SimpleCredentials,
strong [1] StrongCredentials,
externalProcedure [2] EXTERNAL,
spkm [3] SpkmCredentials,
... }
DSABindResult ::= DSABindArgument
-- parameterized type for deriving chained operations
chained{OPERATION:operation} OPERATION ::= {
ARGUMENT OPTIONALLY-PROTECTED {SET {
chainedArgument ChainingArguments,
argument [0] operation.&ArgumentType } }
RESULT OPTIONALLY-PROTECTED {SET {
chainedResult ChainingResults,
result [0] operation.&ResultType}}
ERRORS
{operation.&Errors EXCEPT referral | dsaReferral}
CODE operation.&operationCode }
-- chained operations
chainedRead OPERATION ::= chained{read}
chainedCompare OPERATION ::= chained{compare}
chainedAbandon OPERATION ::= abandon
chainedList OPERATION ::= chained{list}
chainedSearch OPERATION ::= chained{search}
chainedAddEntry OPERATION ::= chained{addEntry}
chainedRemoveEntry OPERATION ::= chained{removeEntry}
chainedModifyEntry OPERATION ::= chained{modifyEntry}
chainedModifyDN OPERATION ::= chained{modifyDN}
chainedChangePassword OPERATION ::= chained{changePassword}
chainedAdministerPassword OPERATION ::= chained{administerPassword}
chainedLdapTransport OPERATION ::= chained{ldapTransport}
chainedLinkedLDAP OPERATION ::= chained{linkedLDAP}
END -- DistributedOperations