Commit graph

1285 commits

Author SHA1 Message Date
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
Howard Chu
759996c6e9 Fix HDB search_aliases crash, cleanup search scope processing: call dn2idl
directly instead of going thru filter_candidates. Use hdb_ function prefix
in dn2id.c to avoid ambiguities...
2003-05-01 11:59:08 +00:00
Jong Hyuk Choi
b4e8f8f470 comment cleanup 2003-04-30 16:39:40 +00:00
Howard Chu
7e2273b30e Added errmsg arg to lutil_passwd_{check,hash} functions 2003-04-30 07:52:05 +00:00
Howard Chu
cfaf127eaa Log errors from dn2id failures 2003-04-30 07:47:24 +00:00
Howard Chu
35d18d4ab0 Use DB_RMW when deleting dn2id elements 2003-04-30 07:46:58 +00:00
Howard Chu
7e1a91340c Use computed filters to pass in search scope. 2003-04-30 07:46:01 +00:00
Jong Hyuk Choi
b10f1c5780 - manageDSAit is implicitly assumed for LCUP / SYNC
- LCUP / SYNC search both entries and subentries at the same time
2003-04-30 02:04:23 +00:00
Howard Chu
15b661c5c7 Revert prev commit. It's a symptom that BDB was built incorrectly. 2003-04-29 22:02:24 +00:00
Howard Chu
c066e87e2c Better handling of computed filters 2003-04-29 21:51:23 +00:00
Kurt Zeilenga
5cd994ed21 remove dnNormalize2
replace calls to dnNormalize2 with calls to dnNormalize
2003-04-29 18:28:14 +00:00
Hallvard Furuseth
51da53b4b0 Print long with %ld, not %d. 2003-04-29 14:55:36 +00:00
Howard Chu
792e97790d Handle SLAPD_FILTER_COMPUTED cases 2003-04-29 00:42:54 +00:00
Howard Chu
b63bdc6513 Undo BDB const mucking 2003-04-25 13:14:33 +00:00
Howard Chu
e0f0a40497 ITS#2467 NULL pointer check 2003-04-25 10:27:55 +00:00
Howard Chu
2b6f4ff7d0 Fix byte-ordering in bdb_dup_compare 2003-04-23 11:52:22 +00:00
Howard Chu
184f647b25 Change RDN compare funcs, we don't need lexical ordering 2003-04-23 10:26:06 +00:00
Howard Chu
02217c9183 Subtree rename support for the cache 2003-04-23 08:46:23 +00:00
Howard Chu
6f461690c1 Function renaming, make internal funcs static, etc. 2003-04-23 06:34:55 +00:00
Howard Chu
1745c2478d Missed a bei_rdn in prev commit 2003-04-22 20:35:29 +00:00
Howard Chu
c7d3d42304 Omit bei_rdn field from EntryInfo 2003-04-22 18:59:37 +00:00
Howard Chu
7c39a5e726 filter_candidate tweaks, search_stack tweaks 2003-04-22 18:22:51 +00:00
Howard Chu
68822b1e15 Trim dead BDB_HIER stuff 2003-04-22 17:06:35 +00:00
Howard Chu
c9f8d7accb Fix args to bdb_cache_modrdn 2003-04-22 17:05:22 +00:00
Jong Hyuk Choi
4d6469f949 subentry cleanup 2003-04-22 17:00:04 +00:00
Howard Chu
0afba16b9b Fix id2entry, let bdb_cache_release_all clean up EntryInfos
Fix idl_cache_put
2003-04-22 13:14:06 +00:00
Howard Chu
89127c93d0 Mem context tweaks for bdb_dn2idl 2003-04-22 06:29:13 +00:00
Howard Chu
ee1cddf6fd Fix typo in prev commit 2003-04-22 05:15:50 +00:00
Howard Chu
bd871d710d Moved IDL cache code to standalone functions.
Use IDL cache in bdb_dn2id_children.
2003-04-22 05:14:27 +00:00
Howard Chu
f0577fcb08 Pass parent EntryInfo instead of parent DN to dn2id_add/delete.
Add bdb_cache_children, remove cache flag manipulation from dn2id_children
2003-04-22 04:06:09 +00:00
Howard Chu
d290145776 memory context tweaks 2003-04-21 18:28:38 +00:00
Pierangelo Masarati
629885a269 use SLAP_PTRCMP 2003-04-18 17:16:48 +00:00
Howard Chu
6fd41cd254 Add shm_key config keyword to use shared memory for BDB environment
Unmeasurable performance difference on my tests, but who knows...
2003-04-18 09:43:22 +00:00
Howard Chu
6002ad5233 Minor fixes 2003-04-18 07:43:07 +00:00
Howard Chu
7caf3e0952 Fix prev commit, extended search was broken 2003-04-18 05:53:24 +00:00
Howard Chu
3baffe7cf2 Fix undefined filters 2003-04-18 04:44:46 +00:00
Howard Chu
8d8a52f9d2 ITS#2453, Fix filter candidate generation 2003-04-18 03:36:52 +00:00
Howard Chu
7c60ff1ef8 ITS#2449, broken NOT filters 2003-04-18 02:31:38 +00:00
Jong Hyuk Choi
2dbcd890b8 Caching non-existing index entries in the IDL cache - caching keys only 2003-04-18 00:35:11 +00:00
Howard Chu
c754980045 Use EntryInfo navigation for search scope checks 2003-04-17 11:03:21 +00:00
Howard Chu
ec13a69220 Finish alias scope support 2003-04-17 09:23:53 +00:00
Howard Chu
f7db076c86 Fix prev commit 2003-04-17 05:15:12 +00:00
Howard Chu
7dcb79157d Fix database search loop conditions 2003-04-17 04:55:39 +00:00
Howard Chu
d7a1eb0ea2 Fix AVL comparisons 2003-04-17 04:36:42 +00:00
Howard Chu
2048c05a82 Added CACHE_ENTRY_NO_KIDS flag to bei_state to shortcut dn2id_children. 2003-04-17 00:52:31 +00:00
Howard Chu
377bccbc6c Hierarchical cache management. 2003-04-16 16:23:36 +00:00
Howard Chu
ca9bb44089 Free IDL_CACHE locks 2003-04-16 01:04:00 +00:00
Howard Chu
d28bdf9cc2 Fix for modrdn retries 2003-04-15 01:13:28 +00:00
Howard Chu
755f785432 Memory context fixes 2003-04-13 16:15:52 +00:00
Howard Chu
af6804905f Eliminate unnecessary calls to slap_bv2ad 2003-04-12 12:19:57 +00:00
Howard Chu
130f6e1b7d Memory context tweaks for other ops 2003-04-12 10:47:11 +00:00
Howard Chu
a6a6946a67 New ldap_pvt_thread_pool_context() 2003-04-12 04:01:40 +00:00
Howard Chu
ece7452b05 More memory context tweaks 2003-04-11 01:29:28 +00:00
Pierangelo Masarati
06a99afbdb free cache only if required 2003-04-08 23:22:10 +00:00
Jong Hyuk Choi
b1b36ae75f bdb->bi_idl_tree_lrulock initialize 2003-04-08 16:30:56 +00:00
Howard Chu
d01d31e54f Better detection of new search scopes 2003-04-08 11:17:20 +00:00
Jong Hyuk Choi
420210a2a3 IDL cache locking change (mutex -> rwlock) 2003-04-08 06:57:07 +00:00
Howard Chu
c0ee56c306 Define MINIMUM_SEARCH_STACK_DEPTH=8, search_aliases needs at least this. 2003-04-05 10:05:27 +00:00
Pierangelo Masarati
b2075ea932 cleanup & more 2003-04-05 09:57:21 +00:00
Howard Chu
3814b5f1a1 Range check cleanup, added alias processing comments 2003-04-05 09:46:54 +00:00
Howard Chu
fbc6a7e8ac Fix cursor initialization, scope IDs 2003-04-05 08:54:24 +00:00
Kurt Zeilenga
c866e28049 Cleanup 2003-04-05 08:40:07 +00:00
Howard Chu
cb92eaf96c Fix locking etc. in prev commit 2003-04-05 07:50:01 +00:00
Howard Chu
48a9cf3416 Added code for BDB_ALIASES. Please test. 2003-04-05 06:35:16 +00:00
Kurt Zeilenga
c75be97ae9 #ifdef -DSLAP_NVALUES 2003-04-05 03:35:16 +00:00
Kurt Zeilenga
2d68ec09f2 #unifdef -DSLAP_NVALUES_ON_DISK 2003-04-05 03:11:29 +00:00
Howard Chu
adefd27c44 Fix return of DB error code to LDAP client 2003-04-03 01:59:08 +00:00
Howard Chu
9355dca9af Consolidated slap_callbacks into one function. Removed send_search_result. 2003-04-01 04:12:18 +00:00
Howard Chu
d8350698aa Remove psearch.c 2003-03-31 05:31:12 +00:00
Howard Chu
8188bd1752 Fix typo in prev commit 2003-03-30 18:49:25 +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
0be6cb5a67 Deleted bi_database_mutex, use DB_LOCK instead. Changed bdb_locker_id to
lookup the threadctx if no Op * is provided. (bdb_db_cache doesn't know
its thread context when it acquires a locker ID.)
2003-03-29 05:15:48 +00:00
Howard Chu
1985b2c5a1 Don't use subdatabases for indexes. This patch is an incompatible change,
must destroy existing indexes and run slapindex to regenerate.
2003-03-27 04:30:05 +00:00
Howard Chu
ecd4296640 Fix previous commit 2003-03-27 03:27:48 +00:00
Howard Chu
51e10cf23c Save DB_LOCK structure so it can be released later. 2003-03-26 13:33:51 +00:00
Howard Chu
c9ec6b0cab Remove attribute.c, group.c from build 2003-03-26 11:52:59 +00:00
Howard Chu
99950e4fe4 Deleted BackendInfo->bi_acl_attribute, bi_acl_group.
Replaced with bi_entry_get_rw.
Implemented for back-bdb, back-ldbm, back-ldap.
2003-03-26 11:50:03 +00:00
Howard Chu
f14561d59d #if out unused cache rdwr locks 2003-03-25 20:17:05 +00:00
Howard Chu
b672620eb8 Simplify indexer - remove redundant dbname parameter 2003-03-25 18:17:34 +00:00
Howard Chu
880b9f15ac ITS#2392 - move cache_commit inside transaction. needs lock protection,
and the lock goes away after txn_commit. Not sure what to do about the
cache if txn_commit actually fails though. Since txn_prepare succeeded,
should never happen. ???
2003-03-25 17:49:35 +00:00
Howard Chu
3fe42f68c8 SLAP_NVALUES fix 2003-03-24 17:28:26 +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
Howard Chu
79f3ea6e80 BDB_HIER was defined by accident, undef
Fix up for SLAP_NVALUES_ON_DISK
2003-03-23 15:27:43 +00:00
Howard Chu
329202e897 Plug ndn leak (re: ITS#2390) 2003-03-22 16:59:41 +00:00
Kurt Zeilenga
8a7114e152 ITS#2390 fix for back-bdb 2003-03-22 16:38:31 +00:00
Howard Chu
23d69c1d1f Still need DB_AUTO_COMMIT flag 2003-03-22 16:21:44 +00:00
Howard Chu
a0c58e5f40 Don't use DB_AUTO_COMMIT when opening a database 2003-03-18 00:04:16 +00:00
Kurt Zeilenga
6c7a1194c3 reorder to statements for debugging purposes 2003-03-16 18:48:44 +00:00
Kurt Zeilenga
676349481f SLAP_NVALUES updates 2003-03-16 06:03:23 +00:00
Kurt Zeilenga
3972e13fc3 NVALUES: fix a couple of value_find_ex() calls 2003-03-15 22:47:17 +00:00
Howard Chu
44be38c0f0 ITS#2371, fix BDB_SUBDIRs 2003-03-13 15:53:19 +00:00
Kurt Zeilenga
e12aec25f4 minor cleanup 2003-03-13 04:16:18 +00:00
Howard Chu
a2a5ef48be ITS#2368 - fix deleting key from range IDL 2003-03-12 21:18:39 +00:00
Howard Chu
f2223ede5b Fix error messages 2003-03-12 21:16:43 +00:00
Jong Hyuk Choi
c1da85eba0 Error checking code for ITS#2367 2003-03-12 16:37:04 +00:00
Jong Hyuk Choi
0d0d5ffddf declaration of bdb_idl_entry_cmp() 2003-03-12 16:36:28 +00:00
Jong Hyuk Choi
2e31af9ca1 AVL delete upon shutdown (ITS#2367) 2003-03-12 16:34:17 +00:00
Howard Chu
009afb4bd7 Fix cache consistency problems on txn retry 2003-03-12 15:20:51 +00:00
Howard Chu
1e5de87e10 Plug memory leaks:
retrying a modrdn leaked DNs, rdns, etc.
	modifying a cached entry leaked attrs
2003-03-12 13:04:23 +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
Kurt Zeilenga
0f0122abdd need to use ch_malloc/realloc 2003-03-09 20:15:30 +00:00
Jong Hyuk Choi
5db7e20cf1 misc : not activating idl cache in tool mode run 2003-03-05 03:34:59 +00:00
Howard Chu
a0b1fb1f9c Multiple-suffix fail msg should be logged at ERR/ANY, not ARGS. 2003-03-04 21:17:31 +00:00
Pierangelo Masarati
498f8a7454 init var 2003-03-03 21:33:29 +00:00
Pierangelo Masarati
14d64852e8 trim unnecessary varaible 2003-03-01 12:12:12 +00:00
Kurt Zeilenga
47b18c9a51 SLAP_NVALUES: index normalized values 2003-03-01 05:17:44 +00:00
Howard Chu
22e88ffb75 Fix LDAP_LOG arg 2003-02-28 05:24:08 +00:00
Howard Chu
4e01c67966 ITS#2336 - Don't allow rename on subtrees. 2003-02-28 05:18: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
321780eb66 Complain about holes in database at end of slapadd 2003-02-26 15:33:20 +00:00
Howard Chu
1e718b1815 Delete extraneous log msg 2003-02-26 12:57:15 +00:00
Howard Chu
d7aac0a9d5 Only check opinfo.boi_err when ACL check failed. 2003-02-26 12:49:21 +00:00
Howard Chu
18554e7511 Fix attribute/group to allow TXN to abort on lock failure. Save and
restore op->o_do_not_cache on TXN retry, bdb_group will set it if it
fails to get a lock.
2003-02-26 12:09:10 +00:00
Howard Chu
00837465c4 Don't need TXN/opinfo support in read-only operations 2003-02-26 11:45:30 +00:00
Howard Chu
bda79780ce ITS#2122 - actually use the passed in txn handle!! 2003-02-26 10:48:02 +00:00
Howard Chu
3505c326da bdb_entry_return must explicitly check for/free attr nvals. 2003-02-26 10:10:13 +00:00
Kurt Zeilenga
dd66e6e929 SLAP_NVALUES, round 3 2003-02-26 07:39:30 +00:00
Kurt Zeilenga
25886d989a Change MR flag names and add comments as to what they mean to slap.h 2003-02-26 02:55:28 +00:00
Kurt Zeilenga
a65a55d385 SLAP_NVALUES: fix up modify password exop 2003-02-25 22:57:53 +00:00
Kurt Zeilenga
6390e947b0 SLAP_NVALUES, round 2 2003-02-25 22:49:41 +00:00
Jong Hyuk Choi
71ca4d51f1 log message fix 2003-02-25 21:15:26 +00:00
Howard Chu
4c760dfc18 Fix? For bdb_cache_find_entry*, COMMITTED entries are usable, not just
READY entries. This change eliminates a retry bottleneck, and looks safe
to me, but please review.
2003-02-22 12:39:49 +00:00
Howard Chu
c756bf0590 Change - bdb_tool_entry_put always "sorts" entries:
instead of just calling bdb_next_id, it calls bdb_dn2id to see if the
    current entry already has an ID. If so, it uses it.
  if not, it recurses to see if its parent exists, and does dn2id_add from
    the database suffix back to the current entry.
2003-02-21 10:13:20 +00:00
Howard Chu
65bf90ff73 Use struct berval for exop reqoid everywhere. Define berval constants
for the known exops.
2003-02-16 06:15:28 +00:00
Howard Chu
1756206598 Use bdb_unlocked_cache_return; lock ended when TXN ended. 2003-02-14 22:30:07 +00:00
Kurt Zeilenga
1a14def903 Use function pointers to get at backend routines. 2003-02-14 20:51:35 +00:00
Kurt Zeilenga
737f4b0d34 Misc LCUP cleanup 2003-02-09 08:43:20 +00:00
Kurt Zeilenga
282f6bc32d Cancel exop updates 2003-02-09 05:54:45 +00:00
Kurt Zeilenga
c04e9ac993 rename "permit modify" control to "permissive modify"
rename "no referrals" controls to "domain scope"
misc cleanup
2003-02-09 05:39:21 +00:00
Kurt Zeilenga
48d47954a6 Rework #ifdef'ing of expermental controls to ease release engineering
using LDAP_DEVEL (to indicate experimental) to enable experimental features
(true for HEAD unless LDAP_REL_ENG is defined)
2003-02-08 21:53:05 +00:00
Kurt Zeilenga
1862077b24 Use DB_VERSION_ to set BDB_ENOUGH 2003-02-08 07:38:22 +00:00
Kurt Zeilenga
d1287dd341 Reword BDB 4.0 bug comment now that configure requires BDB 4.1 2003-02-08 01:34:27 +00:00
Kurt Zeilenga
cca15d41c9 minor code cleanup 2003-02-08 00:57:21 +00:00
Kurt Zeilenga
3737a1c8c4 cleanup 2003-02-07 20:33:05 +00:00
Jong Hyuk Choi
886179fbca cleanup 2003-02-07 20:16:09 +00:00
Jong Hyuk Choi
82115be0fb use of normalized dn (fix for a deadlock case ITS#2195) 2003-02-07 15:59:24 +00:00
Jong Hyuk Choi
55cf8bbd88 use of pre-assigned locker in bdb_group() / bdb_attribute() 2003-02-07 15:47:32 +00:00
Pierangelo Masarati
08d9d56721 more exaustive logging in case of trouble 2003-02-07 13:46:17 +00:00
Jong Hyuk Choi
85bdf79337 Filename change : servers/slapd/back-bdb/lcup.c -> servers/slapd/back-bdb/psearch.c 2003-02-05 07:43:00 +00:00
Jong Hyuk Choi
85b1783d5c LDAP Sync Operation (draft-zeilenga-ldup-sync) as a groundwork for an LDAP replication design 2003-02-05 07:37:02 +00:00
Howard Chu
945c9fb1c7 Tweak previous commit 2003-01-31 19:44:52 +00:00
Howard Chu
f838a4bb53 Fix subtree and matched search in back-hdb 2003-01-31 19:43:14 +00:00
Howard Chu
23c575805a Disallow multiple suffixes by default. Otherwise subtree index optimization
breaks. #define BDB_MULTIPLE_SUFFIXES if you want multiple suffix support.
If you use it, subtree indexing will slow down by factor of 2.
2003-01-30 22:00:16 +00:00
Jong Hyuk Choi
0c43007e55 LDAP cancel operation 2003-01-25 00:36:50 +00:00
Hallvard Furuseth
bf8bbc27fe Fix typo in comment. 2003-01-24 20:12:50 +00:00
Howard Chu
eb459f4339 Delete redundant ch_free(). 2003-01-24 04:26:04 +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
Kurt Zeilenga
521d8384a1 works without SLAPI 2003-01-20 20:18:53 +00:00
Hallvard Furuseth
6a51371fc5 Silence gcc warnings (signed vs. unsigned, implicit declarations, unused vars). 2003-01-19 15:03:25 +00:00
Hallvard Furuseth
265b7e22c6 Insert missing initializers, to silence gcc warnings. 2003-01-19 13:38:44 +00:00
Hallvard Furuseth
1fbbc11811 Fix LBER_ERROR vs. -1 confusion. 2003-01-19 13:10:17 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Kurt Zeilenga
887c21c53e Fix typo in last commit 2002-12-30 04:23:31 +00:00
Kurt Zeilenga
a4ad2eea17 ACL cleanup
Likely needs more deadlock detection checks
2002-12-30 01:12:10 +00:00
Kurt Zeilenga
ed471a4d53 Fix access_allowed() error checking bug 2002-12-30 01:02:31 +00:00
Pierangelo Masarati
f148506bf6 reworking of error handling (should also fix ITS#2235) 2002-12-27 18:08:27 +00:00
Howard Chu
89ab02479d Use ber_flatten2 2002-12-18 19:17:15 +00:00
Howard Chu
06c223991f Fix previous commit, compare must return signed result 2002-12-18 07:55:27 +00:00
Kurt Zeilenga
75757a5c82 Don't reeval expression 2002-12-17 05:25:05 +00:00
Hallvard Furuseth
2bcb48361d Remove casts of AVL function pointers. 2002-12-14 22:25:52 +00:00
Hallvard Furuseth
ff2a3201cb Call node_find_cmp() with (void *)&ulong instead of (void *)ulong.
The old code assumed sizeof(long) == sizeof(void *), among other things.
2002-12-14 21:01:08 +00:00
Hallvard Furuseth
486eaa69b6 Rename "lang(uage)" to "tag(s)". (Cleanup after attribute options patch.) 2002-12-13 19:15:20 +00:00
Howard Chu
e39f9848ac Fix previous commit, check for dup in avl_insert 2002-12-10 20:56:08 +00:00
Howard Chu
349e05ff4d Added config keyword "searchstack" for setting search stack cache depth.
Default is still 16.

Added IDL caching, modified from ITS#2182. Uses "idlcachesize" config
keyword. Code is #ifdef'd, currently defined, with default cache of 0.
2002-12-10 20:33:49 +00:00
Howard Chu
d4a422329b From ITS#2183, use a long-lived IDL stack per thread. 2002-12-10 17:59:21 +00:00
Howard Chu
09679eb715 Added SLAP_MR_VALUE_NORMALIZED_MATCH, avoid redundant normalize when
calling value_find with already-normalized DNs
2002-12-04 18:19:46 +00:00
Julius Enarusai
9b5ec8f43b Fixed minor compile errors in LDAP_LOG debug statements. 2002-12-03 17:06:58 +00:00
Pierangelo Masarati
a7c5307279 perhaps the assert can be removed; should work now 2002-11-28 08:25:12 +00:00
Kurt Zeilenga
8754c8f2a3 #unifdef paged results, remove lint 2002-11-28 04:38:41 +00:00
Kurt Zeilenga
4e223d588b Reorder header inclusion to resolve ITS#2204. 2002-11-26 20:22:24 +00:00
Pierangelo Masarati
415a8d325f add limits to entries count for paged results 2002-11-21 20:49:02 +00:00
Pierangelo Masarati
2b639068b6 seems to be leaking a ber 2002-11-21 20:21:22 +00:00
Pierangelo Masarati
59aea47963 improve limits handling and consistency; return "Admin limit exceeded" instead of "Unwilling to perform" 2002-11-21 12:58:59 +00:00
Pierangelo Masarati
b26ecba01a - allow interactive pagedResults size change
- implement pagedResults abandon by setting size=0
- misc code cleanup
2002-11-21 03:36:37 +00:00
Pierangelo Masarati
c354bb23bf Support for RFC 2696:
LDAP Control Extension for Simple Paged Results Manipulation

contributed by Lynn Moss <lynnmoss@us.ibm.com> (ITS#2189)

applied with changes.
2002-11-21 02:16:53 +00:00
Pierangelo Masarati
498d1f043d silence warnings; fix messages 2002-11-10 20:00:44 +00:00
Pierangelo Masarati
76bf91f553 remove #ifdef SLAP_FILTER_HASSUBORDINATES 2002-11-10 19:48:36 +00:00
Stig Venaas
0f86bbde87 Fix referrals and alias. For ldbm and I think for bdb, this is necessary
now that we normalize to lower case. Should be merged into 2.1.
2002-10-31 16:48:04 +00:00
Jong Hyuk Choi
ca8ab9d809 changes in bdb_psearch() - search scope check 2002-10-29 08:05:45 +00:00
Jong Hyuk Choi
3a9229a3e9 Use of slap_schema.si_ad_entryUUID in bdb_psearch() 2002-10-28 23:57:54 +00:00
Kurt Zeilenga
293158f432 code cleanup 2002-10-27 03:42:32 +00:00
Pierangelo Masarati
7b3f889ec1 fix hasSubordinate filtering; now it can be safely turned on 2002-10-26 16:18:31 +00:00
Jong Hyuk Choi
15c5943edd Addition of servers/slapd/lcup.c and servers/slapd/back-bdb/lcup.c for persistent search 2002-10-25 17:57:03 +00:00
Jong Hyuk Choi
8074294f1d LCUP persistent search code drop 2002-10-25 17:51:30 +00:00
Kurt Zeilenga
2b2e406b46 Make sure that newSuperior isn't old superior 2002-10-25 01:09:50 +00:00
Kurt Zeilenga
cb73d243fb More "entry" level ACLs for entry add, delete, and rename. 2002-10-07 19:19:29 +00:00
Kurt Zeilenga
d19db4b7ed Fix up last commits 2002-10-04 23:42:27 +00:00
Kurt Zeilenga
9fbcc90bd5 Add "entry" ACL checks for add/delete/rename ops 2002-10-04 23:26:28 +00:00
Kurt Zeilenga
33248a02e1 Code cleanup (no functional changes) 2002-10-01 04:07:55 +00:00
Howard Chu
104f8cc409 Simpler fix for NO_THREADS 2002-09-19 06:34:53 +00:00
Howard Chu
ff9e580d33 Updated BDB_HIER for current API 2002-09-19 06:08:12 +00:00
Howard Chu
6fa0363d09 Don't set bdb yield with NO_THREADS 2002-09-19 01:38:00 +00:00
Howard Chu
919274432b Fixes for NO_THREADS
Use a per-env locker ID
	Always set lock_detect, since we allow slapadd etc. concurrently
Also removed unused lock_detect_task code. lockdetect config keyword only
needs <policy>, no <seconds> argument.
2002-09-19 01:13:27 +00:00
Kurt Zeilenga
a1da292989 Wrap csn filter frees with sync mode check. 2002-09-15 22:42:50 +00:00
Kurt Zeilenga
0ad91236fd Add LDAP_CONTROL_CLIENT_UPDATE to list of supported controls 2002-09-15 22:28:38 +00:00
Kurt Zeilenga
2a9783bd5e Fix typos in last commit 2002-09-15 22:13:25 +00:00
Kurt Zeilenga
629a0219f2 Cleanup up LDAP_CLIENT_UPDATE code... including some bug fixing. 2002-09-15 21:08:34 +00:00
Jong Hyuk Choi
1509e321de LCUP Response Control Code 2002-09-14 00:29:06 +00:00
Howard Chu
3e61f0630d Fix ITS#2082, bdb_idl_intersection 2002-09-13 20:19:56 +00:00
Howard Chu
7e493b87be Fix debug messages 2002-09-13 20:19:15 +00:00
Howard Chu
a8297e6d22 Fix test of uninit'd rc at LOCK_ID 2002-09-13 12:32:08 +00:00
Howard Chu
1263e40b55 Set BDB's global allocators to ber_*, don't bother with the per-env setting. 2002-09-12 02:47:18 +00:00
Howard Chu
35e8b8325d Unifdef BDB_IDL_MULTI. 2002-09-10 04:20:45 +00:00
Kurt Zeilenga
e6fdfd4cee only optimize objectClass filters when (objectClass=*) is
presented... avoids (&(objectClass=*)(objectClass=foo)) problems.
2002-09-09 23:25:22 +00:00
Howard Chu
9953574b47 Fix: if slapadd was used with an un-ordered LDIF file, we can't rely on
entries having ascending entry IDs. Always start from the beginning of
the candidate list. (This should be fine in the general case as well,
since the subtree index will also have refined the candidates.)
2002-09-09 04:24:38 +00:00
Kurt Zeilenga
37d9880495 Some LCUP clean up 2002-09-06 00:29:20 +00:00
Kurt Zeilenga
ab80b03057 back_attribute() should use ACL_AUTH not ACL_READ (at
least for current callers, may need to pass it the
permission level)
2002-09-05 02:37:10 +00:00
Jong Hyuk Choi
4b48c05a8e LDAP Client Update Protocol - non-persistent update (TODO: response control ...) 2002-09-04 02:00:42 +00:00
Pierangelo Masarati
966dd1bdca definitely fix NOOP in back-bdb 2002-08-31 17:03:42 +00:00
Pierangelo Masarati
0d5fe062e2 improved support for NOOP; add is fine, the other write funcs still need work 2002-08-31 12:00:39 +00:00
Pierangelo Masarati
aea52e5bc9 define macros for appropriate sizing of lutil buffers 2002-08-31 10:48:02 +00:00
Howard Chu
0614b5fdbf Fix unindent commit 2002-08-30 11:48:47 +00:00
Howard Chu
4a3a557827 Use DB_NODUPDATA when adding IDs. Silence log for DB_NOTFOUND in delete_key,
let caller log it if they care.
2002-08-30 11:37:43 +00:00
Howard Chu
9d4f5e13e8 Unindented a level. Fixed logging of keys. 2002-08-30 11:21:20 +00:00
Howard Chu
f32803e738 Don't mask DB_KEYEXIST errors in bdb_idl_insert_key, let dn2id see them.
Ignore DB_KEYEXIST and DB_NOTFOUND errors in key_change.
2002-08-30 10:41:46 +00:00
Pierangelo Masarati
82cb585d32 trim unused var 2002-08-29 12:41:07 +00:00
Pierangelo Masarati
c38f1a63b0 this test is useless, since noop is masked SLAP_CTRL_UPDATE 2002-08-29 12:17:28 +00:00
Pierangelo Masarati
fbc11bd16a - added the capability to filter based on hasSubordinate attribute
to back-bdb, back-ldbm and back-sql (the latter with limitations);
- added handling of ":dn" attributes to extended rfc2254 filters
  and to matched value filter
- altered the behavior of get_mra() when a matching rule is given:
  now it checks whether it is compatible with the attribute syntax
  and, in case it is, the given mr is used.  In case of no type,
  the check is delayed when filtering
2002-08-29 10:55:48 +00:00
Pierangelo Masarati
f4c5362955 add bdb_hasSubordinates() helper 2002-08-29 10:50:53 +00:00
Howard Chu
9fa8eded08 ITS#2040 - in bdb_idl_fetch_key() use a large enough buffer to get the
entire IDL at once, to avoid triggering BDB resource leaks.
2002-08-27 15:11:04 +00:00
Kurt Zeilenga
fb7ac08ada cleanup 2002-08-26 19:13:44 +00:00
Howard Chu
53b194fa32 Fix oc_filter, it could exit early before counting the full depth of the
filter tree. Also, only give special treatment to objectclass=*.
2002-08-26 12:04:53 +00:00
Howard Chu
5ff509f2d3 Fix previous commit, BDB_REUSE_LOCKERS was inside a BDB version #ifdef
but is not version-dependent.
2002-08-25 11:06:35 +00:00
Howard Chu
1524f86778 Fix ITS#2044 duplicate search results due to broken bdb_idl_union 2002-08-25 10:18:01 +00:00
Howard Chu
5d9479a3e8 Add debug if bdb_cache_entry_db_lock fails to get a lock
to assist in diagnosing ITS#1986
2002-08-24 19:23:30 +00:00
Howard Chu
d6449b1d57 Experimental code that uses one locker ID per thread. Seems to work OK,
is enabled by default. #undef BDB_REUSE_LOCKERS in back-bdb.h to disable.
Probably needs to be disabled when built with NO_THREADS.
2002-08-24 08:11:08 +00:00
Kurt Zeilenga
23efa07a99 use ldap_charray_*() instead of charray_*() 2002-08-24 00:55:24 +00:00
Howard Chu
cd60deb4a9 OS/390 EBCDIC support 2002-08-22 04:39:59 +00:00
Howard Chu
3b9f4a82ee Added support for BDB 4.1.17 2002-08-22 04:00:06 +00:00
Kurt Zeilenga
e1536926b7 Quick check of LOCK_ID() return. Likely should retry... but not forever. 2002-08-20 03:10:08 +00:00
Kurt Zeilenga
9fc4a749dc More places where LOCK_ID() calls need to be checked. 2002-08-20 02:57:06 +00:00
Pierangelo Masarati
b95ab4ac64 add function slap_modrdn2mods that prepares modifications list for delete/add old/new rdn values 2002-08-16 16:35:16 +00:00
Howard Chu
9fad71dc9b Never use DB_RECOVER flag when opening DB_ENV. Recovery must be done
manually. Automatic recovery would interfere with gentlehup restarts.
2002-08-11 00:30:46 +00:00
Howard Chu
f7859e9913 ITS#2015 give correct index key back to presence_candidates 2002-08-08 17:27:50 +00:00
Howard Chu
44ac8a3564 Plug config leaks 2002-08-07 08:43:52 +00:00
Howard Chu
771f70eb0f Fix ITS#1994, Windows heap consistency 2002-08-03 02:57:52 +00:00
Howard Chu
d01375b200 Fix bdb_idl_union of range and list (related to ITS#1969 2002-07-31 23:43:56 +00:00
Kurt Zeilenga
838643d5ad operationsError != Internal Error
hence, s/LDAP_OPERATIONS_ERROR/LDAP_OTHER/
2002-07-31 22:49:02 +00:00
Howard Chu
5a01db28e3 Moved slap_strcopy, slap_strncopy to lutil_strcopy, lutil_strncopy 2002-07-27 00:24:02 +00:00
Howard Chu
aab953ba3f Change list->range conversion again, avoid extra c_put. 2002-07-19 23:19:53 +00:00
Jong Hyuk Choi
db490b4cef change in the IDL conversion from a list to a range 2002-07-18 15:34:51 +00:00
Howard Chu
e514685144 Tweak: For slap tools, don't set DB_RECOVERY flag when opening DB environment.
This allows slapcat to run while slapd is running, otherwise causes db
corruption.
2002-07-13 00:18:15 +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
Howard Chu
7e8c77c5de Fix dynamic module linking 2002-06-21 01:34:53 +00:00
Jong Hyuk Choi
09a2a8fbce DB_RMW flag to dn2id and id2entry 2002-06-10 19:02:25 +00:00
Howard Chu
3304d125c4 ITS#1837, one-level searches on leaf entries 2002-06-06 11:27:52 +00:00
Jong Hyuk Choi
976fb2265f remove dbenv->lock_put() call from transaction-protected operations 2002-06-06 10:14:14 +00:00
Kurt Zeilenga
26649fb164 Minor cleanup 2002-06-01 20:21:59 +00:00
Kurt Zeilenga
d6d18049dc reference scope checks 2002-06-01 20:01:32 +00:00
Jong Hyuk Choi
7341dc5db6 redesign of back-bdb locking :
cache entry is locked by Berkeley DB lock primitives.
2002-05-31 20:49:19 +00:00
Kurt Zeilenga
02fb60d3da Delete extranous assert() 2002-05-23 03:17:58 +00:00
Howard Chu
3831d98237 Turn these functions on again. Need backend_attribute for SASLauthz stuff.
Fix to work with NULL op.
2002-05-07 22:35:01 +00:00
Howard Chu
a352bcaa16 Fix DN freeing in BDB_HIER case. (BDB_HIER is still broken, seems to have
a bad interaction with the entry cache.)
2002-05-03 14:47:29 +00:00
Pierangelo Masarati
033631f30a s/LDAP_UNWILLING_TO_PERFORM/LDAP_ADMINLIMIT_EXCEEDED/ when search candidates exceed unckecked limit 2002-05-03 10:27:37 +00:00
Kurt Zeilenga
8c152396b9 Matched Values implementation (ITS#1776) based upon submission
form Mikhail Sahalaev <M.Sahalayev@pgr.salford.ac.uk>.
Further work needed:
	add testxxx-matchedvalues
	rework ldapsearch(1) portion of patch to generalize use of options
---
Copyright 2001, Mikhail Sahalaev, All rights reserved.
This software is not subject to any license of University Of
Salford.

Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice
is preserved.
2002-05-02 18:56:56 +00:00
Howard Chu
7fae7fe155 Changed be_[n]suffix, be_[n]suffixAlias to BerVarray. No more bvec's anywhere. 2002-05-01 18:50:14 +00:00
Jong Hyuk Choi
5291b41336 pointer initialization 2002-04-29 16:42:41 +00:00
Pierangelo Masarati
d3058532c9 honor limits if below soft limit 2002-04-29 10:12:50 +00:00
Howard Chu
43167d0fa6 Fix ITS#1774, BDB keys need ulen and flags to be initialized because BDB
tries to retrieve both the key and the data.
2002-04-25 05:16:15 +00:00
Jong Hyuk Choi
60b1ee1ba9 Patch for ITS# 1643 2002-04-19 21:41:32 +00:00
Jong Hyuk Choi
b7f0983efa Hallvard B. Furuseth's patch for cache lock and mutex 2002-04-16 14:03:13 +00:00
Jong Hyuk Choi
efa7b93b23 concurrent cache access: separation of cache lock (reader/writer) and lru lock (mutex) 2002-04-15 16:40:04 +00:00
Jong Hyuk Choi
737aee17b0 fix: changing bdb_cache_return_entry_w() to bdb_cache_return_entry_r() 2002-04-11 23:17:36 +00:00
Howard Chu
efecf4e121 ITS#1733 eliminate o_abandonmutex 2002-04-11 08:03:40 +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
Howard Chu
ca4cbc4a49 ITS#1709 j was logged uninitialized 2002-04-05 06:55:25 +00:00
Howard Chu
11bbd076a8 ITS#1711 txn was uninitialized 2002-04-05 06:54:39 +00:00
Howard Chu
ba5a584729 ITS#1716 is_entry_subentr/ies/y/ 2002-04-05 06:28:52 +00:00
Howard Chu
380806eebe ITS#1726, always use bdb_db_hash(). 2002-04-05 05:59:04 +00:00
Kurt Zeilenga
b0b8546f05 Patch: More format bugs (ITS#1702)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
2002-04-02 18:56:26 +00:00
Pierangelo Masarati
031991e0b4 do not return a pointer to an automatic variable in case of success 2002-03-30 08:44:29 +00:00
Kurt Zeilenga
111b464642 move ldap_int_put_filter to ldap_pvt_put_filter
and other cleanup
2002-03-30 00:42:40 +00:00
Julius Enarusai
5f154f2e57 Added LDAP_LOG messages 2002-03-26 22:40:31 +00:00
Julius Enarusai
82cd035505 Added LDAP_LOG messages 2002-03-26 22:17:08 +00:00
Julius Enarusai
73fcfa6e59 Added LDAP_LOG messages to operational.c and fixed compile error in dn2id.c 2002-03-26 21:34:03 +00:00
Julius Enarusai
7b05699803 Added LDAP_LOG messages 2002-03-26 21:14:23 +00:00
Julius Enarusai
437bf1ba70 Added LDAP_LOG messages 2002-03-26 20:04:30 +00:00
Julius Enarusai
5f466ae128 Added LDAP_LOG messages 2002-03-26 18:52:36 +00:00
Julius Enarusai
bb38d574ac Added LDAP_LOG messages 2002-03-26 18:01:58 +00:00
Julius Enarusai
d881efa172 Added LDAP_LOG messages 2002-03-26 17:47:52 +00:00
Julius Enarusai
2027e7322a Added LDAP_LOG messages 2002-03-26 17:34:57 +00:00
Julius Enarusai
4d501cacd9 Added LDAP_LOG messages 2002-03-26 17:00:14 +00:00
Kurt Zeilenga
4216f19ed1 cleanup 2002-03-24 02:14:00 +00:00
Pierangelo Masarati
50baa90139 port hasSubordinates handling to back-bdb 2002-03-23 11:04:09 +00:00
Howard Chu
780d427fa6 In bdb_idl_fetch_key, the DB_MULTIPLE buffer must be a multiple of 1024
bytes in size.
2002-03-20 01:27:08 +00:00
Howard Chu
9a154f89b0 Rewrote bdb_idl_insert_key and bdb_idl_delete_key for BDB_IDL_MULTI,
parses range IDLs directly to correctly handle changes to the range
boundaries. (bdb_idl_insert_key used to call bdb_idl_fetch_key to
handle ranges; bdb_idl_delete_key never handled ranges before.)
2002-03-20 00:51:34 +00:00
Julius Enarusai
5af8610ba0 Added LDAP_LOG messages 2002-03-19 17:44:11 +00:00
Howard Chu
cc21d814b3 Use a single malloc'd block for all the temporary IDL storage in the
filter processing, to avoid runtime stack blowout. Also removes the
need for gigantic thread stacks.
2002-03-18 11:40:58 +00:00
Howard Chu
7e68108d4a Fix previous commit, missing semicolon 2002-03-18 08:55:21 +00:00
Kurt Zeilenga
9fead9d2ce fix compilation error 2002-03-17 23:39:45 +00:00
Julius Enarusai
a61d2b914d Added LDAP_LOG messages 2002-03-15 18:57:12 +00:00
Julius Enarusai
e89c8b4f63 Added/Modified LDAP_LOG messages to match the existing Debug messages 2002-03-15 17:50:28 +00:00
Julius Enarusai
d8413fac32 Added LDAP_LOG messages to match existing Debug messages 2002-03-15 17:21:06 +00:00
Julius Enarusai
35bc1bf43c Added LDAP_LOG messages to these files to match the existing Debug messages 2002-03-14 22:23:44 +00:00
Julius Enarusai
02412251f1 Added LDAP_LOG messages to the above files to match the existing Debug messages 2002-03-14 16:34:24 +00:00
Kurt Zeilenga
dbfc18985a Align with back-ldbm version 2002-03-12 22:46:13 +00:00
Kurt Zeilenga
93a45a02aa Update handling of AND/OR indexing where element is undefined. 2002-03-04 22:32:33 +00:00
Kurt Zeilenga
ef7883c028 Fix substring index error handling 2002-03-01 19:07:15 +00:00
Kurt Zeilenga
348e489b35 #ifdef experimental controls 2002-02-18 19:48:27 +00:00
Pierangelo Masarati
a117c5eee7 use ldap_bv2[r]dn and turn ldap_str2[r]dn into wrappers 2002-02-13 11:46:33 +00:00
Kurt Zeilenga
9b18295f4f Don't print unprintable keys 2002-02-12 19:29:27 +00:00
Kurt Zeilenga
0006ec0a46 Revert most of last change 2002-02-12 01:30:35 +00:00
Kurt Zeilenga
c912616590 Fix bug in last commit 2002-02-11 21:07:55 +00:00
Kurt Zeilenga
488862105f Use UUID to generate a GID for txn_prepare. Based upon submission
from Jong Hyuk Choi <jongchoi@us.ibm.com> (ITS#1585 for ITS1575).
2002-02-11 17:45:39 +00:00
Kurt Zeilenga
4554557171 Move BDB backend initialization to bdb_open. bdb_initialize()
shouldn't do much more than register callbacks.
2002-02-11 17:31:09 +00:00
Kurt Zeilenga
32fb8b0bff Add ACL state recording to avoid multiple evaluation of
value-independent access controls.
2002-02-09 05:14:17 +00:00
Howard Chu
b2eec644fa Minor IDL tweaks 2002-02-08 06:42:34 +00:00
Kurt Zeilenga
6b29def1c8 switch to openldap-data directory 2002-02-02 06:26:06 +00:00
Kurt Zeilenga
6df9b54592 Switch to openldap-data directory 2002-02-02 06:25:05 +00:00
Kurt Zeilenga
1bf1621efe Add cache txn_prepare code based upon submission (ITS#1575) by
Jong Hyuk Choi <jongchoi@us.ibm.com>.  Needs a bit more work
(GID should be globally unique).
2002-02-02 03:28:32 +00:00
Kurt Zeilenga
c2b946549a Adjust size offsets, needs work 2002-01-31 00:10:24 +00:00
Kurt Zeilenga
1116bf4f45 Misc WinNT build updates 2002-01-30 04:06:31 +00:00
Kurt Zeilenga
d3c26b6772 disable debug checks 2002-01-29 05:05:25 +00:00
Kurt Zeilenga
b57c11f4bd BDB_ALIASES and BDB_SUBENTRIES cleanup 2002-01-29 04:53:47 +00:00
Kurt Zeilenga
ffebea4a8b Add search no-op support. 2002-01-29 04:33:19 +00:00
Kurt Zeilenga
48bf651459 Fix Debug() statement 2002-01-29 00:05:30 +00:00
Kurt Zeilenga
4f0e4f60bd Add first cut BDB no-op control support. 2002-01-29 00:02:27 +00:00
Kurt Zeilenga
98a2c60c3a Delete CDB (no transactions) support 2002-01-28 22:57:50 +00:00
Kurt Zeilenga
14662be692 Add whoami extended operation.
Add no-op control (needs backend implementation)
Updated modify password extended option API
Kludged control infrastructure to support frontend only controls
2002-01-28 20:25:30 +00:00
Howard Chu
80f404f247 Fix result 2002-01-26 15:06:53 +00:00
Pierangelo Masarati
563736859c appropriately detect index delete failure 2002-01-26 14:33:31 +00:00
Howard Chu
6bac96b0bd Changed dnParent to void instead of int. (It always returned success...) 2002-01-26 08:44:59 +00:00
Howard Chu
7f54a89f32 Changed be_issuffix and dnParent to struct bervals 2002-01-26 06:40:56 +00:00
Kurt Zeilenga
a1987ae99b Missed one db.bv_val in Debug statement 2002-01-26 01:04:20 +00:00
Kurt Zeilenga
4e1f534c96 Straighten out some argument passing... cache code need more cleanup,
uses deprecated routines...
2002-01-26 01:01:10 +00:00
Howard Chu
713e6beb8d Entry caching. Based on ITS#1545 from Jong Hyuk Choi, jongchoi@us.ibm.com 2002-01-25 07:19:01 +00:00
Pierangelo Masarati
5fc7217f1b final dn_parent elimination in back-bdb 2002-01-22 08:18:12 +00:00
Kurt Zeilenga
dc0f90d36d Set lock detector to DEFAULT, not NORUN.
Clean up some error handling
2002-01-21 08:19:28 +00:00
Kurt Zeilenga
f868e4b34e ITS#1541 fix. 2002-01-20 17:27:53 +00:00
Kurt Zeilenga
8eaaa67db0 Move {add,replace,delete}_value() routines to frontend and share.
Add error detail reporting.
2002-01-19 19:54:48 +00:00
Kurt Zeilenga
c043a9c0cf Fix modify/replace. 2002-01-19 05:55:18 +00:00
Howard Chu
a8658a8163 Reset Entry->e_ocflags to 0 if objectClass attr is modified.
(Only an issue with entry caching...)
2002-01-19 04:51:42 +00:00
Howard Chu
44f0efb44f Defined some ObjectClass->soc_flags values, changed is_entry_*objectclass
macros to use flags
2002-01-19 02:58:00 +00:00
Kurt Zeilenga
960fa831a6 Add checks for duplicate values. 2002-01-19 01:56:57 +00:00
Kurt Zeilenga
9ff7e0d263 Fix compilation error 2002-01-18 17:04:29 +00:00
Howard Chu
5ab0d4af84 Added ldap_pvt_thread_yield() after txn_abort 2002-01-18 13:34:50 +00:00
Howard Chu
cf8349f895 Added "fewest" lockdetect keyword, to abort txn with fewest locks 2002-01-18 13:32:01 +00:00
Howard Chu
9f1591d5e9 Use DB_RMW in idl_fetch_key if called as part of a txn. 2002-01-18 13:29:10 +00:00
Howard Chu
7db33f87a9 Do deadlock detection on any conflict, instead of in a separate thread 2002-01-18 13:28:07 +00:00
Howard Chu
6d58126c34 Added compatibility macros for BDB3/4 lock_get, txn_id. 2002-01-18 13:27:25 +00:00
Howard Chu
26d0410de0 Cleanup while loops in dn2id_add/delete 2002-01-17 23:45:40 +00:00
Pierangelo Masarati
9b4f933649 dn_parent => dnParent 2002-01-17 22:47:55 +00:00
Pierangelo Masarati
e6332812e0 another round replacing dn_parent ... 2002-01-17 22:37:38 +00:00
Pierangelo Masarati
4624bbafba another round replacing dn_parent ... 2002-01-17 19:58:19 +00:00
Howard Chu
5c2bc277b8 In db_destroy, cannot checkpoint a NULL dbenv. 2002-01-17 10:05:04 +00:00
Howard Chu
f2f6c516ab DB_NODUPDATA is not a valid open flag 2002-01-17 09:48:44 +00:00
Kurt Zeilenga
492762f1c5 Don't use BDB group/attribute callbacks as they may cause deadlock.
Add code to bdb_attribute and bdb_group where use TXN id and to
provide error, but need to rework callers (and their callers) to
ensure error is properly bubbled up to the backend operation routine
handling the transaction.  Ugh.
2002-01-17 03:58:52 +00:00
Pierangelo Masarati
0842db2a8b fix ber_*str renaming 2002-01-16 18:50:45 +00:00
Howard Chu
356a98a363 Fix bdb_idl_fetch/insert_key. Still fails test011. 2002-01-16 15:22:08 +00:00
Kurt Zeilenga
d2f5d75885 Remove unused deprecated DN routines.
Only dn_validate, dn_normalize, and dn_parent remain (for now).
2002-01-16 00:16:51 +00:00
Kurt Zeilenga
13af7fb073 Misc. cleanup, remove lint, remove unused deprecated functions, etc. 2002-01-15 07:29:15 +00:00
Howard Chu
6981960be0 Deleted autosubtypes support. 2002-01-15 01:50:09 +00:00
Howard Chu
fde56a188c More fixes for autosubtype index generation 2002-01-14 20:49:06 +00:00
Howard Chu
f4cfb13f2c Fix previous commit 2002-01-14 20:26:51 +00:00
Howard Chu
2e8a98e3a1 Fix subtype indexing. Really really made it the default. 2002-01-14 10:37:08 +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
Howard Chu
92481f7057 Modify performance patch from Gertjan van Wingerde <gwingerde@home.nl> 2002-01-13 23:23:23 +00:00
Howard Chu
8b969479f4 Turn on BDB_IDL_MULTI by default 2002-01-13 22:26:29 +00:00
Pierangelo Masarati
fafce1601e consistently use dn_match macro throughout slapd 2002-01-12 18:17:13 +00:00
Pierangelo Masarati
f8fb4aca76 error message from be_entry_put tool backend function 2002-01-12 16:00:51 +00:00
Kurt Zeilenga
f57057ee01 Add system schema flags to backends supporting system schema. 2002-01-11 18:26:17 +00:00
Kurt Zeilenga
c816ebc225 Add Backend argument to entry_schema_check() to support system schema
checks (in addition to user application schema checks).
2002-01-10 19:37:03 +00:00
Kurt Zeilenga
f662a39d41 Add start of subentry support... still need to sort out
administrativeRole restricts.
2002-01-10 18:18:37 +00:00
Kurt Zeilenga
74421a28ec Round 2 of subentry changes 2002-01-09 19:43:15 +00:00
Kurt Zeilenga
9b0585f393 Add very basic subentry search support. 2002-01-09 19:21:07 +00:00
Kurt Zeilenga
39c02506de Fix problems caused by lint removal 2002-01-09 18:18:36 +00:00
Kurt Zeilenga
22f993f89b Remove some lint caused by the changes in const'ification 2002-01-09 06:30:23 +00:00
Howard Chu
26e327f32e Fix some debug statements 2002-01-06 07:21:06 +00:00
Howard Chu
ec46a2f33a Use 'm' ber_scanf format where convenient 2002-01-06 06:11:01 +00:00
Kurt Zeilenga
c83b406fdc Fix compile errors 2002-01-05 19:36:41 +00:00
Pierangelo Masarati
d0261ee534 leftover ber_bvdup eliminated; rewritten ber_bvdup in terms of ber_dupbv; eliminated wrapper macro; other ber_* improvements 2002-01-05 17:49:59 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Howard Chu
9ad0c5a2e5 Fix from Jonghyuk Choi jongchoi@us.ibm.com; return 0 IDs when bdb_key_read
returns DB_NOTFOUND.
2002-01-03 05:53:27 +00:00
Howard Chu
f52cc9bab5 Change struct berval ** to BVarray 2002-01-02 11:00:36 +00:00
Howard Chu
b2809cb330 Fix dnParent to return "" for root 2002-01-01 13:32:10 +00:00
Howard Chu
de97928160 Remove abandon cruft 2002-01-01 11:38:30 +00:00
Howard Chu
1a7d129585 Use ldap_str2rdn instead of rdn_attr 2002-01-01 09:18:34 +00:00
Howard Chu
743c402265 Changed search attrs from struct berval ** to AttributeName * 2001-12-31 11:35:52 +00:00
Howard Chu
07b4ad7fa2 Use dnIsSuffix 2001-12-30 10:47:28 +00:00
Howard Chu
185ff129b5 Change struct berval * to struct berval in various structures 2001-12-29 15:01:10 +00:00
Howard Chu
dd59babf43 More cleanup 2001-12-29 10:25:19 +00:00
Howard Chu
68daf5bee9 Misc cleanup 2001-12-29 05:44:37 +00:00
Howard Chu
975a5e9a24 Added dnPretty2/dnNormalize2 using preallocated destination berval 2001-12-29 04:48:00 +00:00
Howard Chu
c4b432cb3f Fix newSuperior handling. Back out previous commit. 2001-12-29 02:56:08 +00:00
Howard Chu
514f605ef5 Fix modrdn newSuperior checks 2001-12-28 09:48:52 +00:00
Howard Chu
d6a37432bd Changed dn_rdn/dn_rdnlen to struct berval 2001-12-28 08:38:24 +00:00
Kurt Zeilenga
cddf7e0e00 More struct berval DN changes
decrease dependency on dn_validate/dn_normalize
2001-12-27 07:13:13 +00:00
Howard Chu
ef31250591 More struct berval fixes 2001-12-27 01:38:15 +00:00
Howard Chu
3e826ae1c7 More struct berval fixes for modrdn 2001-12-27 00:58:14 +00:00
Kurt Zeilenga
b503ca65ee Misc cleanup 2001-12-27 00:31:55 +00:00
Kurt Zeilenga
b144879650 Quick struct berval DN support for defer alias API.
Underlying code needs work.
2001-12-27 00:26:59 +00:00
Kurt Zeilenga
3a8f99a24d add group.c 2001-12-27 00:18:09 +00:00
Kurt Zeilenga
f2eadedd5f Quick patch to support struct berval dn2entry changes 2001-12-27 00:10:44 +00:00
Kurt Zeilenga
467213affd Update groups to use struct berval DNs. 2001-12-26 23:49:19 +00:00
Kurt Zeilenga
a553a03586 More struct berval DNs changes 2001-12-26 23:43:28 +00:00
Howard Chu
e8fa25a215 Changed Filter.f_dn to struct berval* 2001-12-26 23:37:59 +00:00
Howard Chu
66dc664930 Some more (incomplete) struct berval conversion 2001-12-26 23:26:17 +00:00
Kurt Zeilenga
21cecb3831 Update referral handling to use struct berval DNs. 2001-12-26 20:59:24 +00:00
Kurt Zeilenga
bd0135ccb4 Move search, modify, and modrdn APIs to struct berval DNs.
Much clean up is needed.
2001-12-26 19:50:40 +00:00
Kurt Zeilenga
24a4d888dc move compare and delete to struct berval DNs 2001-12-26 19:05:26 +00:00
Kurt Zeilenga
d64ec6ee0d modify be_referral to use struct berval DNs. 2001-12-26 17:40:34 +00:00
Howard Chu
2a3dc7ab8f Moved bdb_strcopy to slap_strcopy 2001-12-26 15:52:46 +00:00
Howard Chu
d0add35348 Changed get_limits to struct berval* 2001-12-26 15:28:01 +00:00
Howard Chu
d474789d0d First pass at converting bind to struct bervals 2001-12-26 11:41:38 +00:00
Howard Chu
68b1bbb89d Changed search attrs to struct berval **.
Use typedefs for all backend functions, to minimize work in future API
updates. (back-*/external.h will never need updating in the future.)
2001-12-26 08:17:44 +00:00
Howard Chu
34214776d1 Minor cleanup 2001-12-26 06:21:06 +00:00
Kurt Zeilenga
2dd27b0786 More struct berval DNs 2001-12-25 19:48:26 +00:00
Kurt Zeilenga
7431cb9eee FIx up replog calls, add replog call to bdb passwd 2001-12-25 18:20:35 +00:00
Kurt Zeilenga
ae0a17fa4e Adjust e_name.bv_len on modrdn 2001-12-25 03:03:03 +00:00
Kurt Zeilenga
5ee89d6167 Use struct berval DNs for root DN and update DN 2001-12-25 00:05:26 +00:00
Howard Chu
a61b777cdc Fix uninitialized struct berval* to avoid assert in dnNormalize 2001-12-24 20:12:30 +00:00
Kurt Zeilenga
f6085d3f82 Every quick mod to use a struct berval for e_dn/e_ndn. No bv_len yet. 2001-12-24 16:53:47 +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
883196d348 Clean up some symbol scoping 2001-12-24 06:36:44 +00:00
Howard Chu
56bc0b64df Fix - don't free constant database names 2001-12-20 08:47:32 +00:00
Howard Chu
773b3aff16 more cleanup from jon@symas.com 2001-12-18 04:52:55 +00:00
Howard Chu
7c8c5213b1 BDB_MULTI still needs the dupsort function. 2001-12-18 04:41:40 +00:00
Howard Chu
4ddb7c5730 Use a 4-byte constant for the presence index key. Set the index db hash
function to simply pass thru the key value, which is already a hash value.
2001-12-16 14:21:47 +00:00
Howard Chu
bf61a1ca9d Use DB_HASH instead of DB_BTREE for index databases. Since index keys are
mainly 4-byte hashes already, there is no locality-of-reference to exploit
as a Btree. About a 7% performance gain.
2001-12-15 23:21:37 +00:00
Howard Chu
4ed4b3f0c0 Revert previous checkin, DB_NODUPDATA is not valid on db->set_flags().
It must be specified on individual put() operations (and already is).
2001-12-15 23:00:46 +00:00
Howard Chu
335294e190 More cleanup for bdb_db_close 2001-12-15 08:11:59 +00:00
Howard Chu
ce81cef289 Do a regular entry_free on entries from do_add 2001-12-15 06:25:47 +00:00
Howard Chu
67a64c2935 Fixed suffix DN_SUBTREE again. Index was still being written even though
it was not being read.
2001-12-10 18:09:07 +00:00
Howard Chu
75064ce91d Fix check for DN_SUBTREE on be suffix 2001-12-10 16:59:37 +00:00
Howard Chu
efe8ac1bf9 Revert previous commit. Checked in by mistake. 2001-12-10 12:25: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
Kurt Zeilenga
30831a4012 misc cleanup 2001-12-09 18:57:46 +00:00
Kurt Zeilenga
abd9be4def Remove lint and misc MSVC updates 2001-12-09 02:34:45 +00:00
Howard Chu
109307547e Clean up bdb_entry_release / bdb_entry_return 2001-12-09 01:14:32 +00:00
Howard Chu
21c5674d34 Fix previous commit... 2001-12-08 13:07:01 +00:00
Howard Chu
fd93e0721b Cleanup previous commit 2001-12-08 11:15:55 +00:00
Howard Chu
ad9d17d537 Added dn_rdnlen. Fixed rdn leak in limits.c. 2001-12-08 11:08:26 +00:00
Howard Chu
e2c2de11c3 Converted all use of dn_parent to the in-place version. (Fixed a pdn leak
in back-sql along the way.)
2001-12-08 10:37:42 +00:00
Howard Chu
a06bc9007c Switched to dn_parent1, cleaned up dn2id_add/delete 2001-12-08 10:10:04 +00:00
Howard Chu
2721df21d4 Changed be_nsuffix from char ** to struct berval **, removed nsufflen 2001-12-08 05:17:31 +00:00
Howard Chu
55a217d9ae Changed be_nsuffix from char ** to struct berval ** to eliminate strlen's 2001-12-08 05:15:58 +00:00
Kurt Zeilenga
e2173e3c20 Disallow duplicate duplicate data 2001-12-08 04:30:23 +00:00
Howard Chu
840a8c95ed Fix typos in previous commit 2001-12-08 01:16:10 +00:00
Kurt Zeilenga
d46252fb21 Port reference scope fix from back-ldbm 2001-12-07 22:41:43 +00:00
Howard Chu
505a8693e6 Some fixes for BDB_IDL_MULTI. Experimental back-hdb code. 2001-12-07 12:38:25 +00:00
Howard Chu
1d9818a8da Re-introduce BDB_ID2ENTRY_PAGESIZE. Even if the index databases can get
by on 4K pages, the id2entry database still needs more (16K).
2001-12-07 07:07:55 +00:00
Howard Chu
d0c0dfcce6 Minor fixes for BDB_IDL_MULTI 2001-12-07 06:48:38 +00:00
Howard Chu
efa14463ec Missed a spot where root DN_SUBTREE index was still getting written. 2001-12-07 06:48:12 +00:00
Howard Chu
66266f9c25 Bare minimum changes to support BDB 4.0 2001-12-07 05:05:00 +00:00
Howard Chu
0552b1c53f NT updates from jon@symas.com. 2001-12-07 04:03:25 +00:00
Howard Chu
a19a5d8c15 When using BDB_IDL_MULTI, there are no longer any issues with storing
large IDLs. Concurrency is improved by using as small a page size as
possible. So, set the pagesize back to the default 4096 in this case.
2001-12-07 01:40:08 +00:00
Howard Chu
11b3c142e4 Fix for BDB_IDL_MULTI to work. 2001-12-06 14:15:47 +00:00
Howard Chu
859e283834 Experimental index management. Uncomment BDB_IDL_MULTI in back-bdb.h
to activate. Needs to check limits in bdb_idl_insert_key, will get to
that later.
2001-12-06 13:20:18 +00:00
Howard Chu
6a5a30ec34 Fix previous commit 2001-12-06 03:29:23 +00:00
Howard Chu
6e0861b671 Minor rearrangement, give pdn to dn2id_add to avoid getting it twice. 2001-12-06 03:26:37 +00:00
Howard Chu
52beecbdf4 Fix, index databases were not being closed on shutdown. 2001-12-06 03:24:09 +00:00
Howard Chu
19c7fd49ca tool_reindex now regenerates the dn2id index as well as the others. 2001-12-05 01:36:18 +00:00
Howard Chu
8697aa4b8d Fixup bdb_entry_release now that entry_decode uses two memory blocks
instead of just one.
2001-12-05 00:24:13 +00:00
Kurt Zeilenga
493b415255 Rework indexing code, removing "autolang" and making
"subtypes" and "lang" default behavior.
2001-12-05 00:06:03 +00:00
Howard Chu
180e1d5269 Don't maintain a DN_SUBTREE index for the backend suffix, just return
BDB_IDL_ALL. This has a huge impact on I/O and txn logs.
2001-12-03 14:04:06 +00:00
Howard Chu
70a900e34e Rewrote entry_encode/entry_decode again, uses 50% less disk space. 2001-12-03 14:00:19 +00:00
Howard Chu
d68b891ced In presence_candidates(), always return a full match for objectClass. 2001-11-30 01:21:52 +00:00
Howard Chu
295e14bd54 Renamed BDB_ID2ENTRY_PAGESIZE to just BDB_PAGESIZE; set it on each database
instead of just the id2entry db. It helps. I also found that tweaking the
environment (set_lg_bsize 2MB; set_cachesize 2MB) helps but those can be
taken care of in a DB_CONFIG file. Tweaked the bdb_bt_compare function; it
really only needs to be set on little-endian machines. (On big-endian machines
a lexical sort gives the same result as an integer sort.) Moved the final
checkpoint back to the dbenv_close, I think this leaves a cleaner log file.
2001-11-28 20:48:06 +00:00
Howard Chu
24d1ab848c Added experimental support for DB_DIRTY_READ. 2001-11-28 03:11:04 +00:00
Howard Chu
5d8f2b8ba6 Cleanup a while() loop. 2001-11-27 22:10:01 +00:00
Kurt Zeilenga
2ac7c91cae Replace existing SLAP_MR_ matching flags with:
SLAP_MR_ASSERTION_SYNTAX_MATCH
	SLAP_MR_VALUE_SYNTAX_MATCH
	SLAP_MR_VALUE_SYNTAX_CONVERTED_MATCH,
add supporting evaluation macros, and update code as needed.
Misc other code cleanup included.
2001-11-27 21:59:56 +00:00
Howard Chu
5c7a7998a9 Set the id2entry database pagesize to BDB_ID2ENTRY_PAGESIZE to avoid
overflow/fragmentation. (This is now 16K vs default 4K.) It turns out
that the entries' on-disk format is quite space-inefficient, storing
4 bytes per pointer or integer when typically >50% of those bytes are
zero. Oh well. It's about a 2:1 space increase over ldbm now, vs 4:1
before when all the entries were overflowing the 4K pages.
2001-11-27 12:36:52 +00:00
Howard Chu
b45133c958 Eliminated nextid database. id2entry database is now maintained in numerical
order, so the lastid is always the same as the last entry's ID. This is
an incompatible db file change.
2001-11-27 10:15:23 +00:00
Howard Chu
0a25cddcf3 Fix segv in slapcat. Tool must use be_entry_return to free entries
returned from the backend.
2001-11-27 09:34:53 +00:00
Howard Chu
91f47e0ee6 Add #define SLAP_BDB_ALLOW_DBNOTXN to control dbnotxn keyword 2001-11-27 04:35:58 +00:00
Kurt Zeilenga
d5d801d152 Misc code cleanup 2001-11-27 03:41:03 +00:00
Howard Chu
323689da57 Added "dbnotxn" config keyword. If present, back-bdb uses DB_INIT_CDB
(Concurrent Data Store mode) instead of DB_INIT_TXN. Faster, but tends
to impede writers.
2001-11-27 02:35:20 +00:00
Howard Chu
78066c08c0 Fixed exit code processing. passwd.c never committed its password change
tranasaction.
2001-11-27 01:09:19 +00:00
Howard Chu
763faf21b1 Some tweaks to cut down on IDL stack usage. idl_intersection and idl_union
now take only two arguments instead of 3, overwriting the result onto the
first argument. (glibc2.0.7 defaults to a 2MB stack per thread; 3 IDLs at
1.5MB plus various other runtime overhead is enough to trash the stack.)
Also pass in a tmp IDL from search_candidates instead of allocating it in
each candiate function.
2001-11-26 19:32:39 +00:00
Howard Chu
df28982b43 More indexing fixes. Now passes tests 0-7, 10, and 11. 2001-11-24 12:41:54 +00:00
Howard Chu
13696c0b22 Fixed exit condition code checks and log msg, was returning fail on success. 2001-11-24 12:28:52 +00:00
Howard Chu
ad5e8c9e16 Removed unused "range" argument from indexing functions. Fixed more
bugs in indexing. Uncommented #define to turn on indexing in back-bdb.h.
It looks like it's working.
2001-11-24 03:46:02 +00:00
Howard Chu
939028b43f Fixed initialization bug. 2001-11-24 03:44:28 +00:00
Howard Chu
02b464b684 Fix initialization bugs 2001-11-24 03:43:52 +00:00
Howard Chu
49e3e8899d Fix typo that prevented rootdn logins. 2001-11-24 02:40:59 +00:00
Howard Chu
5657b6ec4e equality_candidates: s/BDB_IDL_RANGE_CPY/BDB_IDL_CPY/ 2001-11-17 04:51:08 +00:00
Howard Chu
02936edd27 First pass at indexing cleanup. Both filterindex.c and search.c now
compile cleanly when BDB_FILTER_INDICES is defined, but I have not
yet seen whether any of it actually works. In particular, I don't
understand the "range" argument to the candidate functions...
2001-11-17 04:41:47 +00:00
Pierangelo Masarati
d51dc13a0b moved the empty dn static entry into a global const object 2001-11-16 17:05:32 +00:00
Pierangelo Masarati
4c283cfe65 update dn can add/modrdn/delete entries rooted at '' (according to ACLs) 2001-11-16 15:06:18 +00:00
Pierangelo Masarati
563694039f check children access for old and new parent when = '' 2001-11-16 15:00:03 +00:00
Howard Chu
a3ded4782e Changed AttributeType.sat_cname from char * to struct berval.
Forced SLAP_USE_AD code, removed ifdefs of old code. filterindex.c is
still badly broken when BDB_FILTER_INDICES is defined, working on that...
2001-11-16 08:18:58 +00:00
Pierangelo Masarati
0ebba25d99 hack to make '' base work; please check side-effects 2001-11-14 17:27:24 +00:00
Pierangelo Masarati
098c4a15d4 fix a couple of misformats 2001-11-14 16:17:30 +00:00
Pierangelo Masarati
a8437c2038 non-root add/delete of entries rooted at '' checks children write permission (forward port from back-ldbm) 2001-11-14 16:09:33 +00:00
Kurt Zeilenga
525cd6f783 Port ITS#1430 changes from ldbm 2001-11-13 19:45:47 +00:00
Howard Chu
0b037b5566 Added bdb_attribute and bdb_group ACL support routines 2001-11-12 20:52:25 +00:00
Howard Chu
efb6c24f6b Fix missing case 2001-11-12 20:28:23 +00:00
Pierangelo Masarati
afd0037eda Fixes ITS#1433 2001-11-12 17:12:43 +00:00
Kurt Zeilenga
f8611a1296 Don't use indices to support not [!] filters.
Use pres indices to support LE/GE [<=,>=] filters.
2001-11-05 17:25:44 +00:00
Howard Chu
e47e31ad0a Fix for dbnosync - DB_TXN_NOSYNC is not a valid flag for dbenv_open,
must be set later using dbenv_set_flags.
2001-11-05 07:01:12 +00:00
Howard Chu
09cddf9188 Ported referral patches from back-ldbm. I believe search.c still needs
the patch from ITS#1289 to be ported here.
2001-11-05 06:24:11 +00:00
Julio Sánchez Fernández
aee598dba7 Remove bogus refusal to index ;binary attributes. Notice that I left
in a check.  This way you have to say:

	index userCertificate eq

If we remove it, we could say:

	index userCertificate;binary eq

I have not tried the latter.
2001-10-23 13:42:37 +00:00
Julio Sánchez Fernández
bf5ea315b6 Compares get values in the matching rule syntax (see RFC2251, 4.1.7),
so we need to tell value_find about this.
2001-10-23 09:48:18 +00:00
Howard Chu
0185b79559 Don't free entries since the tools realloc the buffers. 2001-10-22 15:58:44 +00:00
Howard Chu
11d884b8cf Fix some uninitialized variables 2001-10-22 15:57:58 +00:00
Howard Chu
c05de965b5 Moved binary entry_encode/entry_decode into main code. Removed lber version. 2001-10-22 14:07:42 +00:00
Howard Chu
0e16f6acf9 Moved AttributeDescription caching into main code:
Changed AttributeDescription.{ad_cname,ad_lang} to struct berval everywhere
   Deleted ad_free() everywhere
   Added ad_mutex to init.c

The AttributeDescriptions are in a linked list hanging off of the
corresponding AttributeType.
2001-10-22 13:23:05 +00:00
Howard Chu
ce6243f009 Patches for modify/modrdn to work with BDB_USE_BINARY_RW. 2001-10-19 20:28:48 +00:00
Howard Chu
98d6a4f2bf Added new bdb_encode/bdb_decode functions, must #define BDB_USE_BINARY_RW
to activate. The bdb_decode works in-place on the db data. Add/Search are
OK, I think Modify needs to be tweaked. Don't use this yet unless you want
to help finish it.
2001-10-19 11:53:15 +00:00
Kurt Zeilenga
d6730e5f50 BDB updates... haven't had a chance to work on this for a while,
committin what I have so that someone else might be able to work it.
2001-10-13 16:55:54 +00:00
Kurt Zeilenga
78adfde54e BDB_INDEX code does no harm (but no good yet, not used by filters yet). 2001-10-05 20:12:16 +00:00
Kurt Zeilenga
9f1fc48659 Another round. BDB_INDEX almost ready for functional testing. 2001-10-05 17:00:21 +00:00
Kurt Zeilenga
96e0038832 Initial idl fetch code, undef BDB_INDEX for now, other cleanup 2001-10-05 01:19:58 +00:00
Kurt Zeilenga
5160da05e5 Add some initial BDB_INDEX code... needs much work. 2001-10-04 22:29:34 +00:00
Kurt Zeilenga
3120d37951 More changes to let BDB build without LDBM. 2001-10-04 06:34:03 +00:00
Kurt Zeilenga
9b98f46a5e Add prelim index code from LDBM, needs work... 2001-10-04 02:55:09 +00:00
Kurt Zeilenga
433eb73ef8 Add BDB_INDEX error handling 2001-10-03 23:49:38 +00:00
Kurt Zeilenga
3ad55b225e Add error handling to BDB_INDEX code 2001-10-03 23:39:29 +00:00
Kurt Zeilenga
191853eb51 An incremental step. 2001-10-03 23:28:20 +00:00
Kurt Zeilenga
0135c8dbb1 Add BDB index config code 2001-10-03 21:11:52 +00:00
Kurt Zeilenga
292b6c8757 Replace #if 0 with #if MACRO 2001-10-03 20:34:00 +00:00
Kurt Zeilenga
86a680a4ec Enable management of attribute indices. Not yet used by test_filter. 2001-10-03 20:20:29 +00:00
Pierangelo Masarati
8a3768276a candidate check using new macro from Kurt 2001-10-02 19:15:05 +00:00
Kurt Zeilenga
773b1907d2 Add BDB_IDL_N() macro for ando 2001-10-02 19:04:12 +00:00
Pierangelo Masarati
becb7ff0ce forward porting of time/size limits from back-ldbm (pending the definition of the most appropriate way to determine the number of candidates) 2001-10-02 12:00:01 +00:00
Pierangelo Masarati
4ac9b37db7 forward porting of empty parent dn checks from back-ldbm 2001-10-02 10:44:14 +00:00
Pierangelo Masarati
5544720505 forward porting of composite rdn handling from back-ldbm 2001-10-02 10:39:04 +00:00
Kurt Zeilenga
c45a6f5c23 Fix up binary search 2001-09-26 03:50:48 +00:00
Kurt Zeilenga
5f4d8a71e6 Use a 64MB stack (instead of a 64K on some systems) by default.
This should be tunable...
2001-09-26 02:35:41 +00:00
Kurt Zeilenga
8c758b34f8 Fix build errors 2001-09-26 01:54:39 +00:00
Kurt Zeilenga
37d44620a5 idl_check for back-bdb 2001-09-25 23:56:49 +00:00
Kurt Zeilenga
50223981d9 Fix typo 2001-07-31 07:53:21 +00:00
Kurt Zeilenga
b09727567d Clean up 2001-07-31 04:55:14 +00:00
Kurt Zeilenga
60c4893b93 Last changes should have been #ifdef 2001-07-31 04:30:11 +00:00
Kurt Zeilenga
0bcc892fdf Fix basic operations 2001-07-31 04:24:29 +00:00
Kurt Zeilenga
ca7ba1a3fd Fix slapadd crash when only a subset of databases have been initialized.
Likely should have a general solution to this.
2001-07-31 00:16:44 +00:00
Kurt Zeilenga
bee0650d9c Work in progress codes. !UNTESTED! 2001-06-15 07:08:37 +00:00
Kurt Zeilenga
5eaa8fc85f Fix error text bugs 2001-03-15 03:02:23 +00:00
Kurt Zeilenga
e0e0b255f7 Fix typo in $SRCS 2001-03-15 03:01:54 +00:00
Kurt Zeilenga
468664c443 Adjust result code when entry is not found to noSuchObject 2000-10-11 18:19:26 +00:00
Kurt Zeilenga
492bb0263f Fix thread handling and error printing 2000-10-01 19:21:07 +00:00
Kurt Zeilenga
bd9e1b772c Fix no_threads build 2000-09-30 01:04:43 +00:00
Kurt Zeilenga
283a8f1b4f Add dead lock detection thread. 2000-09-29 00:18:29 +00:00
Kurt Zeilenga
160bf00975 Disable debugging 2000-09-28 22:25:19 +00:00
Kurt Zeilenga
11ba8fcf8f report retries 2000-09-28 18:29:50 +00:00
Kurt Zeilenga
819b5303da Add txn_checkpoint()'ing
disable moddn/newSuperior (needs re'IDing)
2000-09-28 04:09:13 +00:00
Kurt Zeilenga
f106722ebf working modrdn...
(need to fix leaks on transaction retries)
2000-09-28 02:42:20 +00:00
Kurt Zeilenga
67a595b328 fix up bdb_entry_return() calls 2000-09-28 02:27:49 +00:00
Kurt Zeilenga
fe23e0b875 Fix idl_insert... add/modify/delete now working w/ binary IDL search!
Leave debugging in place until post indexing work.
2000-09-28 01:27:01 +00:00
Kurt Zeilenga
75ee0afb30 Add idl_dump for testing purposes 2000-09-28 01:02:59 +00:00
Kurt Zeilenga
b64782a7c0 Clean up logging... need to hand run idl_delete to find bug 2000-09-28 00:24:28 +00:00
Kurt Zeilenga
ce01b5d755 Don't complain about non-existance IDL "range" candidates 2000-09-28 00:10:41 +00:00
Kurt Zeilenga
373479e5b8 Mostly working modify 2000-09-28 00:02:47 +00:00
Kurt Zeilenga
45b0ae2e7d Fix referrals no-referrals case 2000-09-27 23:25:15 +00:00
Kurt Zeilenga
ddb1124e42 Rough in extended ops, modify, and modrdn.
General code cleanup.
2000-09-27 22:28:59 +00:00
Kurt Zeilenga
cb2734eef0 Fix cursor logic 2000-09-26 22:28:12 +00:00
Kurt Zeilenga
077c47c2a6 replace ALLIDS with RANGE IDLs 2000-09-26 22:22:42 +00:00
Kurt Zeilenga
21cc085854 Add reindex 2000-09-26 20:41:54 +00:00
Kurt Zeilenga
fdeffe84e1 Add kludge to get working tests add/populate. 2000-09-26 20:31:34 +00:00
Kurt Zeilenga
dccdd30497 Got base entry... 2000-09-26 19:26:08 +00:00
Kurt Zeilenga
fcb3ccc526 Fix ber_scanf and init bugs 2000-09-26 17:47:24 +00:00
Kurt Zeilenga
63df7da68e include external.h 2000-09-26 05:33:37 +00:00
Kurt Zeilenga
e2c2ff8deb Apparently working slapadd! 2000-09-26 04:28:17 +00:00
Kurt Zeilenga
ebae2e5c62 Rough in passwd and referral routines
add diag and fix a few idl bugs
2000-09-26 03:47:56 +00:00
Kurt Zeilenga
5a30d0a9dd Add more diagnostics including linear search version of idl_search() 2000-09-26 01:36:35 +00:00
Kurt Zeilenga
7b97ddabeb Add diagnostics 2000-09-26 01:18:00 +00:00
Kurt Zeilenga
922cd5f41e Fix nextid 2000-09-26 00:56:33 +00:00
Kurt Zeilenga
b6d63b8e17 Add additional diagnostics 2000-09-26 00:43:00 +00:00
Kurt Zeilenga
11797cdbeb Fix initialization, add additional diagnostics 2000-09-26 00:12:31 +00:00
Kurt Zeilenga
0518820376 Add bind() 2000-09-25 23:46:54 +00:00
Kurt Zeilenga
c182511f91 Add bdb_bind, clean up init, s/Backend/BackendDB/ 2000-09-25 23:41:16 +00:00
Kurt Zeilenga
6a74325e5d Clean up debug messages 2000-09-25 21:58:41 +00:00
Kurt Zeilenga
61f5f03a23 Disable sub directory support for now 2000-09-25 21:30:15 +00:00
Kurt Zeilenga
e50c9b1588 Add minimal config support 2000-09-25 21:10:21 +00:00
Kurt Zeilenga
c3ab074c00 Update build environment for back-bdb 2000-09-25 20:16:19 +00:00
Kurt Zeilenga
ec1f989c79 Finish search rough in (w/o alias nor indexing support) 2000-09-25 19:59:45 +00:00
Kurt Zeilenga
61a15be30a Rough in search routine 2000-09-25 18:59:15 +00:00
Kurt Zeilenga
3874e8571d Add dn2entry.c 2000-09-24 22:48:13 +00:00
Kurt Zeilenga
64c521085b Add compare routine 2000-09-24 06:04:58 +00:00
Kurt Zeilenga
68a5db572c rough in an add/delete and deadlock avoidance 2000-09-23 23:15:40 +00:00
Kurt Zeilenga
aaab54e142 Add bdb_add() and supporting routines 2000-09-22 06:46:32 +00:00
Kurt Zeilenga
2b82d4f486 remove lint
update bdb codes
2000-09-22 01:40:57 +00:00
Kurt Zeilenga
101ec9c57f modify idl_search to use binary search algorithm 2000-09-21 01:56:10 +00:00
Kurt Zeilenga
4830b23b9d Add idl_delete routines 2000-09-20 23:29:41 +00:00
Kurt Zeilenga
95627d674a Add dn2id code
Add idl_insert
2000-09-20 07:21:09 +00:00
Kurt Zeilenga
7ab0916488 Reply on DB_CONFIG for tuning... 2000-09-20 02:01:05 +00:00
Kurt Zeilenga
67e3f97097 Add new nextid code. 2000-09-19 20:13:41 +00:00
Kurt Zeilenga
22e739b736 Add rough implementation of tool callbacks. 2000-09-19 18:08:04 +00:00
Kurt Zeilenga
fe186a9c8f Add BDB errcall 2000-09-19 01:59:08 +00:00
Kurt Zeilenga
b0f3bcb552 Don't set DB_PRIVATE yet. 2000-09-18 21:51:19 +00:00
Kurt Zeilenga
c1fdf4587c Add errpfx and errcall 2000-09-18 21:35:08 +00:00
Kurt Zeilenga
da5da64ef8 Add set_*_dir calls 2000-09-18 21:19:19 +00:00
Kurt Zeilenga
4077211117 Fix up back-bdb framework 2000-09-18 20:03:41 +00:00
Kurt Zeilenga
c3b0c9bd0a Initial autoconf support for back-bdb 2000-09-18 19:02:03 +00:00
Kurt Zeilenga
583cbc8c25 Framework for back-bdb 2000-09-18 18:51:07 +00:00