-- Module DistributedOperations (X.518 (2005) Cor. 2:02/2011)
-- See also ITU-T X.518 (08/2005)
-- See also the index of all ASN.1 assignments needed in this document
DistributedOperations {joint-iso-itu-t ds(5) module(1) distributedOperations(3)
5} DEFINITIONS ::=
BEGIN
-- EXPORTS All
-- The types and values defined in this module are exported for use in the other ASN.1 modules contained
-- within the 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 ITU-T Rec. X.501 | ISO/IEC 9594-2
basicAccessControl, commonProtocolSpecification, directoryAbstractService,
enhancedSecurity, informationFramework, selectedAttributeTypes,
serviceAdministration, upperBounds
FROM UsefulDefinitions {joint-iso-itu-t ds(5) module(1)
usefulDefinitions(0) 5}
DistinguishedName, Name, RDNSequence
FROM InformationFramework informationFramework
MRMapping, SearchRuleId
FROM ServiceAdministration serviceAdministration
AuthenticationLevel
FROM BasicAccessControl basicAccessControl
OPTIONALLY-PROTECTED{}
FROM EnhancedSecurity enhancedSecurity
-- from ITU-T Rec. X.511 | ISO/IEC 9594-3
abandon, addEntry, CommonResults, compare, directoryBindError, list,
modifyDN, modifyEntry, read, referral, removeEntry, search,
SecurityParameters, SimpleCredentials, SpkmCredentials, StrongCredentials,
Versions
FROM DirectoryAbstractService directoryAbstractService
-- from ITU-T Rec. X.519 | ISO/IEC 9594-5
ERROR, id-errcode-dsaReferral, OPERATION
FROM CommonProtocolSpecification commonProtocolSpecification
-- from ITU-T Rec. X.520 | ISO/IEC 9594-6
DirectoryString{}, PresentationAddress, ProtocolInformation, UniqueIdentifier
FROM SelectedAttributeTypes selectedAttributeTypes
ub-domainLocalID, ub-labeledURI
FROM UpperBounds upperBounds;
-- 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
}
-- bind and unbind operations
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
--dSAUnbind OPERATION ::= directoryUnbind
-- 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}
-- errors and parameters
dsaReferral ERROR ::= {
PARAMETER OPTIONALLY-PROTECTED
{SET {reference [0] ContinuationReference,
contextPrefix [1] DistinguishedName OPTIONAL,
COMPONENTS OF CommonResults}}
CODE id-errcode-dsaReferral
}
-- 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,
-- only present in first edition systems
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
--streamedResults [23] INTEGER OPTIONAL, Currently not 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
--labeledURI [6] Not to be used
}
LabeledURI ::= DirectoryString{ub-labeledURI}
MasterOrShadowAccessPoint ::= SET {
COMPONENTS OF AccessPoint,
category [3] ENUMERATED {master(0), shadow(1)} 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 DirectoryString{ub-domainLocalID} 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
}
END -- DistributedOperations
-- Generated by the ASN.1 pretty-printer of France Telecom R&D