|
|
1.1 ! root 1: QuipuDirectoryDefinitions ! 2: DEFINITIONS ::= ! 3: BEGIN ! 4: ! 5: -- give the module an identifier in QUIPU 6.0 ! 6: ! 7: IMPORTS ! 8: EVERYTHING ! 9: FROM QuipuNameDefinitions ! 10: ! 11: mhs-or-addresses ! 12: FROM MHSDirectoryObjectsAndAttributes ! 13: {joint-iso-ccitt mhs-motis(6) arch(5) modules(0) directory(1)} ! 14: ! 15: ABSTRACT-OPERATION, ABSTRACT-ERROR ! 16: FROM AbstractServiceNotation {joint-iso-ccitt mhs-motis(6) asdc(2) modules(0) notation(1)} ! 17: ! 18: NameError, ServiceError, SecurityError ! 19: FROM DirctoryAbstractService {joint-iso-ccitt ds(5) modules(1) directoryAbstractService(2)} ! 20: ! 21: DistinguishedName, RelativeDistinguishedName, Attribute, AttributeType, ! 22: ATTRIBUTE, ATTRIBUTE-SYNTAX, OBJECT-CLASS ! 23: FROM InformationFramework {joint-iso-ccitt ds(5) modules(1) informationFramework(1)} ! 24: ! 25: distinguishedNameSyntax, commonName, description, presentationAddress ! 26: FROM SelectedAttributeTypes {joint-iso-ccitt ds(5) modules(1) selectedAttributeTypes(5)} ! 27: ! 28: top, dsa ! 29: FROM SelectedObjectClasses {joint-iso-ccitt ds(5) modules(1) selectedObjectClasses(6)} ! 30: ! 31: AccessPoint ! 32: FROM DistributedOperations {joint-iso-ccitt ds(5) modules(1) distributedOperations(3)} ; ! 33: ! 34: QuipuObject ::= OBJECT-CLASS ! 35: SUBCLASS OF top ! 36: MUST CONTAIN {aCL} ! 37: ! 38: QuipuNonLeafObject ::= OBJECTCLASS ! 39: SUBCLASS OF quipuObject ! 40: MUST CONTAIN {masterDSA} ! 41: MAY CONTAIN {slaveDSA,treeStructure} ! 42: ! 43: QuipuDSA ::= OBJECT-CLASS ! 44: SUBCLASS OF dsa ! 45: -- No Attributes, just object class ! 46: -- to tell you what it is ! 47: ! 48: QuipuDSAInfo ::= OBJECT-CLASS -- always has common name "Info" ! 49: SUBCLASS OF top ! 50: MUST CONTAIN { commonName, edbInfo, quipuVersion, dSAControl } ! 51: MAY CONTAIN { presentationAddress, mhs-or-addresses, description } ! 52: ! 53: ! 54: EDBInfoSyntax ::= SEQUENCE { ! 55: edb DistinguishedName, ! 56: getFromDSA DistinguishedName OPTIONAL, ! 57: -- If omitted DSA is master ! 58: -- Determine mode of update from this DSA ! 59: sendToDSAs NameList, ! 60: -- Send these DSAs incremental updates ! 61: -- Namelist is defined with the ACLs ! 62: getEDBAllowed NameList ! 63: -- List of DSAs allowed to pull EDB ! 64: } ! 65: ! 66: EdbInfo ::= ATTRIBUTE ! 67: WITH ATTRIBUTE-SYNTAX EDBInfo ! 68: MULTI VALUE ! 69: ! 70: MasterDSA ::= ATTRIBUTE ! 71: WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax ! 72: -- Master QSR ! 73: -- Usually, but not necessarily single valued ! 74: ! 75: SlaveDSA ::= ATTRIBUTE ! 76: WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax ! 77: -- Slave QSR ! 78: ! 79: SubordinateReference ::= ATTRIBUTE ! 80: WITH ATTRIBUTE-SYNTAX AccessPoint ! 81: SINGLE VALUE ! 82: ! 83: CrossReference ::= ATTRIBUTE ! 84: WITH ATTRIBUTE-SYNTAX AccessPoint ! 85: SINGLE VALUE ! 86: ! 87: NonSpecificSubordinateReference ::= ATTRIBUTE ! 88: WITH ATTRIBUTE-SYNTAX AccessPoint ! 89: ! 90: QuipuVersion ::= ATTRIBUTE ! 91: WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax ! 92: ! 93: DSAControl ::= ATTRIBUTE ! 94: WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax ! 95: ! 96: ACLInfo ::= SET OF SEQUENCE { ! 97: AccessSelector, ! 98: AccessCategories } ! 99: ! 100: AccessCategories ::= ENUMERATED { ! 101: none (0), ! 102: detect (1), ! 103: compare (2), ! 104: read (3), ! 105: add (4), ! 106: write (5) } ! 107: ! 108: AccessSelector ::= CHOICE { ! 109: entry [0] NULL, ! 110: -- DUA identified by the entry ! 111: other [2] NULL, ! 112: -- This indicates 'public' rights ! 113: prefix [3] NameList, ! 114: -- This identifies a prefix name for specified DUAs ! 115: -- e.g. anyone in the UK ! 116: group [4] NameList ! 117: -- For specifying group rights ! 118: } ! 119: ! 120: NameList ::= SET OF DistinguishedName ! 121: ! 122: ACLSyntax ::= SEQUENCE { ! 123: childACL [0] ACLInfo DEFAULT {{other, read}}, ! 124: entryACL [1] ACLInfo DEFAULT {{other, read}}, ! 125: defaultAttributeACL [2] ACLInfo DEFAULT {{other, read}}, ! 126: [3] SET OF AttributeACL } ! 127: -- Defaults to a publicly readable ! 128: -- read only directory ! 129: ! 130: AttributeACL ::= SEQUENCE { ! 131: SET OF AttributeType, ! 132: ACLInfo } ! 133: ! 134: ACL ATTRIBUTE ! 135: WITH ATTRIBUTE-SYNTAX ACLSyntax ! 136: SINGLE VALUE ! 137: ! 138: TreeStructureSyntax ::= SET { ! 139: mandatoryObjectClasses [1] SET OF OBJECT IDENTIFIER, ! 140: optionalObjectClasses [2] SET OF OBJECT IDENTIFIER OPTIONAL, ! 141: permittedRDNs [3] SET OF SET OF AttributeType } ! 142: ! 143: TreeStructure ::= ATTRIBUTE ! 144: WITH ATTRIBUTE-SYNTAX TreeStructureSyntax ! 145: MULTI VALUE ! 146: ! 147: EntryDataBlock ::= SEQUENCE OF RelativeEntry ! 148: ! 149: RelativeEntry ::= SEQUENCE { ! 150: RelativeDistinguishedName, ! 151: SET OF Attribute ! 152: } ! 153: ! 154: ReliableROSData ::= SEQUENCE { ! 155: rosOperation INTEGER, ! 156: -- the operation being applied ! 157: data ANY, ! 158: -- the Operation Argument ! 159: oldVersion ANY ! 160: -- data version to which operation should be applied ! 161: -- version syntax will be defined by the ! 162: -- Reliable ROS user ! 163: newVersion ANY ! 164: -- version number which results from operation ! 165: } ! 166: ! 167: GetEntryDataBlock ABSTRACT-OPERATION ! 168: ARGUMENT GetEntryDataBlockArgument ! 169: RESULT GetEntryDataBlockResult ! 170: ERRORS {NameError,ServiceError,SecurityError} ! 171: ! 172: getEntryDataBlock GetEntryDataBlock ::= 10 ! 173: ! 174: -- will make this an OBJECT IDENTIFER ! 175: -- when ISODE can support this form ! 176: -- of operation code ! 177: ! 178: GetEntryDataBlockArgument ::= SET { ! 179: entry [0] DistinguishedName, ! 180: sendIfMoreRecentThan [1] EDBVersion OPTIONAL ! 181: -- if omitted, just return version held ! 182: -- To force send, specify old version ! 183: } ! 184: ! 185: GetEntryDataBlockResult ::= SEQUENCE { ! 186: versionHeld [0] EDBVersion ! 187: [1] EntryDataBlock OPTIONAL ! 188: } ! 189: } ! 190: ! 191: ! 192: EDBVersion ::= UTCTime ! 193: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.