Sign In
Upload
Manuals
Brands
Netscape Manuals
Server
NETSCAPE DIRECTORY SERVER 7.0 - PLUG-IN
Netscape NETSCAPE DIRECTORY SERVER 7.0 - PLUG-IN Manuals
Manuals and User Guides for Netscape NETSCAPE DIRECTORY SERVER 7.0 - PLUG-IN. We have
1
Netscape NETSCAPE DIRECTORY SERVER 7.0 - PLUG-IN manual available for free PDF download: Manual
Netscape NETSCAPE DIRECTORY SERVER 7.0 - PLUG-IN Manual (634 pages)
for Plug-in
Brand:
Netscape
| Category:
Server
| Size: 4.82 MB
Table of Contents
Table of Contents
3
Preface
21
Using Directory Server Plug-In Apis
21
What You Should Already Know
21
Document Conventions
23
Where to Find Directory Server Information
24
Part 1 Introduction to Directory Server Plug-Ins
27
Chapter 1 An Overview of Directory Server Plug-Ins
29
What Are Directory Server Plug-Ins
29
How Directory Server Plug-Ins Work
30
Calling Directory Server Plug-In Functions
31
The Directory Server Architecture
31
Types of Directory Server Plug-Ins
34
Chapter 2 Writing and Compiling Plug-Ins
37
Writing a Plug-In Function
37
Including the API Header File
38
Passing Data with Parameter Blocks
38
Working with Parameter Blocks
39
Getting Data from the Parameter Block
39
Setting Data in the Parameter Block
40
Calling Front-End Functions
41
Plug-In Return Values
41
Writing Plug-In Initialization Functions
42
Initialization Functions for Windows Platforms
42
Specifying Directory Server Compatibility
43
Specifying Information about the Plug-In
43
Registering Your Plug-In Functions
44
Returning a Value to the Directory Server
45
Example of an Initialization Function
45
Compiling a Directory Server Plug-In
46
Chapter 3 Configuring Plug-Ins
49
Creating a Plug-In Configuration File
49
Plug-In Dependencies
51
Specific Plug-In Dependencies
51
Plug-In Type Dependencies
52
Specifying the Order of Plug-In Directives
52
Summary of Plug-In Directives
53
Loading the Plug-In Configuration File
54
Passing Extra Arguments to Plug-Ins
55
Setting the Log Level of the Server
56
Chapter 4 A Quick Example
57
An Example Pre-Operation Plug-In
57
Writing the Plug-In Example
58
Compiling the Plug-In Example
61
Registering the Plug-In Example
62
Running the Plug-In Example
63
Part 2 Basic Plug-In Programming Techniques
65
Chapter 5 Front-End API Functions
67
Logging Messages
67
Adding Notes to Access Log Entries
68
Sending Data to the Client
68
Determining if an Operation was Abandoned
69
Working with Entries, Attributes, and Values
69
Creating a New Entry
70
Converting between Entries and Strings
71
Getting and Setting the DN of an Entry
72
Verifying Compliance with the Schema
72
Getting the Attributes and Values of an Entry
72
Iterating through the Attributes in an Entry
73
Finding a Specific Attribute in an Entry
73
Adding and Removing Values
73
Working with Dns and Rdns
73
Determining if a DN Is the Root DN
74
Working with DN Suffixes
74
Server Suffixes
75
Getting the Parent DN of a DN
75
Normalizing a DN
75
Working with Search Filters
76
Determining if an Entry Matches a Filter
77
Getting the Filter Type
77
Getting the Search Criteria
78
Converting a String to a Filter
78
Creating Complex Filters by Combining Filters
79
Checking Passwords
79
Chapter 6 Writing Pre/Post-Operation Plug-Ins
81
How Pre/Post-Operation Plug-Ins Work
81
Types of Pre-Operation and Post-Operation Functions
83
Types of Pre-Operation Functions
83
Types of Post-Operation Functions
84
Registering Pre/Post-Operation Functions
86
Chapter 7 Defining Functions for LDAP Operations
87
Specifying Start and Close Functions
88
Processing an LDAP Bind Operation
88
Defining Functions for the Bind Operation
88
Getting and Setting Parameters for the Bind Operation
89
Processing an LDAP Unbind Operation
89
Processing an LDAP Search Operation
90
Getting the List of Candidates
91
Iterating through Candidates
92
Processing an LDAP Compare Operation
94
Processing an LDAP Add Operation
94
Processing an LDAP Modify Operation
96
Processing an LDAP Modify RDN Operation
97
Processing an LDAP Delete Operation
99
Processing an LDAP Abandon Operation
99
Chapter 8 Defining Functions for Authentication
101
Understanding Authentication Methods
101
How the Directory Server Identifies Clients
102
How the Authentication Process Works
102
Writing Your Own Authentication Plug-In
105
Writing a Pre-Operation Bind Plug-In
105
Defining Your Authentication Function
107
Getting and Checking the Bind Parameters
107
Getting the Entry and Checking the Credentials
108
What to Do if Authentication Fails
109
What to Do if Authentication Succeeds
109
Registering the SASL Mechanism
110
Example of a Pre-Operation Bind Plug-In
111
Example of a Pre-Operation Bind Function
111
Example of an Initialization Function
114
Registering the Plug-In
115
Using SASL with an LDAP Client
116
Part 3 Advanced Programming Techniques
121
Chapter 9 Writing Entry Store/Fetch Plug-Ins
123
How Entry Store/Fetch Plug-Ins Work
123
Writing Entry Store/Fetch Functions
124
Registering Entry Store/Fetch Functions
125
Chapter 10 Writing Extended Operation Plug-Ins
127
How Extended Operation Plug-Ins Work
127
Writing Extended Operation Functions
128
Registering Extended Operation Functions
129
Specifying Start and Close Functions
131
Chapter 11 Writing Matching Rule Plug-Ins
133
Understanding Matching Rules
133
Extensible Match Filters
134
Extensible Match Filters in the Directory Server
135
Understanding Matching Rule Plug-Ins
135
Functions Defined in Matching Rule Plug-Ins
135
How Matching Rules Are Identified
136
How the Server Associates Plug-Ins with Oids
137
Finding a Plug-In for Indexing
137
Finding a Plug-In for Searching
138
How the Server Uses Parameter Blocks
139
Indexing Based on Matching Rules
139
How the Server Sets up the Index
139
How the Server Updates the Index
140
Writing the Indexer Factory Function
141
Getting and Setting Parameters in Indexer Factory Functions
142
Writing the Indexer Function
143
Getting and Setting Parameters in Indexer Functions
144
Handling Extensible Match Filters
144
How the Server Handles the Filter
145
Query Operators in Matching Rules
146
Writing a Filter Factory Function
147
Getting and Setting Parameters in Filter Factory Functions
148
Writing a Filter Index Function
149
Getting and Setting Parameters in Filter Index Functions
150
Writing a Filter Matching Function
151
Handling Sorting by Matching Rules
152
Writing a Destructor Function
153
Writing an Initialization Function
153
Registering Matching Rule Functions
155
Specifying Start and Close Functions
156
Chapter 12 Using the Custom Distribution Logic
157
About Distributing Flat Namespaces
157
Creating a Distribution Function
158
Adding the Distribution Function to Your Directory
160
Adding Multiple Databases to a Single Suffix
161
Using the Console
161
From the Command-Line
161
Adding Distribution Logic to a Suffix
162
Using the Console
162
From the Command-Line
162
Using the Distribution Logic Examples
163
Custom Distribution Checklist
164
Chapter 13 Using Data Interoperability Plug-Ins
165
Installing Directory Server
166
Understanding Deployment Configuration
166
Installing Two Instances of Directory Server
170
Enabling the DIOP Feature in Directory Server
171
Using the DIOP Feature
172
Sample DIOP Plug-In
174
Debugging the Plug-In
176
Plug-In API Reference
177
Preserving the Default Behavior of the Server
177
Bypassing Access Control Checks
177
Part 4 Reference
179
Chapter 14 Data Type and Structure Reference
181
Summary of Data Types and Structures
181
Berval
183
Computed_Attr_Context
184
Ldapcontrol
184
Ldapmod
186
Mrfiltermatchfn
189
Plugin_Referral_Entry_Callback
190
Plugin_Result_Callback
191
Plugin_Search_Entry_Callback
192
Send_Ldap_Referral_Fn_Ptr_T
192
Send_Ldap_Result_Fn_Ptr_T
194
Send_Ldap_Search_Entry_Fn_Ptr_T
195
Slapi_Attr
196
Slapi_Backend
197
Slapi_Backend_State_Change_Fnptr
199
Slapi_Componentid
200
Slapi_Compute_Callback_T
200
Slapi_Compute_Output_T
201
Slapi_Connection
203
Slapi_Condvar
203
Slapi_Dn
204
Slapi_Entry
205
Slapi_Filter
208
Slapi_Matchingruleentry
209
Slapi_Mod
210
Slapi_Mods
212
Slapi_Mutex
214
Slapi_Operation
215
Slapi_Pblock
215
Slapi_Plugindesc
217
Slapi_Rdn
218
Slapi_Uniqueid
220
Slapi_Value
221
Slapi_Valueset
223
See also
224
Chapter 15 Function Reference
225
Distribution Routines
226
Distribution_Plugin_Entry_Point()
227
Functions for Access Control
228
Slapi_Access_Allowed()
228
Slapi_Acl_Check_Mods()
231
Slapi_Acl_Verify_Aci_Syntax()
233
Functions for Internal Operations and Plug-In Callback
234
Slapi_Add_Internal_Pb()
234
Slapi_Delete_Internal_Pb()
235
Slapi_Free_Search_Results_Internal()
236
Slapi_Modify_Internal_Pb()
237
Slapi_Modrdn_Internal_Pb()
237
Slapi_Search_Internal_Callback_Pb()
238
Slapi_Search_Internal_Get_Entry()
240
Slapi_Search_Internal_Pb()
241
Functions for Setting Internal Operation Flags
242
Slapi_Add_Entry_Internal_Set_Pb()
243
Slapi_Add_Internal_Set_Pb()
244
Slapi_Delete_Internal_Set_Pb()
245
Slapi_Modify_Internal_Set_Pb()
246
Slapi_Rename_Internal_Set_Pb()
248
Slapi_Search_Internal_Set_Pb()
249
Slapi_Seq_Internal_Callback_Pb()
251
Slapi_Seq_Internal_Set_Pb()
252
Functions for Handling Attributes
253
Slapi_Attr_Add_Value()
254
Slapi_Attr_Basetype()
254
Slapi_Attr_Dup()
255
Slapi_Attr_First_Value()
256
Slapi_Attr_Flag_Is_Set()
257
Slapi_Attr_Free()
258
Slapi_Attr_Get_Bervals_Copy()
258
Slapi_Attr_Get_Flags()
259
Slapi_Attr_Get_Numvalues()
260
Slapi_Attr_Get_Oid_Copy()
261
Slapi_Attr_Get_Type()
262
Slapi_Attr_Get_Valueset()
262
Slapi_Attr_Init()
263
Slapi_Attr_New()
264
Slapi_Attr_Next_Value()
265
Slapi_Attr_Set_Valueset()
265
Slapi_Attr_Syntax_Normalize()
266
Slapi_Attr_Type2Plugin()
267
Slapi_Attr_Type_Cmp()
268
Slapi_Attr_Types_Equivalent()
269
Slapi_Attr_Value_Cmp()
269
Slapi_Attr_Value_Find()
270
Slapi_Valueset_Set_From_Smod()
271
Functions for Managing Backend Operations
272
Slapi_Be_Addsuffix()
273
Slapi_Be_Delete_Onexit()
274
Slapi_Be_Exist()
274
Slapi_Be_Free()
275
Slapi_Be_Get_Instance_Info()
275
Slapi_Be_Get_Name()
275
Slapi_Be_Get_Readonly()
276
Slapi_Be_Getentrypoint()
276
Slapi_Be_Getsuffix()
277
Slapi_Be_Gettype()
278
Slapi_Be_Is_Flag_Set()
278
Slapi_Be_Issuffix()
279
Slapi_Be_Logchanges()
280
Slapi_Be_New()
280
Slapi_Be_Private()
281
Slapi_Be_Select()
281
Slapi_Be_Select_By_Instance_Name()
282
Slapi_Be_Set_Flag()
283
Slapi_Be_Set_Instance_Info()
283
Slapi_Be_Set_Readonly()
283
Slapi_Be_Setentrypoint()
284
Slapi_Get_First_Backend()
284
Slapi_Get_First_Suffix()
286
Slapi_Get_Next_Backend()
286
Slapi_Get_Next_Suffix()
288
Slapi_Is_Root_Suffix()
289
Slapi_Register_Backend_State_Change()
289
Slapi_Unregister_Backend_State_Change()
290
Functions for Dealing with Controls
291
Slapi_Build_Control()
291
Slapi_Build_Control_From_Berval()
292
Slapi_Control_Present()
293
Slapi_Dup_Control()
294
Slapi_Get_Supported_Controls_Copy()
295
Slapi_Register_Supported_Control()
296
Functions for Syntax Plug-In
298
Slapi_Call_Syntax_Assertion2Keys_Ava_Sv()
298
Slapi_Call_Syntax_Assertion2Keys_Sub_Sv()
299
Slapi_Call_Syntax_Values2Keys_Sv()
301
Functions for Managing Memory
301
Slapi_Ch_Array_Free()
302
Slapi_Ch_Bvdup()
302
Slapi_Ch_Bvecdup()
303
Slapi_Ch_Calloc()
304
Slapi_Ch_Free()
305
Slapi_Ch_Free_String()
305
Slapi_Ch_Malloc()
306
Slapi_Ch_Realloc()
307
Slapi_Ch_Strdup()
308
Functions for Managing Dns
308
Slapi_Dn_Beparent()
309
Slapi_Dn_Ignore_Case()
310
Slapi_Dn_Isbesuffix()
310
Slapi_Dn_Isparent()
311
Slapi_Dn_Isroot()
312
Slapi_Dn_Issuffix()
313
Slapi_Dn_Normalize()
313
Slapi_Dn_Normalize_Case()
314
Slapi_Dn_Normalize_To_End()
315
Slapi_Dn_Parent()
315
Slapi_Dn_Plus_Rdn()
316
Slapi_Rdn2Typeval()
317
Functions for Managing Entries
317
Slapi_Entry2Str()
319
Slapi_Entry2Str_With_Options()
320
Slapi_Entry_Add_Rdn_Values()
322
Slapi_Entry_Add_String()
323
Slapi_Entry_Add_Value()
324
Slapi_Entry_Add_Values_Sv()
324
Slapi_Entry_Add_Valueset()
325
Slapi_Entry_Alloc()
326
Slapi_Entry_Attr_Delete()
327
Slapi_Entry_Attr_Find()
327
Slapi_Entry_Attr_Get_Charptr()
328
Slapi_Entry_Attr_Get_Charray()
329
Slapi_Entry_Attr_Get_Int()
330
Slapi_Entry_Attr_Get_Long()
331
Slapi_Entry_Attr_Get_Uint()
331
Slapi_Entry_Attr_Get_Ulong()
332
Slapi_Entry_Attr_Has_Syntax_Value()
333
Slapi_Entry_Attr_Merge_Sv()
333
Slapi_Entry_Attr_Replace_Sv()
334
Slapi_Entry_Attr_Set_Charptr()
335
Slapi_Entry_Attr_Set_Int()
336
Slapi_Entry_Attr_Set_Long()
336
Slapi_Entry_Attr_Set_Uint()
337
Slapi_Entry_Attr_Set_Ulong()
337
Slapi_Entry_Delete_String()
338
Slapi_Entry_Delete_Values_Sv()
338
Slapi_Entry_Dup()
340
Slapi_Entry_First_Attr()
340
Slapi_Entry_Free()
341
Slapi_Entry_Get_Dn()
342
Slapi_Entry_Get_Dn_Const()
342
Slapi_Entry_Get_Ndn()
343
Slapi_Entry_Get_Sdn()
344
Slapi_Entry_Get_Sdn_Const()
344
Slapi_Entry_Get_Uniqueid()
345
Slapi_Entry_Has_Children()
345
Slapi_Entry_Init()
346
Slapi_Entry_Merge_Values_Sv()
347
Slapi_Entry_Next_Attr()
348
Slapi_Entry_Rdn_Values_Present()
349
Slapi_Entry_Schema_Check()
350
Slapi_Entry_Set_Dn()
351
Slapi_Entry_Set_Sdn()
351
Slapi_Entry_Set_Uniqueid()
352
Slapi_Entry_Size()
353
Slapi_Is_Rootdse()
354
Slapi_Str2Entry()
354
Functions Related to Entry Flags
356
Slapi_Entry_Clear_Flag()
356
Slapi_Entry_Flag_Is_Set()
357
Slapi_Entry_Set_Flag()
358
Functions for Dealing with Filters
358
Slapi_Filter_Apply()
359
Slapi_Filter_Compare()
360
Slapi_Filter_Dup()
361
Slapi_Filter_Free()
361
Slapi_Filter_Get_Attribute_Type()
362
Slapi_Filter_Get_Ava()
363
Slapi_Filter_Get_Choice()
364
Slapi_Filter_Get_Subfilt()
366
Slapi_Filter_Get_Type()
367
Slapi_Filter_Join()
368
Slapi_Filter_Join_Ex()
369
Slapi_Filter_List_First()
370
Slapi_Filter_List_Next()
371
Slapi_Filter_Test()
372
Slapi_Filter_Test_Ext()
373
Slapi_Filter_Test_Simple()
374
Slapi_Find_Matching_Paren()
375
Slapi_Str2Filter()
375
Slapi_Vattr_Filter_Test()
376
Functions Specific to Extended Operation
377
Slapi_Get_Supported_Extended_Ops_Copy()
377
Functions Specific to Bind Methods
378
Slapi_Get_Supported_Saslmechanisms_Copy()
378
Slapi_Register_Supported_Saslmechanism()
379
Functions for Thread-Safe LDAP Connections
379
Slapi_Ldap_Init()
379
Slapi_Ldap_Unbind()
381
Functions for Logging
382
Slapi_Log_Error()
382
Slapi_Is_Loglevel_Set()
384
Functions for Handling Matching Rules
385
Slapi_Berval_Cmp()
385
Slapi_Matchingrule_Free()
386
Slapi_Matchingrule_Get()
387
Slapi_Matchingrule_New()
388
Slapi_Matchingrule_Register()
388
Slapi_Matchingrule_Set()
389
Slapi_Matchingrule_Unregister()
390
Slapi_Mr_Filter_Index()
390
Slapi_Mr_Indexer_Create()
391
Functions for Ldapmod Manipulation
393
Slapi_Entry2Mods()
395
Slapi_Mod_Add_Value()
396
Slapi_Mod_Done()
396
Slapi_Mod_Dump()
397
Slapi_Mod_Free()
398
Slapi_Mod_Get_First_Value()
398
Slapi_Mod_Get_Ldapmod_Byref()
399
Slapi_Mod_Get_Ldapmod_Passout()
399
Slapi_Mod_Get_Next_Value()
400
Slapi_Mod_Get_Num_Values()
401
Slapi_Mod_Get_Operation()
401
Slapi_Mod_Get_Type()
402
Slapi_Mod_Init()
402
Slapi_Mod_Init_Byref()
403
Slapi_Mod_Init_Byval()
404
Slapi_Mod_Init_Passin()
404
Slapi_Mod_Isvalid()
405
Slapi_Mod_New()
406
Slapi_Mod_Remove_Value()
406
Slapi_Mod_Set_Operation()
407
Slapi_Mod_Set_Type()
407
Slapi_Mods2Entry()
408
Slapi_Mods_Add()
409
Slapi_Mods_Add_Ldapmod()
410
Slapi_Mods_Add_Mod_Values()
410
Slapi_Mods_Add_Smod()
411
Slapi_Mods_Add_Modbvps()
412
Slapi_Mods_Add_String()
413
Slapi_Mods_Done()
414
Slapi_Mods_Dump()
415
Slapi_Mods_Free()
415
Slapi_Mods_Get_First_Mod()
416
Slapi_Mods_Get_First_Smod()
417
Slapi_Mods_Get_Ldapmods_Byref()
417
Slapi_Mods_Get_Ldapmods_Passout()
418
Slapi_Mods_Get_Next_Mod()
419
Slapi_Mods_Get_Next_Smod()
420
Slapi_Mods_Get_Num_Mods()
420
Slapi_Mods_Init()
421
Slapi_Mods_Init_Byref()
422
Slapi_Mods_Init_Passin()
422
Slapi_Mods_Insert_After()
423
Slapi_Mods_Insert_At()
424
Slapi_Mods_Insert_Before()
425
Slapi_Mods_Insert_Smod_At()
425
Slapi_Mods_Insert_Smod_Before()
426
Slapi_Mods_Iterator_Backbone()
427
Slapi_Mods_New()
428
Slapi_Mods_Remove()
428
Functions for Monitoring Operations
429
Slapi_Op_Abandoned()
429
Slapi_Op_Get_Type()
430
Functions for Managing Parameter Block
431
Slapi_Pblock_Destroy()
431
Slapi_Pblock_Get()
432
Slapi_Pblock_New()
434
Slapi_Pblock_Set()
434
Functions for Handling Passwords
436
Slapi_Pw_Find_Sv()
436
Slapi_Is_Encoded()
437
Slapi_Encode()
438
Functions for Managing RDN
439
Slapi_Rdn_Add()
440
Slapi_Rdn_Compare()
441
Slapi_Rdn_Contains()
442
Slapi_Rdn_Contains_Attr()
443
Slapi_Rdn_Done()
443
Slapi_Rdn_Free()
444
Slapi_Rdn_Get_First()
445
Slapi_Rdn_Get_Index()
445
Slapi_Rdn_Get_Index_Attr()
446
Slapi_Rdn_Get_Next()
447
Slapi_Rdn_Get_Num_Components()
448
Slapi_Rdn_Get_Rdn()
449
Slapi_Rdn_Get_Nrdn()
449
Slapi_Rdn_Init()
450
Slapi_Rdn_Init_Dn()
450
Slapi_Rdn_Init_Rdn()
451
Slapi_Rdn_Init_Sdn()
452
Slapi_Rdn_Isempty()
452
Slapi_Rdn_New()
453
Slapi_Rdn_New_Dn()
453
Slapi_Rdn_New_Rdn()
454
Slapi_Rdn_New_Sdn()
455
Slapi_Rdn_Remove()
456
Slapi_Rdn_Remove_Attr()
457
Slapi_Rdn_Remove_Index()
457
Slapi_Rdn_Set_Dn()
458
Slapi_Rdn_Set_Rdn()
459
Slapi_Rdn_Set_Sdn()
459
Functions for Managing Roles
460
Slapi_Role_Check()
460
Slapi_Register_Role_Check()
461
Functions for Managing Dns
461
Slapi_Moddn_Get_Newdn()
463
Slapi_Sdn_Add_Rdn()
464
Slapi_Sdn_Compare()
464
Slapi_Sdn_Copy()
465
Slapi_Sdn_Done()
465
Slapi_Sdn_Dup()
466
Slapi_Sdn_Free()
467
Slapi_Sdn_Get_Backend_Parent()
467
Slapi_Sdn_Get_Dn()
468
Slapi_Sdn_Get_Ndn()
469
Slapi_Sdn_Get_Ndn_Len()
469
Slapi_Sdn_Get_Parent()
470
Slapi_Sdn_Get_Rdn()
470
Slapi_Sdn_Is_Rdn_Component()
471
Slapi_Sdn_Isempty()
472
Slapi_Sdn_Isgrandparent()
473
Slapi_Sdn_Isparent()
473
Slapi_Sdn_Issuffix()
474
Slapi_Sdn_New()
475
Slapi_Sdn_New_Dn_Byref()
475
Slapi_Sdn_New_Dn_Byval()
476
Slapi_Sdn_New_Dn_Passin()
477
Slapi_Sdn_New_Ndn_Byref()
478
Slapi_Sdn_New_Ndn_Byval()
479
Slapi_Sdn_Scope_Test()
479
Slapi_Sdn_Set_Dn_Byref()
480
Slapi_Sdn_Set_Dn_Byval()
481
Slapi_Sdn_Set_Dn_Passin()
482
Slapi_Sdn_Set_Ndn_Byref()
483
Slapi_Sdn_Set_Ndn_Byval()
483
Slapi_Sdn_Set_Parent()
484
Slapi_Sdn_Set_Rdn()
485
Functions for Sending Entries and Results to the Client
486
Slapi_Send_Ldap_Referral()
486
Slapi_Send_Ldap_Result()
488
Slapi_Send_Ldap_Search_Entry()
489
Functions Related to UTF-8
491
Slapi_Has8Thbit()
492
Slapi_Utf8Casecmp()
492
Slapi_Utf8Casecmp()
493
Slapi_Utf8Ncasecmp()
495
Slapi_Utf8Islower()
497
Slapi_Utf8Isupper()
498
Slapi_Utf8Strtolower()
499
Slapi_Utf8Strtolower()
500
Slapi_Utf8Strtoupper()
500
Slapi_Utf8Strtoupper()
501
Slapi_Utf8Tolower()
502
Slapi_Utf8Toupper()
503
Functions for Handling Values
504
Slapi_Value_Compare
505
Slapi_Value_Dup()
506
Slapi_Value_Free()
507
Slapi_Value_Get_Berval()
507
Slapi_Value_Get_Int()
508
Slapi_Value_Get_Length()
508
Slapi_Value_Get_Long()
509
Slapi_Value_Get_String()
510
Slapi_Value_Get_Uint()
511
Slapi_Value_Get_Ulong()
511
Slapi_Value_Init()
512
Slapi_Value_Init_Berval()
513
Slapi_Value_Init_String()
513
Slapi_Value_Init_String_Passin()
514
Slapi_Value_New()
515
Slapi_Value_New_Berval()
515
Slapi_Value_New_String()
516
Slapi_Value_New_String_Passin()
517
Slapi_Value_New_Value()
518
Slapi_Value_Set()
519
Slapi_Value_Set_Berval()
520
Slapi_Value_Set_Int()
521
Slapi_Value_Set_String()
522
Slapi_Value_Set_String_Passin()
522
Slapi_Value_Set_Value
523
Functions for Handling Valueset
524
Slapi_Valueset_Add_Value()
525
Slapi_Valueset_Add_Value_Ext()
526
Slapi_Valueset_Count()
527
Slapi_Valueset_Done()
527
Slapi_Valueset_Find()
528
Slapi_Valueset_First_Value()
528
Slapi_Valueset_Free()
529
Slapi_Valueset_Init()
530
Slapi_Valueset_New()
531
Slapi_Valueset_Next_Value()
531
Slapi_Valueset_Set_From_Smod()
532
Slapi_Valueset_Set_Valueset()
533
Functions Specific to Virtual Attribute Service
534
Slapi_Vattr_List_Attrs()
534
Slapi_Vattr_Attrs_Free()
535
Slapi_Vattr_Schema_Check_Type()
536
Slapi_Vattr_Value_Compare()
537
Slapi_Vattr_Values_Free()
537
Slapi_Vattr_Values_Get()
538
Slapi_Vattr_Values_Get_Ex()
539
Slapi_Vattr_Values_Type_Thang_Get()
541
Functions for Managing Locks and Synchronization
542
Slapi_Destroy_Condvar()
543
Slapi_Destroy_Mutex()
543
Slapi_Lock_Mutex()
544
Slapi_New_Condvar()
544
Slapi_New_Mutex()
545
Slapi_Notify_Condvar()
545
Slapi_Unlock_Mutex()
546
Slapi_Wait_Condvar()
547
Functions for Managing Computed Attributes
548
Slapi_Compute_Add_Evaluator()
548
Slapi_Compute_Add_Search_Rewriter()
549
Compute_Rewrite_Search_Filter()
550
Functions for Manipulating Bits
550
Slapi_Isbitset_Int()
551
Slapi_Isbitset_Uchar()
552
Slapi_Setbit_Int()
552
Slapi_Setbit_Uchar()
553
Slapi_Unsetbit_Int()
553
Slapi_Unsetbit_Uchar()
554
Functions for Registering Object Extensions
555
Slapi_Get_Object_Extension()
555
Slapi_Register_Object_Extension()
556
Slapi_Set_Object_Extension()
557
Functions Related to Data Interoperability
558
Slapi_Op_Reserved()
558
Slapi_Operation_Set_Flag
560
Slapi_Operation_Clear_Flag()
560
Slapi_Is_Flag_Set()
561
Functions for Registering Additional Plug-Ins
562
Slapi_Register_Plugin()
562
Chapter 16 Parameter Block Reference
565
Parameters for Registering Plug-In Functions
566
Pre-Operation/Data Validation Plug-Ins
566
Post-Operation/Data Notification Plug-Ins
568
Matching Rule Plug-Ins
569
Entry Plug-Ins
570
Parameters Accessible to All Plug-Ins
570
Information about the Database
571
Information about the Connection
573
Information about the Operation
575
Information about Extended Operations
576
Information about the Transaction
576
Information about Access Control Lists
577
Notes in the Access Log
577
Information about the Plug-In
578
Types of Plug-Ins
578
Version Information
579
Information about Command-Line Arguments
580
Information about Attributes
580
Attribute Names
580
Attribute Flags
581
Attribute Comparisons
581
Information about Targets
582
Parameters for the Bind Function
582
Parameters for the Search Function
583
Parameters Passed to the Search Function
583
Parameters for Executing the Search
584
Parameters for the Search Results
585
Parameters that Return Data Types
585
Parameters that Convert Strings to Entries
586
Parameters for the Add Function
587
Parameters for the Compare Function
588
Parameters for the Delete Function
588
Parameters for the Modify Function
589
Parameters for the Modify RDN Function
589
Parameters for the Abandon Function
590
Parameters for the Matching Rule Function
591
Query Operators in Extensible Match Filters
592
Parameters for LDBM Backend Pre- and Post-Operation Functions
593
Pre-Operation Plug-Ins
593
Post-Operation Plug-Ins
594
Parameters for the Database
594
Information about the Database
594
Information about Operations
595
Information about Backend State Change
596
Parameters for LDAP Functions
596
Parameters for LDAP Operations
596
Parameters for LDAP Control
597
Parameters for Generating LDIF Strings
598
Parameters for Error Logging
599
Parameters for Filters
600
Parameters for Comparison Filters
601
Parameters for Filter Operations
601
Parameters for Password Storage
602
Password Storage Plug-Ins
602
Parameters for Resource Limits
603
Parameter for Binder-Based Resource Limits
603
Status Codes for Resource Limits
603
Parameters for the Virtual Attribute Service
603
Glossary
607
Index
623
Advertisement
Advertisement
Related Products
Netscape NETSCAPE DIRECTORY SERVER 7.0 - DEPLOYMENT
Netscape NETSCAPE DIRECTORY SERVER 6.01 - ADMINISTRATOR
Netscape NETSCAPE DIRECTORY SERVER 6.01 - PLUG-IN
Netscape NETSCAPE DIRECTORY SERVER 6.02 - ADMINISTRATOR
Netscape NETSCAPE DIRECTORY SERVER 6.1 - ADMINISTRATOR
Netscape NETSCAPE DIRECTORY SERVER 6.2 - DEPLOYMENT
Netscape NETSCAPE DIRECTORY SERVER 6.1 - PLUG-IN
Netscape NETSCAPE DIRECTORY SERVER 6.2 - ADMINISTRATOR
Netscape NETSCAPE DIRECTORY SERVER 6.2 - PLUG-IN
Netscape NETSCAPE DIRECTORY SERVER 6.0
Netscape Categories
Server
Software
Gateway
More Netscape Manuals
Login
Sign In
OR
Sign in with Facebook
Sign in with Google
Upload manual
Upload from disk
Upload from URL