Commit Graph

298 Commits

Author SHA1 Message Date
Luke Howard
71d76fbeba slap_mods2entry() should not zero pointers into the modifications
list because checking is performed on these, rather than the entry.

slap_mods_free() now takes an extra argument indicating whether to
free the values or not.
2005-08-01 02:16:02 +00:00
Luke Howard
40ec064b66 Fix logic error in slap_mods_no_repl_user_mod_check() 2005-07-31 05:04:37 +00:00
Luke Howard
6f0edd6c22 Call slap_mods2entry() in do_add(), so that global overlays (including
global SLAPI plugins) have access to op->ora_e.

Note that slap_mods2entry() is still called in fe_op_add() in order to
add any operational attributes.
2005-07-31 04:56:27 +00:00
Luke Howard
9a1c8cdb88 Allow sml_desc to be set by caller in slap_mods_check() 2005-07-23 12:00:52 +00:00
Luke Howard
ffe20229dc Move most of SLAPI frontend into overlay 2005-07-21 16:35:20 +00:00
Hallvard Furuseth
81ecb0b153 assert expects int. (int)<nonnull ptr/long> can be 0. Use assert(arg!=0/NULL). 2005-07-18 06:22:33 +00:00
Howard Chu
5d2ba11ad9 ITS#3847 silence warnings 2005-07-11 12:11:15 +00:00
Howard Chu
782d767c33 ITS#3763 fix typo in slap_timestamp 2005-06-09 18:59:54 +00:00
Howard Chu
21b8be393a Add slap_timestamp(), use mutex in slap_get_csn() 2005-06-07 04:12:14 +00:00
Howard Chu
8f58409749 Add SLAP_MOD_INTERNAL flag to Modifications, allow internal ops to bypass
ACL checks when modifying user-modifiable attributes as non-root user.
2005-06-04 09:44:39 +00:00
Kurt Zeilenga
872b0a09fd ITS#3725 fix 2005-05-14 18:52:15 +00:00
Kurt Zeilenga
812efa5723 Allow no-user-modification attributes to be managed.
Need to fix the slap_mods_opattrs() clobber.
2005-05-14 06:40:50 +00:00
Kurt Zeilenga
18c3f9e093 Add manage obsolete attributes capability. 2005-05-13 23:51:43 +00:00
Kurt Zeilenga
feeeabcd68 manageDIT framework and obsolete objectclasses/DIT-content-rule override 2005-05-13 19:07:31 +00:00
Kurt Zeilenga
c83f7539ae Mostly remove global_schemacheck. More cleanup needed in
bconfig.c and back-sql.
2005-05-11 22:24:18 +00:00
Pierangelo Masarati
f2c4803dbd someone (e.g. an overlay) might muck with this data (e.g. remove a modification from the list...) 2005-04-17 19:12:46 +00:00
Howard Chu
d882ce511d Generic ordered value support 2005-04-14 10:31:51 +00:00
Howard Chu
f955f17076 ITS#3576 use actual backend (not glue instance) for restriction and
update/referral checks
2005-03-17 04:29:31 +00:00
Pierangelo Masarati
b70abdcbce global overlays need to set o_bd = frontendDB to return the error in case no database can be selected 2005-01-23 21:44:23 +00:00
Kurt Zeilenga
dc0eacd40b Happy New Year! 2005-01-01 20:49:32 +00:00
Pierangelo Masarati
2f5e17d056 improve usability of global ovrlays for write operations; may need to anticipate SLAPI accordingly. More work needed for add (overlays need to understand they're global and call slap_mods2entry() explicitly) 2004-12-11 17:48:15 +00:00
Howard Chu
916e931065 Always exclude subordinates from top-level ops so glue overlay can
intercept. Now a single syncprov works over the entire glued context.
2004-12-04 19:26:22 +00:00
Howard Chu
7e87f54716 Revert ITS#3353 patch, it needs to be reworked. 2004-10-06 05:51:38 +00:00
Howard Chu
fda3d6260e ITS#3353 consolidate slapd globals into a single struct 2004-10-01 07:33:16 +00:00
Pierangelo Masarati
d026e2c9f7 preformat "conn=%lu op=%lu" 2004-09-26 23:00:00 +00:00
Pierangelo Masarati
761f287943 multiple precision with BIGNUM/gmp/ulong 2004-09-26 22:58:47 +00:00
Jong Hyuk Choi
98dc97bcb9 memory leak fixes 2004-09-11 02:02:09 +00:00
Kurt Zeilenga
d611a4b49a unifdef -UNEW_LOGGING 2004-09-04 04:54:28 +00:00
Luke Howard
6cdaa19b96 Remove bogus SLAPI code path which special-cased modlist == NULL
This had the effect of setting the result code to LDAP_SUCCESS for modlist == NULL
even on a replica when an update-ref might be set. This was causing a plugin (that
implements the commit phase in a post-op plugin) to write to "read-only" replica.
2004-08-27 19:34:14 +00:00
Luke Howard
8c764e8d63 Fix a SLAPI bug where slapd could crash if a preop plugin changed the mods
list and a subsequent plugin aborted the operation -- regardless of the
preop result the frontend must refetch the array of LDAPMods
2004-08-27 17:12:01 +00:00
Pierangelo Masarati
cd9a9c628d frontend stuff moved into a database structure, essentially to allow overlays to be processed before database selection; passes all tests (ITS#3080) 2004-07-26 21:26:34 +00:00
Pierangelo Masarati
4c16e67094 minor cleanup 2004-07-19 21:43:03 +00:00
Pierangelo Masarati
af842eb734 fix comment 2004-04-26 17:50:39 +00:00
Kurt Zeilenga
cd84c58d4a Fix: ldapadd with undefined objectclass causes assertion failure (ITS#3097) 2004-04-19 19:27:51 +00:00
Kurt Zeilenga
b217659088 ITS#3066: properly detect duplicates 2004-04-08 06:44:50 +00:00
Kurt Zeilenga
49e378af07 cleanup 2004-04-08 02:43:52 +00:00
Jong Hyuk Choi
1c1b2bb6ee updatedn fix for syncrepl 2004-04-07 17:32:37 +00:00
Kurt Zeilenga
44725e7303 use BER_BVNULL 2004-04-07 04:11:43 +00:00
Pierangelo Masarati
a11dc61e05 rework be_isupdate accordingly to be_isroot 2004-04-06 09:42:40 +00:00
Kurt Zeilenga
37ef5350bd Rework return of update referrals 2004-04-06 00:47:21 +00:00
Kurt Zeilenga
3c598e89fb Happy new year 2004-01-01 19:15:16 +00:00
Luke Howard
0549d46adf Don't require slapi to be in the path - always include slapi/slapi.h 2003-12-28 04:17:48 +00:00
Luke Howard
b0416d1140 Cleanup SLAPI namespace 2003-12-28 04:14:19 +00:00
Howard Chu
e933f076cc Better fix for ITS#2512. Use callback to invoke replog before sending
result to client.
2003-12-25 15:01:53 +00:00
Howard Chu
d31230f859 Fix replog sequencing - assign sequence numbers at beginning of operation,
instead of getting a timestamp at the end. This makes it possible for
slurpd to sort the log later.
2003-12-23 18:48:36 +00:00
Luke Howard
516fd0ff50 First round of SLAPI cleanups - use slapi_int_XXX for internal functions
(slapi_x_XXX is still reserved for exported functions that are not part
of the SLAPI specification)
2003-12-16 15:49:31 +00:00
Luke Howard
399b57eada Use gmtime_r() if HAVE_GMTIME_R is defined (need to add autoconf check) 2003-12-06 05:37:00 +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
ccf224a759 ITS#2808 fix UUIDNormalize, use it. 2003-11-03 08:22:13 +00:00
Kurt Zeilenga
80fa73bf8c Update entryUUID to latest draft specification 2003-10-31 17:41:31 +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
Kurt Zeilenga
aa225c2c70 Explicitly mark attribute/assertion syntax of values to be normalized 2003-10-18 06:18:05 +00:00
Kurt Zeilenga
e3a0148328 Fix modify attrs= overflow bug 2003-10-18 02:33:15 +00:00
Howard Chu
370fd22870 Add comment about normalized values in mods vs entry attributes 2003-09-13 09:51:28 +00:00
Jong Hyuk Choi
7f882daf15 Schema checking option for LDAP Sync replication 2003-09-03 21:42:52 +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
Kurt Zeilenga
b54780f940 Add initial support for modify/increment. No over/under flow detection.
Currently discovered via a "feature", but should use a control.
Start of a control made, but needs to be better integrated (with
auto use in ldapmodify(1)).
2003-08-07 16:42:40 +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
Luke Howard
d29ed4407c Always call modification postoperation plugins even if a
preoperation plugin has removed all modifications and
thus there are none to pass to the backend.

Accept SSF as a valid parameter block value.

Fix completely broken slapi_access_allowed()
2003-07-03 23:17:54 +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
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
Howard Chu
4739b58f99 Fix previous commit 2003-04-14 11:14:07 +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
Luke Howard
d2b6e8d56c Handle the case where slapi_x_ldapmods2modifications() returns NULL; the
modify request becomes a NOOP for the front-end in this case.
2003-04-01 17:38:02 +00:00
Luke Howard
8429210bed Fix SLAPI crasher 2003-04-01 16:43:04 +00:00
Luke Howard
9da00ad42d Fix SLAPI crasher 2003-04-01 16:42:24 +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
bbad1de8e1 Added lutil_passwd_init, _destroy, _add for dynamically adding passwd
schemes. Declarations in lutil.h require lutil.h never be included before
lber.h, always after.
2003-03-11 05:58:53 +00:00
Howard Chu
3955eaede2 Fix LDAP_DEBUG/LDAP_SYSLOG test 2003-03-05 02:22:58 +00:00
Kurt Zeilenga
840f3644f4 SLAP_NVALUES: a couple of basic normalizers... but not working yet. 2003-02-28 05:13:29 +00:00
Kurt Zeilenga
152829be87 SLAP_NVALUES:
schema engine updated (but not schema routines so things don't run yet)
	nvalues mostly populated, enough for tests 0-2 to pass
	schema routines needs lots of work
	modify/mods codes needs lots of work
2003-02-27 01:54:43 +00:00
Howard Chu
284ef10e6e In slap_mods_check, must null-terminate sm_nvalues array 2003-02-26 09:24:01 +00:00
Kurt Zeilenga
dd66e6e929 SLAP_NVALUES, round 3 2003-02-26 07:39:30 +00:00
Kurt Zeilenga
46a2616b83 Fix -USLAP_NVALUES 2003-02-26 03:12:02 +00:00
Kurt Zeilenga
2cdbd25a60 SLAP_NVALUES mostly populated now 2003-02-26 01:41:22 +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
8f82e9f772 ITS#2117: remove suffixalias support until someone fixes it 2003-02-09 07:20:03 +00:00
Kurt Zeilenga
2fccb8d68e really put SLAPI behind its #ifdef 2003-02-07 19:06:15 +00:00
Pierangelo Masarati
c3847a6136 slapi header cleanup 2003-01-27 21:53:23 +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
293c765c11 Added slapi_access_allowed() and slapi_acl_check_mods() API for Sun ONE
DS 5.x compat
This required exposing the mods array conversion functions so they
are now in slapi/slapi_utils.[ch]
2003-01-22 09:00:06 +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