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