001    
002    /*
003     *  Licensed to the Apache Software Foundation (ASF) under one
004     *  or more contributor license agreements.  See the NOTICE file
005     *  distributed with this work for additional information
006     *  regarding copyright ownership.  The ASF licenses this file
007     *  to you under the Apache License, Version 2.0 (the
008     *  "License"); you may not use this file except in compliance
009     *  with the License.  You may obtain a copy of the License at
010     *  
011     *    http://www.apache.org/licenses/LICENSE-2.0
012     *  
013     *  Unless required by applicable law or agreed to in writing,
014     *  software distributed under the License is distributed on an
015     *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
016     *  KIND, either express or implied.  See the License for the
017     *  specific language governing permissions and limitations
018     *  under the License. 
019     *  
020     */
021    package org.apache.directory.server.schema.bootstrap;
022    
023    
024    import java.util.ArrayList;
025    import javax.naming.NamingException;
026    
027    import org.apache.directory.server.schema.registries.Registries;
028    import org.apache.directory.shared.ldap.schema.UsageEnum;
029    
030    
031    /**
032     * A producer of schema attributeType definations for the samba schema.  This
033     * code has been automatically generated using schema files in the OpenLDAP
034     * format along with the directory plugin for maven.  This has been done
035     * to facilitate Eve<->OpenLDAP schema interoperability.
036     *
037     * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
038     */
039    public class SambaAttributeTypeProducer extends AbstractBootstrapProducer
040    {
041    
042        public SambaAttributeTypeProducer()
043        {
044            super( ProducerTypeEnum.ATTRIBUTE_TYPE_PRODUCER );
045        }
046    
047    
048        // ------------------------------------------------------------------------
049        // BootstrapProducer Methods
050        // ------------------------------------------------------------------------
051    
052    
053        /**
054         * @see BootstrapProducer#produce( Registries, ProducerCallback )
055         */
056        public void produce( Registries registries, ProducerCallback cb )
057            throws NamingException
058        {
059            ArrayList<String> names = new ArrayList<String>();
060            BootstrapAttributeType attributeType;
061    
062    
063            // --------------------------------------------------------------------
064            // AttributeType 1.3.6.1.4.1.7165.2.1.24 
065            // --------------------------------------------------------------------
066    
067            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.24", registries );
068            attributeType.setDescription( "LanManager Password" );
069            attributeType.setCanUserModify( ! false );
070            attributeType.setSingleValue( true );
071            attributeType.setCollective( false );
072            attributeType.setObsolete( false );
073            attributeType.setLength( 32 );
074            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
075            attributeType.setEqualityId( "caseIgnoreIA5Match" );
076            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
077    
078            names.clear();
079            names.add( "sambaLMPassword" );
080            attributeType.setNames( names.toArray( EMPTY ) );
081            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.24", attributeType );
082    
083            // --------------------------------------------------------------------
084            // AttributeType 1.3.6.1.4.1.7165.2.1.25 
085            // --------------------------------------------------------------------
086    
087            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.25", registries );
088            attributeType.setDescription( "MD4 hash of the unicode password" );
089            attributeType.setCanUserModify( ! false );
090            attributeType.setSingleValue( true );
091            attributeType.setCollective( false );
092            attributeType.setObsolete( false );
093            attributeType.setLength( 32 );
094            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
095            attributeType.setEqualityId( "caseIgnoreIA5Match" );
096            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
097    
098            names.clear();
099            names.add( "sambaNTPassword" );
100            attributeType.setNames( names.toArray( EMPTY ) );
101            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.25", attributeType );
102    
103            // --------------------------------------------------------------------
104            // AttributeType 1.3.6.1.4.1.7165.2.1.26 
105            // --------------------------------------------------------------------
106    
107            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.26", registries );
108            attributeType.setDescription( "Account Flags" );
109            attributeType.setCanUserModify( ! false );
110            attributeType.setSingleValue( true );
111            attributeType.setCollective( false );
112            attributeType.setObsolete( false );
113            attributeType.setLength( 16 );
114            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
115            attributeType.setEqualityId( "caseIgnoreIA5Match" );
116            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
117    
118            names.clear();
119            names.add( "sambaAcctFlags" );
120            attributeType.setNames( names.toArray( EMPTY ) );
121            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.26", attributeType );
122    
123            // --------------------------------------------------------------------
124            // AttributeType 1.3.6.1.4.1.7165.2.1.27 
125            // --------------------------------------------------------------------
126    
127            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.27", registries );
128            attributeType.setDescription( "Timestamp of the last password update" );
129            attributeType.setCanUserModify( ! false );
130            attributeType.setSingleValue( true );
131            attributeType.setCollective( false );
132            attributeType.setObsolete( false );
133            attributeType.setLength( 0 );
134            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
135            attributeType.setEqualityId( "integerMatch" );
136            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
137    
138            names.clear();
139            names.add( "sambaPwdLastSet" );
140            attributeType.setNames( names.toArray( EMPTY ) );
141            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.27", attributeType );
142    
143            // --------------------------------------------------------------------
144            // AttributeType 1.3.6.1.4.1.7165.2.1.28 
145            // --------------------------------------------------------------------
146    
147            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.28", registries );
148            attributeType.setDescription( "Timestamp of when the user is allowed to update the password" );
149            attributeType.setCanUserModify( ! false );
150            attributeType.setSingleValue( true );
151            attributeType.setCollective( false );
152            attributeType.setObsolete( false );
153            attributeType.setLength( 0 );
154            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
155            attributeType.setEqualityId( "integerMatch" );
156            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
157    
158            names.clear();
159            names.add( "sambaPwdCanChange" );
160            attributeType.setNames( names.toArray( EMPTY ) );
161            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.28", attributeType );
162    
163            // --------------------------------------------------------------------
164            // AttributeType 1.3.6.1.4.1.7165.2.1.29 
165            // --------------------------------------------------------------------
166    
167            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.29", registries );
168            attributeType.setDescription( "Timestamp of when the password will expire" );
169            attributeType.setCanUserModify( ! false );
170            attributeType.setSingleValue( true );
171            attributeType.setCollective( false );
172            attributeType.setObsolete( false );
173            attributeType.setLength( 0 );
174            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
175            attributeType.setEqualityId( "integerMatch" );
176            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
177    
178            names.clear();
179            names.add( "sambaPwdMustChange" );
180            attributeType.setNames( names.toArray( EMPTY ) );
181            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.29", attributeType );
182    
183            // --------------------------------------------------------------------
184            // AttributeType 1.3.6.1.4.1.7165.2.1.30 
185            // --------------------------------------------------------------------
186    
187            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.30", registries );
188            attributeType.setDescription( "Timestamp of last logon" );
189            attributeType.setCanUserModify( ! false );
190            attributeType.setSingleValue( true );
191            attributeType.setCollective( false );
192            attributeType.setObsolete( false );
193            attributeType.setLength( 0 );
194            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
195            attributeType.setEqualityId( "integerMatch" );
196            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
197    
198            names.clear();
199            names.add( "sambaLogonTime" );
200            attributeType.setNames( names.toArray( EMPTY ) );
201            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.30", attributeType );
202    
203            // --------------------------------------------------------------------
204            // AttributeType 1.3.6.1.4.1.7165.2.1.31 
205            // --------------------------------------------------------------------
206    
207            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.31", registries );
208            attributeType.setDescription( "Timestamp of last logoff" );
209            attributeType.setCanUserModify( ! false );
210            attributeType.setSingleValue( true );
211            attributeType.setCollective( false );
212            attributeType.setObsolete( false );
213            attributeType.setLength( 0 );
214            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
215            attributeType.setEqualityId( "integerMatch" );
216            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
217    
218            names.clear();
219            names.add( "sambaLogoffTime" );
220            attributeType.setNames( names.toArray( EMPTY ) );
221            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.31", attributeType );
222    
223            // --------------------------------------------------------------------
224            // AttributeType 1.3.6.1.4.1.7165.2.1.32 
225            // --------------------------------------------------------------------
226    
227            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.32", registries );
228            attributeType.setDescription( "Timestamp of when the user will be logged off automatically" );
229            attributeType.setCanUserModify( ! false );
230            attributeType.setSingleValue( true );
231            attributeType.setCollective( false );
232            attributeType.setObsolete( false );
233            attributeType.setLength( 0 );
234            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
235            attributeType.setEqualityId( "integerMatch" );
236            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
237    
238            names.clear();
239            names.add( "sambaKickoffTime" );
240            attributeType.setNames( names.toArray( EMPTY ) );
241            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.32", attributeType );
242    
243            // --------------------------------------------------------------------
244            // AttributeType 1.3.6.1.4.1.7165.2.1.48 
245            // --------------------------------------------------------------------
246    
247            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.48", registries );
248            attributeType.setDescription( "Bad password attempt count" );
249            attributeType.setCanUserModify( ! false );
250            attributeType.setSingleValue( true );
251            attributeType.setCollective( false );
252            attributeType.setObsolete( false );
253            attributeType.setLength( 0 );
254            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
255            attributeType.setEqualityId( "integerMatch" );
256            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
257    
258            names.clear();
259            names.add( "sambaBadPasswordCount" );
260            attributeType.setNames( names.toArray( EMPTY ) );
261            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.48", attributeType );
262    
263            // --------------------------------------------------------------------
264            // AttributeType 1.3.6.1.4.1.7165.2.1.49 
265            // --------------------------------------------------------------------
266    
267            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.49", registries );
268            attributeType.setDescription( "Time of the last bad password attempt" );
269            attributeType.setCanUserModify( ! false );
270            attributeType.setSingleValue( true );
271            attributeType.setCollective( false );
272            attributeType.setObsolete( false );
273            attributeType.setLength( 0 );
274            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
275            attributeType.setEqualityId( "integerMatch" );
276            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
277    
278            names.clear();
279            names.add( "sambaBadPasswordTime" );
280            attributeType.setNames( names.toArray( EMPTY ) );
281            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.49", attributeType );
282    
283            // --------------------------------------------------------------------
284            // AttributeType 1.3.6.1.4.1.7165.2.1.55 
285            // --------------------------------------------------------------------
286    
287            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.55", registries );
288            attributeType.setDescription( "Logon Hours" );
289            attributeType.setCanUserModify( ! false );
290            attributeType.setSingleValue( true );
291            attributeType.setCollective( false );
292            attributeType.setObsolete( false );
293            attributeType.setLength( 42 );
294            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
295            attributeType.setEqualityId( "caseIgnoreIA5Match" );
296            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
297    
298            names.clear();
299            names.add( "sambaLogonHours" );
300            attributeType.setNames( names.toArray( EMPTY ) );
301            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.55", attributeType );
302    
303            // --------------------------------------------------------------------
304            // AttributeType 1.3.6.1.4.1.7165.2.1.33 
305            // --------------------------------------------------------------------
306    
307            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.33", registries );
308            attributeType.setDescription( "Driver letter of home directory mapping" );
309            attributeType.setCanUserModify( ! false );
310            attributeType.setSingleValue( true );
311            attributeType.setCollective( false );
312            attributeType.setObsolete( false );
313            attributeType.setLength( 4 );
314            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
315            attributeType.setEqualityId( "caseIgnoreIA5Match" );
316            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
317    
318            names.clear();
319            names.add( "sambaHomeDrive" );
320            attributeType.setNames( names.toArray( EMPTY ) );
321            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.33", attributeType );
322    
323            // --------------------------------------------------------------------
324            // AttributeType 1.3.6.1.4.1.7165.2.1.34 
325            // --------------------------------------------------------------------
326    
327            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.34", registries );
328            attributeType.setDescription( "Logon script path" );
329            attributeType.setCanUserModify( ! false );
330            attributeType.setSingleValue( true );
331            attributeType.setCollective( false );
332            attributeType.setObsolete( false );
333            attributeType.setLength( 255 );
334            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
335            attributeType.setEqualityId( "caseIgnoreMatch" );
336            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
337    
338            names.clear();
339            names.add( "sambaLogonScript" );
340            attributeType.setNames( names.toArray( EMPTY ) );
341            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.34", attributeType );
342    
343            // --------------------------------------------------------------------
344            // AttributeType 1.3.6.1.4.1.7165.2.1.35 
345            // --------------------------------------------------------------------
346    
347            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.35", registries );
348            attributeType.setDescription( "Roaming profile path" );
349            attributeType.setCanUserModify( ! false );
350            attributeType.setSingleValue( true );
351            attributeType.setCollective( false );
352            attributeType.setObsolete( false );
353            attributeType.setLength( 255 );
354            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
355            attributeType.setEqualityId( "caseIgnoreMatch" );
356            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
357    
358            names.clear();
359            names.add( "sambaProfilePath" );
360            attributeType.setNames( names.toArray( EMPTY ) );
361            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.35", attributeType );
362    
363            // --------------------------------------------------------------------
364            // AttributeType 1.3.6.1.4.1.7165.2.1.36 
365            // --------------------------------------------------------------------
366    
367            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.36", registries );
368            attributeType.setDescription( "List of user workstations the user is allowed to logon to" );
369            attributeType.setCanUserModify( ! false );
370            attributeType.setSingleValue( true );
371            attributeType.setCollective( false );
372            attributeType.setObsolete( false );
373            attributeType.setLength( 255 );
374            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
375            attributeType.setEqualityId( "caseIgnoreMatch" );
376            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
377    
378            names.clear();
379            names.add( "sambaUserWorkstations" );
380            attributeType.setNames( names.toArray( EMPTY ) );
381            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.36", attributeType );
382    
383            // --------------------------------------------------------------------
384            // AttributeType 1.3.6.1.4.1.7165.2.1.37 
385            // --------------------------------------------------------------------
386    
387            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.37", registries );
388            attributeType.setDescription( "Home directory UNC path" );
389            attributeType.setCanUserModify( ! false );
390            attributeType.setSingleValue( false );
391            attributeType.setCollective( false );
392            attributeType.setObsolete( false );
393            attributeType.setLength( 128 );
394            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
395            attributeType.setEqualityId( "caseIgnoreMatch" );
396            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
397    
398            names.clear();
399            names.add( "sambaHomePath" );
400            attributeType.setNames( names.toArray( EMPTY ) );
401            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.37", attributeType );
402    
403            // --------------------------------------------------------------------
404            // AttributeType 1.3.6.1.4.1.7165.2.1.38 
405            // --------------------------------------------------------------------
406    
407            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.38", registries );
408            attributeType.setDescription( "Windows NT domain to which the user belongs" );
409            attributeType.setCanUserModify( ! false );
410            attributeType.setSingleValue( false );
411            attributeType.setCollective( false );
412            attributeType.setObsolete( false );
413            attributeType.setLength( 128 );
414            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
415            attributeType.setEqualityId( "caseIgnoreMatch" );
416            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
417    
418            names.clear();
419            names.add( "sambaDomainName" );
420            attributeType.setNames( names.toArray( EMPTY ) );
421            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.38", attributeType );
422    
423            // --------------------------------------------------------------------
424            // AttributeType 1.3.6.1.4.1.7165.2.1.47 
425            // --------------------------------------------------------------------
426    
427            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.47", registries );
428            attributeType.setCanUserModify( ! false );
429            attributeType.setSingleValue( false );
430            attributeType.setCollective( false );
431            attributeType.setObsolete( false );
432            attributeType.setLength( 1050 );
433            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
434            attributeType.setEqualityId( "caseExactMatch" );
435            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
436    
437            names.clear();
438            names.add( "sambaMungedDial" );
439            attributeType.setNames( names.toArray( EMPTY ) );
440            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.47", attributeType );
441    
442            // --------------------------------------------------------------------
443            // AttributeType 1.3.6.1.4.1.7165.2.1.54 
444            // --------------------------------------------------------------------
445    
446            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.54", registries );
447            attributeType.setDescription( "Concatenated MD4 hashes of the unicode passwords used on this account" );
448            attributeType.setCanUserModify( ! false );
449            attributeType.setSingleValue( false );
450            attributeType.setCollective( false );
451            attributeType.setObsolete( false );
452            attributeType.setLength( 32 );
453            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
454            attributeType.setEqualityId( "caseIgnoreIA5Match" );
455            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
456    
457            names.clear();
458            names.add( "sambaPasswordHistory" );
459            attributeType.setNames( names.toArray( EMPTY ) );
460            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.54", attributeType );
461    
462            // --------------------------------------------------------------------
463            // AttributeType 1.3.6.1.4.1.7165.2.1.20 
464            // --------------------------------------------------------------------
465    
466            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.20", registries );
467            attributeType.setDescription( "Security ID" );
468            attributeType.setCanUserModify( ! false );
469            attributeType.setSingleValue( true );
470            attributeType.setCollective( false );
471            attributeType.setObsolete( false );
472            attributeType.setLength( 64 );
473            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
474            attributeType.setEqualityId( "caseIgnoreIA5Match" );
475            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
476    
477            names.clear();
478            names.add( "sambaSID" );
479            attributeType.setNames( names.toArray( EMPTY ) );
480            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.20", attributeType );
481    
482            // --------------------------------------------------------------------
483            // AttributeType 1.3.6.1.4.1.7165.2.1.23 
484            // --------------------------------------------------------------------
485    
486            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.23", registries );
487            attributeType.setDescription( "Primary Group Security ID" );
488            attributeType.setCanUserModify( ! false );
489            attributeType.setSingleValue( true );
490            attributeType.setCollective( false );
491            attributeType.setObsolete( false );
492            attributeType.setLength( 64 );
493            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
494            attributeType.setEqualityId( "caseIgnoreIA5Match" );
495            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
496    
497            names.clear();
498            names.add( "sambaPrimaryGroupSID" );
499            attributeType.setNames( names.toArray( EMPTY ) );
500            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.23", attributeType );
501    
502            // --------------------------------------------------------------------
503            // AttributeType 1.3.6.1.4.1.7165.2.1.51 
504            // --------------------------------------------------------------------
505    
506            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.51", registries );
507            attributeType.setDescription( "Security ID List" );
508            attributeType.setCanUserModify( ! false );
509            attributeType.setSingleValue( false );
510            attributeType.setCollective( false );
511            attributeType.setObsolete( false );
512            attributeType.setLength( 64 );
513            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
514            attributeType.setEqualityId( "caseIgnoreIA5Match" );
515            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
516    
517            names.clear();
518            names.add( "sambaSIDList" );
519            attributeType.setNames( names.toArray( EMPTY ) );
520            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.51", attributeType );
521    
522            // --------------------------------------------------------------------
523            // AttributeType 1.3.6.1.4.1.7165.2.1.19 
524            // --------------------------------------------------------------------
525    
526            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.19", registries );
527            attributeType.setDescription( "NT Group Type" );
528            attributeType.setCanUserModify( ! false );
529            attributeType.setSingleValue( true );
530            attributeType.setCollective( false );
531            attributeType.setObsolete( false );
532            attributeType.setLength( 0 );
533            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
534            attributeType.setEqualityId( "integerMatch" );
535            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
536    
537            names.clear();
538            names.add( "sambaGroupType" );
539            attributeType.setNames( names.toArray( EMPTY ) );
540            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.19", attributeType );
541    
542            // --------------------------------------------------------------------
543            // AttributeType 1.3.6.1.4.1.7165.2.1.21 
544            // --------------------------------------------------------------------
545    
546            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.21", registries );
547            attributeType.setDescription( "Next NT rid to give our for users" );
548            attributeType.setCanUserModify( ! false );
549            attributeType.setSingleValue( true );
550            attributeType.setCollective( false );
551            attributeType.setObsolete( false );
552            attributeType.setLength( 0 );
553            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
554            attributeType.setEqualityId( "integerMatch" );
555            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
556    
557            names.clear();
558            names.add( "sambaNextUserRid" );
559            attributeType.setNames( names.toArray( EMPTY ) );
560            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.21", attributeType );
561    
562            // --------------------------------------------------------------------
563            // AttributeType 1.3.6.1.4.1.7165.2.1.22 
564            // --------------------------------------------------------------------
565    
566            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.22", registries );
567            attributeType.setDescription( "Next NT rid to give out for groups" );
568            attributeType.setCanUserModify( ! false );
569            attributeType.setSingleValue( true );
570            attributeType.setCollective( false );
571            attributeType.setObsolete( false );
572            attributeType.setLength( 0 );
573            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
574            attributeType.setEqualityId( "integerMatch" );
575            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
576    
577            names.clear();
578            names.add( "sambaNextGroupRid" );
579            attributeType.setNames( names.toArray( EMPTY ) );
580            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.22", attributeType );
581    
582            // --------------------------------------------------------------------
583            // AttributeType 1.3.6.1.4.1.7165.2.1.39 
584            // --------------------------------------------------------------------
585    
586            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.39", registries );
587            attributeType.setDescription( "Next NT rid to give out for anything" );
588            attributeType.setCanUserModify( ! false );
589            attributeType.setSingleValue( true );
590            attributeType.setCollective( false );
591            attributeType.setObsolete( false );
592            attributeType.setLength( 0 );
593            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
594            attributeType.setEqualityId( "integerMatch" );
595            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
596    
597            names.clear();
598            names.add( "sambaNextRid" );
599            attributeType.setNames( names.toArray( EMPTY ) );
600            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.39", attributeType );
601    
602            // --------------------------------------------------------------------
603            // AttributeType 1.3.6.1.4.1.7165.2.1.40 
604            // --------------------------------------------------------------------
605    
606            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.40", registries );
607            attributeType.setDescription( "Base at which the samba RID generation algorithm should operate" );
608            attributeType.setCanUserModify( ! false );
609            attributeType.setSingleValue( true );
610            attributeType.setCollective( false );
611            attributeType.setObsolete( false );
612            attributeType.setLength( 0 );
613            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
614            attributeType.setEqualityId( "integerMatch" );
615            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
616    
617            names.clear();
618            names.add( "sambaAlgorithmicRidBase" );
619            attributeType.setNames( names.toArray( EMPTY ) );
620            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.40", attributeType );
621    
622            // --------------------------------------------------------------------
623            // AttributeType 1.3.6.1.4.1.7165.2.1.41 
624            // --------------------------------------------------------------------
625    
626            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.41", registries );
627            attributeType.setDescription( "Share Name" );
628            attributeType.setCanUserModify( ! false );
629            attributeType.setSingleValue( true );
630            attributeType.setCollective( false );
631            attributeType.setObsolete( false );
632            attributeType.setLength( 0 );
633            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
634            attributeType.setEqualityId( "caseIgnoreMatch" );
635            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
636    
637            names.clear();
638            names.add( "sambaShareName" );
639            attributeType.setNames( names.toArray( EMPTY ) );
640            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.41", attributeType );
641    
642            // --------------------------------------------------------------------
643            // AttributeType 1.3.6.1.4.1.7165.2.1.42 
644            // --------------------------------------------------------------------
645    
646            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.42", registries );
647            attributeType.setDescription( "Option Name" );
648            attributeType.setCanUserModify( ! false );
649            attributeType.setSingleValue( false );
650            attributeType.setCollective( false );
651            attributeType.setObsolete( false );
652            attributeType.setLength( 256 );
653            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
654            attributeType.setEqualityId( "caseIgnoreMatch" );
655            attributeType.setSubstrId( "caseIgnoreSubstringsMatch" );
656            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
657    
658            names.clear();
659            names.add( "sambaOptionName" );
660            attributeType.setNames( names.toArray( EMPTY ) );
661            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.42", attributeType );
662    
663            // --------------------------------------------------------------------
664            // AttributeType 1.3.6.1.4.1.7165.2.1.43 
665            // --------------------------------------------------------------------
666    
667            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.43", registries );
668            attributeType.setDescription( "A boolean option" );
669            attributeType.setCanUserModify( ! false );
670            attributeType.setSingleValue( true );
671            attributeType.setCollective( false );
672            attributeType.setObsolete( false );
673            attributeType.setLength( 0 );
674            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
675            attributeType.setEqualityId( "booleanMatch" );
676            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.7" );
677    
678            names.clear();
679            names.add( "sambaBoolOption" );
680            attributeType.setNames( names.toArray( EMPTY ) );
681            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.43", attributeType );
682    
683            // --------------------------------------------------------------------
684            // AttributeType 1.3.6.1.4.1.7165.2.1.44 
685            // --------------------------------------------------------------------
686    
687            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.44", registries );
688            attributeType.setDescription( "An integer option" );
689            attributeType.setCanUserModify( ! false );
690            attributeType.setSingleValue( true );
691            attributeType.setCollective( false );
692            attributeType.setObsolete( false );
693            attributeType.setLength( 0 );
694            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
695            attributeType.setEqualityId( "integerMatch" );
696            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
697    
698            names.clear();
699            names.add( "sambaIntegerOption" );
700            attributeType.setNames( names.toArray( EMPTY ) );
701            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.44", attributeType );
702    
703            // --------------------------------------------------------------------
704            // AttributeType 1.3.6.1.4.1.7165.2.1.45 
705            // --------------------------------------------------------------------
706    
707            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.45", registries );
708            attributeType.setDescription( "A string option" );
709            attributeType.setCanUserModify( ! false );
710            attributeType.setSingleValue( true );
711            attributeType.setCollective( false );
712            attributeType.setObsolete( false );
713            attributeType.setLength( 0 );
714            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
715            attributeType.setEqualityId( "caseExactIA5Match" );
716            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
717    
718            names.clear();
719            names.add( "sambaStringOption" );
720            attributeType.setNames( names.toArray( EMPTY ) );
721            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.45", attributeType );
722    
723            // --------------------------------------------------------------------
724            // AttributeType 1.3.6.1.4.1.7165.2.1.46 
725            // --------------------------------------------------------------------
726    
727            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.46", registries );
728            attributeType.setDescription( "A string list option" );
729            attributeType.setCanUserModify( ! false );
730            attributeType.setSingleValue( false );
731            attributeType.setCollective( false );
732            attributeType.setObsolete( false );
733            attributeType.setLength( 0 );
734            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
735            attributeType.setEqualityId( "caseIgnoreMatch" );
736            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.15" );
737    
738            names.clear();
739            names.add( "sambaStringListOption" );
740            attributeType.setNames( names.toArray( EMPTY ) );
741            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.46", attributeType );
742    
743            // --------------------------------------------------------------------
744            // AttributeType 1.3.6.1.4.1.7165.2.1.50 
745            // --------------------------------------------------------------------
746    
747            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.50", registries );
748            attributeType.setCanUserModify( ! false );
749            attributeType.setSingleValue( false );
750            attributeType.setCollective( false );
751            attributeType.setObsolete( false );
752            attributeType.setLength( 0 );
753            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
754            attributeType.setSuperiorId( "name" );
755    
756            names.clear();
757            names.add( "sambaPrivName" );
758            attributeType.setNames( names.toArray( EMPTY ) );
759            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.50", attributeType );
760    
761            // --------------------------------------------------------------------
762            // AttributeType 1.3.6.1.4.1.7165.2.1.52 
763            // --------------------------------------------------------------------
764    
765            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.52", registries );
766            attributeType.setDescription( "Privileges List" );
767            attributeType.setCanUserModify( ! false );
768            attributeType.setSingleValue( false );
769            attributeType.setCollective( false );
770            attributeType.setObsolete( false );
771            attributeType.setLength( 64 );
772            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
773            attributeType.setEqualityId( "caseIgnoreIA5Match" );
774            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
775    
776            names.clear();
777            names.add( "sambaPrivilegeList" );
778            attributeType.setNames( names.toArray( EMPTY ) );
779            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.52", attributeType );
780    
781            // --------------------------------------------------------------------
782            // AttributeType 1.3.6.1.4.1.7165.2.1.53 
783            // --------------------------------------------------------------------
784    
785            attributeType = newAttributeType( "1.3.6.1.4.1.7165.2.1.53", registries );
786            attributeType.setDescription( "Trust Password Flags" );
787            attributeType.setCanUserModify( ! false );
788            attributeType.setSingleValue( false );
789            attributeType.setCollective( false );
790            attributeType.setObsolete( false );
791            attributeType.setLength( 0 );
792            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
793            attributeType.setEqualityId( "caseIgnoreIA5Match" );
794            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
795    
796            names.clear();
797            names.add( "sambaTrustFlags" );
798            attributeType.setNames( names.toArray( EMPTY ) );
799            cb.schemaObjectProduced( this, "1.3.6.1.4.1.7165.2.1.53", attributeType );
800        }
801    }