2 # Definitions from RFC2307
4 # Note: The definitions in RFC2307 are given in syntaxes closely related
5 # to those in RFC2252, however, some liberties are taken that are not
6 # supported by RFC2252. This file has been written following RFC2252
9 # OID Base is iso(1) org(3) dod(6) internet(1) directory(1) nisSchema(1).
10 # i.e. nisSchema in RFC2307 is 1.3.6.1.1.1
12 # Syntaxes are under 1.3.6.1.1.1.0 (two new syntaxes are defined)
13 # Attribute types are under 1.3.6.1.1.1.1
14 # Object classes are under 1.3.6.1.1.1.2
16 # Attribute Type Definitions
18 attribute ( 1.3.6.1.1.1.1.0 NAME 'uidNumber'
19 DESC 'An integer uniquely identifying a user in an administrative domain'
21 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
23 attribute ( 1.3.6.1.1.1.1.1 NAME 'gidNumber'
24 DESC 'An integer uniquely identifying a group in an administrative domain'
26 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
28 # TBC: caseIgnoreIA5SubstringsMatch is not defined
30 attribute ( 1.3.6.1.1.1.1.2 NAME 'gecos'
31 DESC 'The GECOS field; the common name'
32 EQUALITY caseIgnoreIA5Match
33 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
35 attribute ( 1.3.6.1.1.1.1.3 NAME 'homeDirectory'
36 DESC 'The absolute path to the home directory'
37 EQUALITY caseExactIA5Match
38 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
40 attribute ( 1.3.6.1.1.1.1.4 NAME 'loginShell'
41 DESC 'The path to the login shell'
42 EQUALITY caseExactIA5Match
43 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
45 attribute ( 1.3.6.1.1.1.1.5 NAME 'shadowLastChange'
47 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
49 attribute ( 1.3.6.1.1.1.1.6 NAME 'shadowMin'
51 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
53 attribute ( 1.3.6.1.1.1.1.7 NAME 'shadowMax'
55 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
57 attribute ( 1.3.6.1.1.1.1.8 NAME 'shadowWarning'
59 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
61 attribute ( 1.3.6.1.1.1.1.9 NAME 'shadowInactive'
63 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
65 attribute ( 1.3.6.1.1.1.1.10 NAME 'shadowExpire'
67 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
69 attribute ( 1.3.6.1.1.1.1.11 NAME 'shadowFlag'
71 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
73 # TBC: caseIgnoreIA5SubstringsMatch is not defined
75 attribute ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
76 EQUALITY caseExactIA5Match
77 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
79 # TBC: caseIgnoreIA5SubstringsMatch is not defined
81 attribute ( 1.3.6.1.1.1.1.13 NAME 'memberNisNetgroup'
82 EQUALITY caseExactIA5Match
83 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
85 attribute ( 1.3.6.1.1.1.1.14 NAME 'nisNetgroupTriple'
86 DESC 'Netgroup triple'
87 SYNTAX 1.3.6.1.1.1.0.0 )
89 attribute ( 1.3.6.1.1.1.1.15 NAME 'ipServicePort'
91 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
93 attribute ( 1.3.6.1.1.1.1.16 NAME 'ipServiceProtocol'
96 attribute ( 1.3.6.1.1.1.1.17 NAME 'ipProtocolNumber'
98 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
100 attribute ( 1.3.6.1.1.1.1.18 NAME 'oncRpcNumber'
101 EQUALITY integerMatch
102 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
104 attribute ( 1.3.6.1.1.1.1.19 NAME 'ipHostNumber'
105 DESC 'IP address as a dotted decimal, eg. 192.168.1.1, omitting leading zeros'
106 EQUALITY caseIgnoreIA5Match
107 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
109 attribute ( 1.3.6.1.1.1.1.20 NAME 'ipNetworkNumber'
110 DESC 'IP network as a dotted decimal, eg. 192.168, omitting leading zeros'
111 EQUALITY caseIgnoreIA5Match
112 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
114 attribute ( 1.3.6.1.1.1.1.21 NAME 'ipNetmaskNumber'
115 DESC 'IP netmask as a dotted decimal, eg. 255.255.255.0, omitting leading zeros'
116 EQUALITY caseIgnoreIA5Match
117 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
119 attribute ( 1.3.6.1.1.1.1.22 NAME 'macAddress'
120 DESC 'MAC address in maximal, colon separated hex notation, eg. 00:00:92:90:ee:e2'
121 EQUALITY caseIgnoreIA5Match
122 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
124 attribute ( 1.3.6.1.1.1.1.23 NAME 'bootParameter'
125 DESC 'rpc.bootparamd parameter'
126 SYNTAX 1.3.6.1.1.1.0.1 )
128 attribute ( 1.3.6.1.1.1.1.24 NAME 'bootFile'
129 DESC 'Boot image name'
130 EQUALITY caseExactIA5Match
131 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
133 attribute ( 1.3.6.1.1.1.1.26 NAME 'nisMapName'
136 # TBC: caseIgnoreIA5SubstringsMatch is not defined
138 attribute ( 1.3.6.1.1.1.1.27 NAME 'nisMapEntry'
139 EQUALITY caseExactIA5Match
140 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1024} SINGLE-VALUE )
142 # Object Class Definitions
144 objectclass ( 1.3.6.1.1.1.2.0 NAME 'posixAccount' SUP top AUXILIARY
145 DESC 'Abstraction of an account with POSIX attributes'
146 MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
147 MAY ( userPassword $ loginShell $ gecos $ description ) )
149 objectclass ( 1.3.6.1.1.1.2.1 NAME 'shadowAccount' SUP top AUXILIARY
150 DESC 'Additional attributes for shadow passwords'
152 MAY ( userPassword $ shadowLastChange $ shadowMin $
153 shadowMax $ shadowWarning $ shadowInactive $
154 shadowExpire $ shadowFlag $ description ) )
156 objectclass ( 1.3.6.1.1.1.2.2 NAME 'posixGroup' SUP top STRUCTURAL
157 DESC 'Abstraction of a group of accounts'
158 MUST ( cn $ gidNumber )
159 MAY ( userPassword $ memberUid $ description ) )
161 # TBC: quotes in quoted strings
163 objectclass ( 1.3.6.1.1.1.2.3 NAME 'ipService' SUP top STRUCTURAL
164 DESC 'Abstraction an Internet Protocol service.
165 Maps an IP port and protocol (such as tcp or udp)
166 to one or more names; the distinguished value of
167 the cn attribute denotes the service"s canonical
169 MUST ( cn $ ipServicePort $ ipServiceProtocol )
170 MAY ( description ) )
172 # TBC: quotes in quoted strings
174 objectclass ( 1.3.6.1.1.1.2.4 NAME 'ipProtocol' SUP top STRUCTURAL
175 DESC 'Abstraction of an IP protocol. Maps a protocol number
176 to one or more names. The distinguished value of the cn
177 attribute denotes the protocol"s canonical name'
178 MUST ( cn $ ipProtocolNumber $ description )
181 # TBC: quotes in quoted strings
183 objectclass ( 1.3.6.1.1.1.2.5 NAME 'oncRpc' SUP top STRUCTURAL
184 DESC 'Abstraction of an Open Network Computing (ONC)
185 [RFC1057] Remote Procedure Call (RPC) binding.
186 This class maps an ONC RPC number to a name.
187 The distinguished value of the cn attribute denotes
188 the RPC service"s canonical name'
189 MUST ( cn $ oncRpcNumber $ description )
192 # TBC: quotes in quoted strings
194 objectclass ( 1.3.6.1.1.1.2.6 NAME 'ipHost' SUP top AUXILIARY
195 DESC 'Abstraction of a host, an IP device. The distinguished
196 value of the cn attribute denotes the host"s canonical
197 name. Device SHOULD be used as a structural class'
198 MUST ( cn $ ipHostNumber )
199 MAY ( l $ description $ manager ) )
201 # TBC: quotes in quoted strings
203 objectclass ( 1.3.6.1.1.1.2.7 NAME 'ipNetwork' SUP top STRUCTURAL
204 DESC 'Abstraction of a network. The distinguished value of
205 the cn attribute denotes the network"s canonical name'
206 MUST ( cn $ ipNetworkNumber )
207 MAY ( ipNetmaskNumber $ l $ description $ manager ) )
209 objectclass ( 1.3.6.1.1.1.2.8 NAME 'nisNetgroup' SUP top STRUCTURAL
210 DESC 'Abstraction of a netgroup. May refer to other netgroups'
212 MAY ( nisNetgroupTriple $ memberNisNetgroup $ description ) )
214 objectclass ( 1.3.6.1.1.1.2.9 NAME 'nisMap' SUP top STRUCTURAL
215 DESC 'A generic abstraction of a NIS map'
219 objectclass ( 1.3.6.1.1.1.2.10 NAME 'nisObject' SUP top STRUCTURAL
220 DESC 'An entry in a NIS map'
221 MUST ( cn $ nisMapEntry $ nisMapName )
224 objectclass ( 1.3.6.1.1.1.2.11 NAME 'ieee802Device' SUP top AUXILIARY
225 DESC 'A device with a MAC address; device SHOULD be
226 used as a structural class'
229 objectclass ( 1.3.6.1.1.1.2.12 NAME 'bootableDevice' SUP top AUXILIARY
230 DESC 'A device with boot parameters; device SHOULD be
231 used as a structural class'
232 MAY ( bootFile $ bootParameter ) )