Commit Graph

228 Commits

Author SHA1 Message Date
Howard Chu
1762b5b71d Overlay build environment, remove internal proxycache support 2003-12-06 11:04:39 +00:00
Jong Hyuk Choi
da38356d16 fix prev commit 2003-12-01 18:09:48 +00:00
Jong Hyuk Choi
2bb75d5469 misc cleanup 2003-12-01 17:56:36 +00:00
Kurt Zeilenga
4e15a84452 Updated notices 2003-11-27 01:17:14 +00:00
Jong Hyuk Choi
1fdda703e6 Support multiple sync replication at the consumer :
1) simultaneous operation of multiple active sync replication threads
2) cookie management for individual sync replication thread
   (include rid=%3d to the slapd cookie command line option (-c))
2003-11-26 19:49:47 +00:00
Howard Chu
01f7a7466b SLAPI fix - no-op when slapi_plugins_used == 0 2003-10-24 05:58:42 +00:00
Kurt Zeilenga
ce4b199485 Syncrepl code cleanup (namely prefix struct field names) 2003-10-22 05:19:30 +00:00
Howard Chu
93248cee58 Tweak normalization in slap_entry2mods 2003-09-20 03:25:05 +00:00
Jong Hyuk Choi
c83f1812ef fix in slap_entry2mods() 2003-09-13 00:36:14 +00:00
Jong Hyuk Choi
090ac0a772 unifdef LDAP_SYNC and LDAP_SYNCREPL 2003-08-27 22:16:04 +00:00
Jong Hyuk Choi
3be0b77c88 Context CSN Patch (2)
- BDB context csn codes moved to a separate function in back-bdb/ctxcsn.c
2003-08-25 19:15:04 +00:00
Jong Hyuk Choi
660617ae66 Context CSN patch (1)
- currenty works for refreshOnly mode of LDAP Sync
- Context CSN for add / modify is implemented
- code for delete / modrdn / refreshAndPersist will be soon committed
2003-08-23 02:51:33 +00:00
Jong Hyuk Choi
2b803b0459 SyncRepl is changed to share the following routnines :
slap_mods_opattrs(), slap_mods_check(), slap_mods2entry()
2003-07-11 01:01:27 +00:00
Jong Hyuk Choi
cc6f31782d - partial attribute replication tested ok
- conf file processing udpate
- misc updates
2003-07-02 14:51:23 +00:00
Jong Hyuk Choi
7087a8f58d ITS#2618 fix 2003-06-27 20:29:32 +00:00
Jong Hyuk Choi
86196e11a0 - syncrepl uses LDAP URL only 2003-06-23 14:15:28 +00:00
Jong Hyuk Choi
e8cd5c2386 - LDAP_SYNCREPL defined in include/ldap.h
- add "updatedn" to the replication specification
- return referral to update to the slave server
2003-05-01 23:39:29 +00:00
Luke Howard
e4779aefc1 A pre-operation plugin is not required to set SLAPI_RESULT_CODE in
order to prevent the operation from being passed to the backend. It
need only return a non-zero error code.
2003-04-30 13:37:14 +00:00
Kurt Zeilenga
7bbc903201 fix up nvalues code so that pretty routines work properly
re-add objectClass pretty routines
2003-04-25 02:28:06 +00:00
Kurt Zeilenga
af5f617d2a cleanup 2003-04-25 00:14:54 +00:00
Luke Howard
bdb3adca39 Fix SLAPI debug message typo 2003-04-23 05:00:00 +00:00
Pierangelo Masarati
b5e9378d4f improve previous commit 2003-04-17 22:19:14 +00:00
Pierangelo Masarati
9f7c48ab54 don't return referral if cannot compute one (should fix ITS#2435) 2003-04-17 21:48:57 +00:00
Pierangelo Masarati
adf3744dd6 fix backsql new API; use berbuf instead of berval 2003-04-15 21:55:25 +00:00
Howard Chu
3aabc4ed43 doPlugins return code fix 2003-04-14 00:07:48 +00:00
Howard Chu
130f6e1b7d Memory context tweaks for other ops 2003-04-12 10:47:11 +00:00
Howard Chu
ece7452b05 More memory context tweaks 2003-04-11 01:29:28 +00:00
Kurt Zeilenga
c75be97ae9 #ifdef -DSLAP_NVALUES 2003-04-05 03:35:16 +00:00
Howard Chu
7c9e8b1b87 SLAP_NVALUES fix dup check 2003-04-04 05:39:09 +00:00
Howard Chu
fa9bf23501 Minor cleanup 2003-03-31 07:49:34 +00:00
Luke Howard
2fdbc55374 SLAPI cleanup 2003-03-31 06:41:30 +00:00
Luke Howard
6c2f47ecd5 SLAPI fixes 2003-03-31 04:56:17 +00:00
Howard Chu
e8c58b4e7f Major API change - (SLAP_OP_BLOCKS) All request parameters are
consolidated into the Operation structure. All reply parameters
are consolidated into the new SlapReply structure. Most operations
now have identical call signatures... Changes are not #ifdef'd,
revert to -r NO_SLAP_OP_BLOCKS if necessary to back out.
2003-03-30 09:03:54 +00:00
Howard Chu
837c7eb78e Fix prev commit 2003-03-24 19:36:25 +00:00
Howard Chu
4853334ad4 Fix shadowed text/textbuf 2003-03-24 19:19:54 +00:00
Howard Chu
5ad51b6150 SLAP_NVALUES tweaks - after input, a_nvals is always populated. If there is
no normalizer, a_nvals = a_vals.
2003-03-24 01:56:56 +00:00
Kurt Zeilenga
46a2616b83 Fix -USLAP_NVALUES 2003-02-26 03:12:02 +00:00
Kurt Zeilenga
a5e883a886 SLAP_NVALUE more add tweaks 2003-02-26 01:57:07 +00:00
Kurt Zeilenga
6390e947b0 SLAP_NVALUES, round 2 2003-02-25 22:49:41 +00:00
Kurt Zeilenga
aaf253318b Move include <slapi.h> behind #ifdef 2003-02-10 02:09:00 +00:00
Kurt Zeilenga
c315e28779 Move RDN checks to entry_schema_check() so that it is consistently
applied (and disabled via schemacheck off).  Removed add-rdn-values flag.
2003-02-07 20:12:26 +00:00
Pierangelo Masarati
7a97f37bd4 add 'add-rdn-values {on|off}' (default off) switch 2003-02-07 15:19:58 +00:00
Howard Chu
5e7655d68d Fix for LDAP_SLAPI not def'd 2003-01-31 18:46:17 +00:00
Pierangelo Masarati
e3dfb8e317 cleanup 2003-01-31 00:02:51 +00:00
Kurt Zeilenga
e6255466da Remove FIXME stuff (ITS#2243) 2003-01-30 23:14:10 +00:00
Pierangelo Masarati
e3b9e0a565 do not treat extensibleObject as special; add comment about referral 2003-01-30 21:21:20 +00:00
Luke Howard
13c48d1f76 Ensure that, when an entry is actually being added to the directory,
the entry specified by SLAPI_ADD_ENTRY contains the attributes to be
added.
2003-01-29 22:43:19 +00:00
Pierangelo Masarati
4010870f62 cleanup 2003-01-29 19:05:40 +00:00
Pierangelo Masarati
ffc343a485 allow special objectClasses to violate constraint (as suggested by Hallvard, who needs aliases :) 2003-01-29 18:01:15 +00:00
Pierangelo Masarati
683c237a54 bail out is now the default; use noSuchAttribute as error code, as suggested by Kurt 2003-01-29 17:01:04 +00:00
Pierangelo Masarati
6b5611cbac check for RDN attrs/vals when adding an entry (ITS#2243; need to choose whether to bail out or to add the RDN attr/vals to the entry; FIXME: is constraintViolation a reasonable error? 2003-01-29 15:54:24 +00:00
Pierangelo Masarati
49c1ba60b7 slapi header cleanup 2003-01-27 21:35:34 +00:00
Luke Howard
819d4093ae Honour PermitModify control when adding or deleting values. This code needs
review although, with the control disabled, it should not affect existing
code paths.
2003-01-24 01:43:09 +00:00
Luke Howard
0650e6ad52 Allow plugin to retrieve desired attribute list and state of manageDSAit control
Support search preop/rewrite/postop plugins for root DSE and subschema
2003-01-23 08:45:28 +00:00
Luke Howard
ff263ec6a7 Return LDAP_OTHER instead of LDAP_OPERATIONS_ERROR for internal SLAPI
failure
2003-01-21 09:42:26 +00:00
Luke Howard
8e8b4093f5 Mark Sun ONE 5.x SLAPI plugin types to avoid collisions
Rename internal slapi_XXX API to slapi_x_XXX
Always set result code/matched/error text in operation parameter block
to make available to postoperation plugins
2003-01-21 02:46:55 +00:00
Luke Howard
d484a9781c Conform SLAPI to Netscape, iPlanet and Sun ONE Directory Server
behaviour:

1. Plugins never return LDAP result codes, instead they return a
   small integer (0 or -1, others for special cases)
2. Preoperation plugins can abort processing by returning a non-
   zero value to the frontend
3. Postoperation plugins never abort processing (all are called)
   and their return values are ignored
2003-01-20 23:18:11 +00:00
Luke Howard
6a5f29b60a Use new SLAPI API for setting associated parameters associated with the
Connection, Operation and Backend structures.

Ensure that SLAPI_MODIFY_MODS is set to an array of LDAPMods.
2003-01-19 15:30:10 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Pierangelo Masarati
e9a74cffba slapi used the old version of the LDAP_LOG macro (caught by Howard) 2002-12-27 14:59:01 +00:00
Pierangelo Masarati
1b70e16448 SLAPI - Netscape plugin API for slapd - based on patch contributed by Steve Omrani <somrani@us.ibm.com> as ITS#2073 2002-12-07 17:19:29 +00:00
Kurt Zeilenga
f5e6d1db41 #unifdef -DSCHEMA_DN 2002-09-29 04:30:38 +00:00
Pierangelo Masarati
d3ca441ae8 /*
* The original code performs ( n ) normalizations
 * and ( n * ( n - 1 ) / 2 ) matches, which hide
 * the same number of normalizations.  The new code
 * performs the same number of normalizations ( n )
 * and ( n * ( n - 1 ) / 2 ) mem compares, far less
 * expensive than an entire match, if a match is
 * equivalent to a normalization and a mem compare ...
 *
 * This is far more memory expensive than the previous,
 * but it can heavily improve performances when big
 * chunks of data are added (typical example is a group
 * with thousands of DN-syntax members; on my system:
 * for members of 5-RDN DNs,

 members         orig            bvmatch (dirty) new
 1000            0m38.456s       0m0.553s        0m0.608s
 2000            2m33.341s       0m0.851s        0m1.003s

 * Moreover, 100 groups with 10000 members each were
 * added in 37m27.933s (an analogous LDIF file was
 * loaded into Active Directory in 38m28.682s, BTW).
 *
 * Maybe we could switch to the new algorithm when
 * the number of values overcomes a given threshold?
 */
2002-09-02 19:41:03 +00:00
Howard Chu
07ebdca237 ITS#1893, use "schemadn" to configure subschemasubentry DN. (diff was
inaccessible, this is original code, not contributed.)
2002-08-10 03:10:52 +00:00
Julius Enarusai
6107ba67d2 Coverted LDAP_LOG macro to use subsystem ID int values instead of string values 2002-07-11 20:33:24 +00:00
Kurt Zeilenga
0a2a381d07 Fix for "no structuralObjectClass" when lastmod is off (ITS#1904) 2002-06-25 01:04:54 +00:00
Howard Chu
a039bd97ea ITS#1803, bogus free() of lber-private memory. 2002-05-06 16:51:00 +00:00
Pierangelo Masarati
4a8ab5dbf2 Mostly based on patches provided by Hallvard B. Furuseth
ITS#1677 - cast away const warnings
ITS#1678 - unsigned char args to ctype funcs
ITS#1682 - don't redefine ldap_debug
ITS#1683 - uninitialized vars
ITS#1703 - ldo_debug initialization
ITS#1705 - unsigned testing
ITS#1706 - socklen_t args
ITS#1719 - back-tcl update (other cleanups/fixes/improvements; yet untested)
ITS#1724 - integerNormalize/integerFilter/integerIndexer bugs
ITS#1725 - libdes not required

Implement back-null (/dev/null style backend)
Cleanup some misc warnings ("%lu" format, unused/uninitialized vars,
        ambiguous operator precedence)

Kurt, please regenerate configure
2002-04-08 09:43:22 +00:00
Kurt Zeilenga
26b99bc35d ITS#1701. Fix ber_scanf() return tag handling.
Based upon patch submitted by Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>.
2002-04-02 18:40:04 +00:00
Howard Chu
2367a31872 Minor cleanup, no need to zero fields in calloc'd memory 2002-01-25 07:07:55 +00:00
Kurt Zeilenga
ccc4e64f0a Fix up duplicate error reporting 2002-01-19 02:20:46 +00:00
Kurt Zeilenga
014ea5f486 Add checks for duplicate values 2002-01-19 01:56:35 +00:00
Kurt Zeilenga
819ffa1c37 Limit slurpd friendly code to replication user. 2002-01-18 22:01:29 +00:00
Howard Chu
ac1332cdb8 Renamed BVarray to BerVarray. Moved slapd:bvarray_{add,free} to
liblber:ber_bvarray_{add,free}.
2002-01-14 01:43:17 +00:00
Kurt Zeilenga
55501e886f Rework backend (lastmod + glue + system schema) flags 2002-01-10 22:34:11 +00:00
Howard Chu
ec46a2f33a Use 'm' ber_scanf format where convenient 2002-01-06 06:11:01 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Howard Chu
b15eebf50b Minor cleanup. bvarray_add should return success/fail, like
ber_bvecadd does.
2002-01-02 13:03:46 +00:00
Howard Chu
ee98e6938c Fix memory leak of Mod.sml_type 2002-01-02 12:34:35 +00:00
Howard Chu
f52cc9bab5 Change struct berval ** to BVarray 2002-01-02 11:00:36 +00:00
Howard Chu
292c575c1f Added dnPrettyNormal, do both Pretty and Normalize at once to save
some ldap_str2dn overhead.
2001-12-28 07:27:15 +00:00
Kurt Zeilenga
21cecb3831 Update referral handling to use struct berval DNs. 2001-12-26 20:59:24 +00:00
Kurt Zeilenga
2dd27b0786 More struct berval DNs 2001-12-25 19:48:26 +00:00
Kurt Zeilenga
e08a10b853 Have replog() use struct berval DNs 2001-12-25 04:09:09 +00:00
Kurt Zeilenga
3336619c80 More "char *" to struct berval DN changes 2001-12-25 02:30:01 +00:00
Kurt Zeilenga
5ee89d6167 Use struct berval DNs for root DN and update DN 2001-12-25 00:05:26 +00:00
Kurt Zeilenga
d047cc854e Require the struct berval **out argument of dnPretty/dnNormalize
point to a NULL pointer, that is assert( *out == NULL ).
Eventually, we'll allow **out to point to a preallocated
struct berval (to avoid unnecessary allocation).
2001-12-24 18:38:20 +00:00
Kurt Zeilenga
aac4f1caf5 Basic ename.bv_len work. 2001-12-24 17:24:18 +00:00
Howard Chu
2f3399265c Changed sai_dn, sai_ndn to struct berval. (Affects op->o_dn,o_ndn,
conn->c_dn,c_ndn, Access->a_dn_pat)
2001-12-24 15:11:01 +00:00
Kurt Zeilenga
0c28b66a75 use dnPretty instead of dn_pretty 2001-12-23 00:43:57 +00:00
Kurt Zeilenga
a4a1325a6a Update BER decoding of PDU to use "o" (struct berval) instead of
"a" (char **)... another step towards BerValue DNs.
2001-12-22 21:52:58 +00:00
Kurt Zeilenga
80c134ec07 Fix error in last commit 2001-12-20 00:44:26 +00:00
Kurt Zeilenga
1d6c8d8157 Add better error reporting.
Handle multiple SUP objectClasses.
2001-12-20 00:34:36 +00:00
Kurt Zeilenga
49d16c4dce Add structuralObjectClass support and a bit of const'ification 2001-12-19 22:08:24 +00:00
Howard Chu
ef0b308bea Changed backglue configuration. Added noSubordinates arg to select_backend
to deal with glued subordinates.
2001-12-10 12:09:40 +00:00
Howard Chu
acc2500114 Added ndn to replog args, eliminate unnecessary dn_normalize in replog. 2001-12-09 02:47:39 +00:00
Kurt Zeilenga
ea8f7aaab3 Pretty the entry DNs on add but not rename (yet). 2001-12-08 06:57:06 +00:00
Pierangelo Masarati
b1688462ce check for update dn 2001-11-16 11:47:15 +00:00
Kurt Zeilenga
82fad7d0c8 First stable an implementing latest namedref specification.
Includes rewriting of URLs where the DN of the referral object
and the DN of the ref attribute attribute are not the same.
Also, always returns explicit DN and scope.
Currently, back-ldbm only.  Needs to be ported to back-bdb.
2001-10-26 02:05:14 +00:00
Kurt Zeilenga
aedf4b42fc Return unwillingToPerform instead of noSuchObject for subschema subentry 2001-10-05 01:55:14 +00:00