aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/doc/oidspecs/rfc/rfc4530.oidspec
diff options
context:
space:
mode:
authorDavid M. Syzdek <david@syzdek.net>2019-11-19 22:42:02 -0900
committerDavid M. Syzdek <david@syzdek.net>2019-11-19 22:42:02 -0900
commit50d22a43843a8119ea6f90afd0847c45bff12453 (patch)
tree95b37cdfcc65f0d90c743faeb547da98b6a63771 /doc/oidspecs/rfc/rfc4530.oidspec
parentc0591a14a2e7fe575c972670bcbab9e703a46c85 (diff)
downloadldap-utils-50d22a43843a8119ea6f90afd0847c45bff12453.tar.gz
ldap-utils-50d22a43843a8119ea6f90afd0847c45bff12453.tar.bz2
ldap-utils-50d22a43843a8119ea6f90afd0847c45bff12453.tar.xz
ldap-utils-50d22a43843a8119ea6f90afd0847c45bff12453.zip
oidspecs: adjusting whitespace
Diffstat (limited to '')
-rw-r--r--doc/oidspecs/rfc/rfc4530.oidspec100
1 files changed, 50 insertions, 50 deletions
diff --git a/doc/oidspecs/rfc/rfc4530.oidspec b/doc/oidspecs/rfc/rfc4530.oidspec
index 6e88524..a0da26d 100644
--- a/doc/oidspecs/rfc/rfc4530.oidspec
+++ b/doc/oidspecs/rfc/rfc4530.oidspec
@@ -5,14 +5,14 @@
5 // RFC 4122 A UUID URN Namespace July 2005 5 // RFC 4122 A UUID URN Namespace July 2005
6 // 6 //
7 // 3. Namespace Registration Template 7 // 3. Namespace Registration Template
8 // 8 //
9 // Namespace ID: UUID 9 // Namespace ID: UUID
10 // Registration Information: 10 // Registration Information:
11 // Registration date: 2003-10-01 11 // Registration date: 2003-10-01
12 // 12 //
13 // Declared registrant of the namespace: 13 // Declared registrant of the namespace:
14 // JTC 1/SC6 (ASN.1 Rapporteur Group) 14 // JTC 1/SC6 (ASN.1 Rapporteur Group)
15 // 15 //
16 // Declaration of syntactic structure: 16 // Declaration of syntactic structure:
17 // A UUID is an identifier that is unique across both space and time, 17 // A UUID is an identifier that is unique across both space and time,
18 // with respect to the space of all UUIDs. Since a UUID is a fixed 18 // with respect to the space of all UUIDs. Since a UUID is a fixed
@@ -21,20 +21,20 @@
21 // used). A UUID can be used for multiple purposes, from tagging 21 // used). A UUID can be used for multiple purposes, from tagging
22 // objects with an extremely short lifetime, to reliably identifying 22 // objects with an extremely short lifetime, to reliably identifying
23 // very persistent objects across a network. 23 // very persistent objects across a network.
24 // 24 //
25 // The internal representation of a UUID is a specific sequence of 25 // The internal representation of a UUID is a specific sequence of
26 // bits in memory, as described in Section 4. To accurately 26 // bits in memory, as described in Section 4. To accurately
27 // represent a UUID as a URN, it is necessary to convert the bit 27 // represent a UUID as a URN, it is necessary to convert the bit
28 // sequence to a string representation. 28 // sequence to a string representation.
29 // 29 //
30 // Each field is treated as an integer and has its value printed as a 30 // Each field is treated as an integer and has its value printed as a
31 // zero-filled hexadecimal digit string with the most significant 31 // zero-filled hexadecimal digit string with the most significant
32 // digit first. The hexadecimal values "a" through "f" are output as 32 // digit first. The hexadecimal values "a" through "f" are output as
33 // lower case characters and are case insensitive on input. 33 // lower case characters and are case insensitive on input.
34 // 34 //
35 // The formal definition of the UUID string representation is 35 // The formal definition of the UUID string representation is
36 // provided by the following ABNF [7]: 36 // provided by the following ABNF [7]:
37 // 37 //
38 // UUID = time-low "-" time-mid "-" 38 // UUID = time-low "-" time-mid "-"
39 // time-high-and-version "-" 39 // time-high-and-version "-"
40 // clock-seq-and-reserved 40 // clock-seq-and-reserved
@@ -50,12 +50,12 @@
50 // "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" / 50 // "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" /
51 // "a" / "b" / "c" / "d" / "e" / "f" / 51 // "a" / "b" / "c" / "d" / "e" / "f" /
52 // "A" / "B" / "C" / "D" / "E" / "F" 52 // "A" / "B" / "C" / "D" / "E" / "F"
53 // 53 //
54 // The following is an example of the string representation of a UUID as 54 // The following is an example of the string representation of a UUID as
55 // a URN: 55 // a URN:
56 // 56 //
57 // urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6 57 // urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6
58 // 58 //
59 // Relevant ancillary documentation: 59 // Relevant ancillary documentation:
60 // [1][2] 60 // [1][2]
61 // Identifier uniqueness considerations: 61 // Identifier uniqueness considerations:
@@ -66,13 +66,13 @@
66 // application-provided text strings. As a result, the UUIDs 66 // application-provided text strings. As a result, the UUIDs
67 // generated according to the mechanisms here will be unique from all 67 // generated according to the mechanisms here will be unique from all
68 // other UUIDs that have been or will be assigned. 68 // other UUIDs that have been or will be assigned.
69 // 69 //
70 // Identifier persistence considerations: 70 // Identifier persistence considerations:
71 // UUIDs are inherently very difficult to resolve in a global sense. 71 // UUIDs are inherently very difficult to resolve in a global sense.
72 // This, coupled with the fact that UUIDs are temporally unique 72 // This, coupled with the fact that UUIDs are temporally unique
73 // within their spatial context, ensures that UUIDs will remain as 73 // within their spatial context, ensures that UUIDs will remain as
74 // persistent as possible. 74 // persistent as possible.
75 // 75 //
76 // Process of identifier assignment: 76 // Process of identifier assignment:
77 // Generating a UUID does not require that a registration authority 77 // Generating a UUID does not require that a registration authority
78 // be contacted. One algorithm requires a unique value over space 78 // be contacted. One algorithm requires a unique value over space
@@ -83,10 +83,10 @@
83 // or privacy concerns make its use undesirable, Section 4.5 83 // or privacy concerns make its use undesirable, Section 4.5
84 // specifies two alternatives. Another approach is to use version 3 84 // specifies two alternatives. Another approach is to use version 3
85 // or version 4 UUIDs as defined below. 85 // or version 4 UUIDs as defined below.
86 // 86 //
87 // Process for identifier resolution: 87 // Process for identifier resolution:
88 // Since UUIDs are not globally resolvable, this is not applicable. 88 // Since UUIDs are not globally resolvable, this is not applicable.
89 // 89 //
90 // Rules for Lexical Equivalence: 90 // Rules for Lexical Equivalence:
91 // Consider each field of the UUID to be an unsigned integer as shown 91 // Consider each field of the UUID to be an unsigned integer as shown
92 // in the table in section Section 4.1.2. Then, to compare a pair of 92 // in the table in section Section 4.1.2. Then, to compare a pair of
@@ -94,54 +94,54 @@
94 // UUID in order of significance and according to their data type. 94 // UUID in order of significance and according to their data type.
95 // Two UUIDs are equal if and only if all the corresponding fields 95 // Two UUIDs are equal if and only if all the corresponding fields
96 // are equal. 96 // are equal.
97 // 97 //
98 // As an implementation note, equality comparison can be performed on 98 // As an implementation note, equality comparison can be performed on
99 // many systems by doing the appropriate byte-order canonicalization, 99 // many systems by doing the appropriate byte-order canonicalization,
100 // and then treating the two UUIDs as 128-bit unsigned integers. 100 // and then treating the two UUIDs as 128-bit unsigned integers.
101 // 101 //
102 // UUIDs, as defined in this document, can also be ordered 102 // UUIDs, as defined in this document, can also be ordered
103 // lexicographically. For a pair of UUIDs, the first one follows the 103 // lexicographically. For a pair of UUIDs, the first one follows the
104 // second if the most significant field in which the UUIDs differ is 104 // second if the most significant field in which the UUIDs differ is
105 // greater for the first UUID. The second precedes the first if the 105 // greater for the first UUID. The second precedes the first if the
106 // most significant field in which the UUIDs differ is greater for 106 // most significant field in which the UUIDs differ is greater for
107 // the second UUID. 107 // the second UUID.
108 // 108 //
109 // Conformance with URN Syntax: 109 // Conformance with URN Syntax:
110 // The string representation of a UUID is fully compatible with the 110 // The string representation of a UUID is fully compatible with the
111 // URN syntax. When converting from a bit-oriented, in-memory 111 // URN syntax. When converting from a bit-oriented, in-memory
112 // representation of a UUID into a URN, care must be taken to 112 // representation of a UUID into a URN, care must be taken to
113 // strictly adhere to the byte order issues mentioned in the string 113 // strictly adhere to the byte order issues mentioned in the string
114 // representation section. 114 // representation section.
115 // 115 //
116 // Validation mechanism: 116 // Validation mechanism:
117 // Apart from determining whether the timestamp portion of the UUID 117 // Apart from determining whether the timestamp portion of the UUID
118 // is in the future and therefore not yet assignable, there is no 118 // is in the future and therefore not yet assignable, there is no
119 // mechanism for determining whether a UUID is 'valid'. 119 // mechanism for determining whether a UUID is 'valid'.
120 // 120 //
121 // Scope: 121 // Scope:
122 // UUIDs are global in scope. 122 // UUIDs are global in scope.
123 // 123 //
124 // 124 //
125 // RFC 4530 LDAP entryUUID June 2006 125 // RFC 4530 LDAP entryUUID June 2006
126 // 126 //
127 // 2.1. UUID Syntax 127 // 2.1. UUID Syntax
128 // 128 //
129 // A Universally Unique Identifier (UUID) [RFC4122] is a 16-octet (128- 129 // A Universally Unique Identifier (UUID) [RFC4122] is a 16-octet (128-
130 // bit) value that identifies an object. The ASN.1 [X.680] type UUID is 130 // bit) value that identifies an object. The ASN.1 [X.680] type UUID is
131 // defined to represent UUIDs as follows: 131 // defined to represent UUIDs as follows:
132 // 132 //
133 // UUID ::= OCTET STRING (SIZE(16)) 133 // UUID ::= OCTET STRING (SIZE(16))
134 // -- constrained to an UUID [RFC4122] 134 // -- constrained to an UUID [RFC4122]
135 // 135 //
136 // In LDAP, UUID values are encoded using the [ASCII] character string 136 // In LDAP, UUID values are encoded using the [ASCII] character string
137 // representation described in [RFC4122]. For example, 137 // representation described in [RFC4122]. For example,
138 // "597ae2f6-16a6-1027-98f4-d28b5365dc14". 138 // "597ae2f6-16a6-1027-98f4-d28b5365dc14".
139 // 139 //
140 // The following is an LDAP syntax description suitable for publication 140 // The following is an LDAP syntax description suitable for publication
141 // in subschema subentries. 141 // in subschema subentries.
142 // 142 //
143 // ( 1.3.6.1.1.16.1 DESC 'UUID' ) 143 // ( 1.3.6.1.1.16.1 DESC 'UUID' )
144 // 144 //
145 .oid = "1.3.6.1.1.16.1", 145 .oid = "1.3.6.1.1.16.1",
146 .name = "UUID", 146 .name = "UUID",
147 .desc = "UUID", 147 .desc = "UUID",
@@ -187,19 +187,19 @@
187{ 187{
188 // 188 //
189 // RFC 4530 LDAP entryUUID June 2006 189 // RFC 4530 LDAP entryUUID June 2006
190 // 190 //
191 // 2.2. 'uuidMatch' Matching Rule 191 // 2.2. 'uuidMatch' Matching Rule
192 // 192 //
193 // The 'uuidMatch' matching rule compares an asserted UUID with a stored 193 // The 'uuidMatch' matching rule compares an asserted UUID with a stored
194 // UUID for equality. Its semantics are the same as the 194 // UUID for equality. Its semantics are the same as the
195 // 'octetStringMatch' [X.520][RFC4517] matching rule. The rule differs 195 // 'octetStringMatch' [X.520][RFC4517] matching rule. The rule differs
196 // from 'octetStringMatch' in that the assertion value is encoded using 196 // from 'octetStringMatch' in that the assertion value is encoded using
197 // the UUID string representation instead of the normal OCTET STRING 197 // the UUID string representation instead of the normal OCTET STRING
198 // string representation. 198 // string representation.
199 // 199 //
200 // The following is an LDAP matching rule description suitable for 200 // The following is an LDAP matching rule description suitable for
201 // publication in subschema subentries. 201 // publication in subschema subentries.
202 // 202 //
203 // ( 1.3.6.1.1.16.2 NAME 'uuidMatch' 203 // ( 1.3.6.1.1.16.2 NAME 'uuidMatch'
204 // SYNTAX 1.3.6.1.1.16.1 ) 204 // SYNTAX 1.3.6.1.1.16.1 )
205 // 205 //
@@ -225,57 +225,57 @@
225{ 225{
226 // 226 //
227 // RFC 4530 LDAP entryUUID June 2006 227 // RFC 4530 LDAP entryUUID June 2006
228 // 228 //
229 // 2.3. 'uuidOrderingMatch' Matching Rule 229 // 2.3. 'uuidOrderingMatch' Matching Rule
230 // 230 //
231 // The 'uuidOrderingMatch' matching rule compares an asserted UUID with 231 // The 'uuidOrderingMatch' matching rule compares an asserted UUID with
232 // a stored UUID for ordering. Its semantics are the same as the 232 // a stored UUID for ordering. Its semantics are the same as the
233 // 'octetStringOrderingMatch' [X.520][RFC4517] matching rule. The rule 233 // 'octetStringOrderingMatch' [X.520][RFC4517] matching rule. The rule
234 // differs from 'octetStringOrderingMatch' in that the assertion value 234 // differs from 'octetStringOrderingMatch' in that the assertion value
235 // is encoded using the UUID string representation instead of the normal 235 // is encoded using the UUID string representation instead of the normal
236 // OCTET STRING string representation. 236 // OCTET STRING string representation.
237 // 237 //
238 // The following is an LDAP matching rule description suitable for 238 // The following is an LDAP matching rule description suitable for
239 // publication in subschema subentries. 239 // publication in subschema subentries.
240 // 240 //
241 // ( 1.3.6.1.1.16.3 NAME 'uuidOrderingMatch' 241 // ( 1.3.6.1.1.16.3 NAME 'uuidOrderingMatch'
242 // SYNTAX 1.3.6.1.1.16.1 ) 242 // SYNTAX 1.3.6.1.1.16.1 )
243 // 243 //
244 // Note that not all UUID variants have a defined ordering; and even 244 // Note that not all UUID variants have a defined ordering; and even
245 // where it does, servers are not obligated to assign UUIDs in any 245 // where it does, servers are not obligated to assign UUIDs in any
246 // particular order. This matching rule is provided for completeness. 246 // particular order. This matching rule is provided for completeness.
247 // 247 //
248 .oid = "1.3.6.1.1.16.3", 248 .oid = "1.3.6.1.1.16.3",
249 .name = "uuidOrderingMatch", 249 .name = "uuidOrderingMatch",
250 .desc = "'uuidOrderingMatch' Matching Rule", 250 .desc = "'uuidOrderingMatch' Matching Rule",
251 .flags = 0, 251 .flags = 0,
252 .type = LDAPSCHEMA_MATCHINGRULE, 252 .type = LDAPSCHEMA_MATCHINGRULE,
253 .def = "( 1.3.6.1.1.16.3 NAME 'uuidOrderingMatch' SYNTAX 1.3.6.1.1.16.1 )", 253 .def = "( 1.3.6.1.1.16.3 NAME 'uuidOrderingMatch' SYNTAX 1.3.6.1.1.16.1 )",
254 .spec = "RFC 4530: LDAP entryUUID", 254 .spec = "RFC 4530: LDAP entryUUID",
255 .spec_type = LDAPSCHEMA_SPEC_RFC, 255 .spec_type = LDAPSCHEMA_SPEC_RFC,
256 .spec_name = "4530", 256 .spec_name = "4530",
257 .spec_section = "2.3", 257 .spec_section = "2.3",
258 .spec_source = NULL, 258 .spec_source = NULL,
259 .spec_vendor = "IETF", 259 .spec_vendor = "IETF",
260 .spec_text = NULL, 260 .spec_text = NULL,
261 .notes = NULL, 261 .notes = NULL,
262 .examples = NULL, 262 .examples = NULL,
263}; 263};
264 264
265 265
266 266
267{ 267{
268 // 268 //
269 // RFC 4530 LDAP entryUUID June 2006 269 // RFC 4530 LDAP entryUUID June 2006
270 // 270 //
271 // 2.4. 'entryUUID' Attribute 271 // 2.4. 'entryUUID' Attribute
272 // 272 //
273 // The 'entryUUID' operational attribute provides the Universally Unique 273 // The 'entryUUID' operational attribute provides the Universally Unique
274 // Identifier (UUID) assigned to the entry. 274 // Identifier (UUID) assigned to the entry.
275 // 275 //
276 // The following is an LDAP attribute type description suitable for 276 // The following is an LDAP attribute type description suitable for
277 // publication in subschema subentries. 277 // publication in subschema subentries.
278 // 278 //
279 // ( 1.3.6.1.1.16.4 NAME 'entryUUID' 279 // ( 1.3.6.1.1.16.4 NAME 'entryUUID'
280 // DESC 'UUID of the entry' 280 // DESC 'UUID of the entry'
281 // EQUALITY uuidMatch 281 // EQUALITY uuidMatch
@@ -284,11 +284,11 @@
284 // SINGLE-VALUE 284 // SINGLE-VALUE
285 // NO-USER-MODIFICATION 285 // NO-USER-MODIFICATION
286 // USAGE directoryOperation ) 286 // USAGE directoryOperation )
287 // 287 //
288 // Servers SHALL generate and assign a new UUID to each entry upon its 288 // Servers SHALL generate and assign a new UUID to each entry upon its
289 // addition to the directory and provide that UUID as the value of the 289 // addition to the directory and provide that UUID as the value of the
290 // 'entryUUID' operational attribute. An entry's UUID is immutable. 290 // 'entryUUID' operational attribute. An entry's UUID is immutable.
291 // 291 //
292 // UUID are to be generated in accordance with Section 4 of [RFC4122]. 292 // UUID are to be generated in accordance with Section 4 of [RFC4122].
293 // In particular, servers MUST ensure that each generated UUID is unique 293 // In particular, servers MUST ensure that each generated UUID is unique
294 // in space and time. 294 // in space and time.