Commit graph

5099 commits

Author SHA1 Message Date
Kurt Zeilenga
b4e1ea15f3 benign buffer overflow fix (ITS#1964) 2002-09-25 04:34:33 +00:00
Kurt Zeilenga
bbbf2f4ca7 Fix handling of non-critical controls for backends which
support no controls.
2002-09-24 18:20:59 +00:00
Kurt Zeilenga
d0a4fee37a Minor updates 2002-09-22 19:09:47 +00:00
Kurt Zeilenga
976c35fbf0 fix possible uninit bug 2002-09-21 04:33:19 +00:00
Howard Chu
bdf9b3ae1b Fix ITS#1033 slapd hangs with GNU Pth - don't write to the wakefd
more than once at any given time.
2002-09-21 03:52:16 +00:00
Kurt Zeilenga
f558b6b02f Add experimental +/- AttributeName support. 2002-09-21 00:11:43 +00:00
Kurt Zeilenga
d9d58ae02f Save "-" for no subtypes 2002-09-20 19:58:25 +00:00
Howard Chu
9ba829436e Add dummy reference to lutil_uuidstr() for dynamically loaded back-bdb
and back-ldbm.
2002-09-20 01:02:33 +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
Howard Chu
7666bb7482 Add calls to module_init/module_kill to support dynamically loaded backends. 2002-09-18 11:58:19 +00:00
Kurt Zeilenga
3eb21d8a6c Misc cleanup 2002-09-16 21:50:55 +00:00
Kurt Zeilenga
f0364e25d1 Fix sizeof [r]buf typo 2002-09-16 21:35:33 +00:00
Kurt Zeilenga
cc7d1433bb For object classes in attribute lists, use '+' (or '-') to indicate
name is an objectClass.
2002-09-16 20:48:08 +00:00
Kurt Zeilenga
a1da292989 Wrap csn filter frees with sync mode check. 2002-09-15 22:42:50 +00:00
Kurt Zeilenga
88c8cca820 Fix return value 2002-09-15 22:42:07 +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
1d0e916c6f Misc CLIENT_UPDATE cleanups 2002-09-15 22:22:51 +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
Pierangelo Masarati
ae2cd84d16 trim c++ style comments 2002-09-11 17:15:55 +00:00
Howard Chu
7823832770 Fix ITS#2075, NULL moddn->newsup->bv_val 2002-09-11 10:59:41 +00:00
Pierangelo Masarati
8758a30bf2 #undef SLAP_X_FILTER_HASSUBORDINATES while I fix the entry lock problem ... 2002-09-10 10:10:11 +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
Howard Chu
30de884223 More memory cleanup 2002-09-09 00:56:57 +00:00
Howard Chu
a4b30ce455 Plug memleaks from -r1.45 2002-09-09 00:55:52 +00:00
Pierangelo Masarati
b8240724ad optimize also duplicate/existence check in value delete operations 2002-09-07 16:08:30 +00:00
Howard Chu
b623e4495b Fix typo in one-level searches, left over from -r1.23 cleanup 2002-09-06 12:37:24 +00:00
Kurt Zeilenga
37d9880495 Some LCUP clean up 2002-09-06 00:29:20 +00:00
Howard Chu
73207c7110 Replace HACK in slap_sasl_canonicalize with safer test. 2002-09-05 11:01:12 +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
Howard Chu
62ceae250c ITS#2065 omit libbackends.a when no static backends configured.
Also fixed dependencies for dynamic backends and tools.
2002-09-04 10:58:25 +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
5d50463376 optimize duplicate detection based on mods and existing values count 2002-09-03 15:12:36 +00:00
Kurt Zeilenga
69ba1a21bc Extend checks to substrings rules. Need to kludge around
LDAP's kludged builtin substrings rules.
2002-09-03 07:28:57 +00:00
Kurt Zeilenga
8a5b200c44 Add appropriate matching rule checks.
Clean up syntax error reporting.
2002-09-03 07:01:09 +00:00
Howard Chu
3099d89d9e Don't use sasl_set_alloc on Cyrus 2, it manages all of its memory
internally and we don't want to get in the way.
2002-09-02 22:25:26 +00:00
Kurt Zeilenga
3e1a896928 Update comment 2002-09-02 22:07:23 +00:00
Pierangelo Masarati
d3ca441ae8 /*
* The original code performs ( n ) normalizations
 * and ( n * ( n - 1 ) / 2 ) matches, which hide
 * the same number of normalizations.  The new code
 * performs the same number of normalizations ( n )
 * and ( n * ( n - 1 ) / 2 ) mem compares, far less
 * expensive than an entire match, if a match is
 * equivalent to a normalization and a mem compare ...
 *
 * This is far more memory expensive than the previous,
 * but it can heavily improve performances when big
 * chunks of data are added (typical example is a group
 * with thousands of DN-syntax members; on my system:
 * for members of 5-RDN DNs,

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

 * Moreover, 100 groups with 10000 members each were
 * added in 37m27.933s (an analogous LDIF file was
 * loaded into Active Directory in 38m28.682s, BTW).
 *
 * Maybe we could switch to the new algorithm when
 * the number of values overcomes a given threshold?
 */
2002-09-02 19:41:03 +00:00
Pierangelo Masarati
eb38db1be5 various fixes and improvements 2002-09-02 19:39:31 +00:00
Pierangelo Masarati
857d08ea21 use bvmatch() instead of ber_bvcmp() when testing for match without ordering 2002-09-02 19:39:06 +00:00
Kurt Zeilenga
132506e13c Add NOOP search support. 2002-09-02 17:38:17 +00:00
Kurt Zeilenga
af183089b8 unifdef -DSLAP_X_MRA_MATCH_DNATTRS 2002-09-01 00:33:20 +00:00
Kurt Zeilenga
b5f51ed4a5 have get_mra use mr_usable_with_at() as well 2002-08-31 21:39:42 +00:00
Kurt Zeilenga
c6052ac8b0 Add mr_usable_with_at() routine. Use both in generation
of rule uses, but also in test_filter_mra()
2002-08-31 21:23:45 +00:00
Kurt Zeilenga
5c61f55faa Make sure we don't expose hidden attribute types in rule uses 2002-08-31 20:49:50 +00:00
Kurt Zeilenga
e9a71156cc Add matching rule use support where assertion syntax != value syntax 2002-08-31 20:42:25 +00:00
Kurt Zeilenga
04c71ce9b2 List approximates as well in rule uses.
Don't yet list ordering rules yet, these require special attention (and
hence are not marked MR_EXT yet)
2002-08-31 19:25:41 +00:00
Kurt Zeilenga
d6ac7ac544 Fix last commit.
Also add uses where mr is the attribute's equality rule.
2002-08-31 19:17:54 +00:00
Kurt Zeilenga
2908cdff11 MR_EXT rules can be used with any type whose syntax is same as
the syntax's assertion syntax.
2002-08-31 19:05:36 +00:00
Kurt Zeilenga
6c7104c82b Don't hide matchingRuleUse's description (now implemented)
Use attribute's cname not oid in matching rule uses
2002-08-31 18:41:21 +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
a0c54f1625 use ldap_charray_add instead of dedicated helper; get rid of dependency from ldap-int.h 2002-08-31 11:14:15 +00:00
Pierangelo Masarati
71aecea2aa fix bitwise matching (courtesy of Luke Howard) 2002-08-31 10:56:27 +00:00
Pierangelo Masarati
804a111fbd add {create,modify}Timestamp to subschema subentry (SHOULD per RFC2251; use server startup time to be conservative) 2002-08-31 10:49:03 +00:00
Pierangelo Masarati
aea52e5bc9 define macros for appropriate sizing of lutil buffers 2002-08-31 10:48:02 +00:00
Pierangelo Masarati
e2ec62f09f add matchingRuleUse to schema; use a berval instead of _oidlen in syntax and matching rule 2002-08-31 10:45:22 +00:00
Pierangelo Masarati
c76b36254c cleanup comments 2002-08-31 10:41:49 +00:00
Pierangelo Masarati
c8cfbca64d fix extendedMatch and approx hfilter andling; get rid of subtree_cond (argh, need to trim it from config and docs ...) 2002-08-31 10:39:23 +00:00
Pierangelo Masarati
a1bb43946b better handling of children_cond 2002-08-31 10:38:29 +00:00
Pierangelo Masarati
95a99bd522 trace illegal condition in backsql_strfcat 2002-08-31 10:37:42 +00:00
Pierangelo Masarati
685363e880 add 'children_cond' config statement 2002-08-31 10:36:16 +00:00
Pierangelo Masarati
b0dfd89e1b added referral support to back-{ldap,meta}; need to allow send_serch_reference() handle NULL entry pointer 2002-08-31 10:35:23 +00:00
Pierangelo Masarati
501cd4c611 fix extendedMatch values return filter control 2002-08-31 10:29:03 +00:00
Kurt Zeilenga
b04483a6a2 We don't support substrings matching via extensibleMatch 2002-08-30 19:30:58 +00:00
Howard Chu
70673417f2 Fix debug statement 2002-08-30 14:28:45 +00:00
Howard Chu
c4f74ac639 Fix crash in mra_free, freeing ber-private value. 2002-08-30 12:38:50 +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
Kurt Zeilenga
81420d4f91 Yet another bug fix... this one from Luke. 2002-08-29 19:54:17 +00:00
Pierangelo Masarati
a8bf275221 cleaner handling of unchecked limit support 2002-08-29 19:43:29 +00:00
Kurt Zeilenga
ecfb311f8f Fix objectSubClassIndexer bug 2002-08-29 18:05:49 +00:00
Pierangelo Masarati
58b860a15e fix server-size controls handling in back-{ldap,meta} 2002-08-29 15:07:18 +00:00
Pierangelo Masarati
7e2317c842 add server side controls to back-ldap and back-meta 2002-08-29 14:39:31 +00:00
Pierangelo Masarati
e7d2d0a9f5 avoid zero size ch_malloc() when no attributes are present in vrFilter 2002-08-29 13:32:28 +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
Howard Chu
20f6bae612 Use sockbuf_max_incoming_auth after successful Bind 2002-08-29 11:53:37 +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
Pierangelo Masarati
d855f97372 cleanup 2002-08-29 10:50:12 +00:00
Pierangelo Masarati
a32f8c079a cleanup hasSubordinate operational attr merge 2002-08-29 10:49:41 +00:00
Pierangelo Masarati
b16ee02a49 optimize subschema attribute merge 2002-08-29 10:49:11 +00:00
Pierangelo Masarati
f1eb3e39ec use appropriate attr list when matching value of operational attrs 2002-08-29 10:45:48 +00:00
Pierangelo Masarati
24171e1fe2 fix match result bug 2002-08-29 10:45:24 +00:00
Pierangelo Masarati
e53d272b3f cleanup error check logic; don't deref be->controls when it's NULL 2002-08-29 10:43:39 +00:00
Pierangelo Masarati
9ee916bdec fix backend initialization (including ITS#2048) 2002-08-29 10:32:48 +00:00
Howard Chu
7cdb6866cf Two more bervals instead of strings... 2002-08-29 08:47:53 +00:00
Howard Chu
4d36fd5a3e Fix ITS#1991 - referrals with sarch base == target (wasn't sure at first,
but see diff -r1.6 -r1.7 and it's obvious.)
2002-08-29 08:43:23 +00:00
Kurt Zeilenga
923d033c99 Finish adding subclassing indexing support 2002-08-29 02:27:15 +00:00
Kurt Zeilenga
1086ffb438 Round one of subclass indexing for objectClass and structualObjectClasss.
add soc_cname to ObjectClass structure
2002-08-29 01:12:59 +00:00
Kurt Zeilenga
bfa89d6e15 Include lber_pvt.h 2002-08-28 16:47:04 +00:00
Howard Chu
9c4f89c6f7 Added no-op sasl_client_auth if SASL_VERSION_MAJOR < 2. 2002-08-28 08:33:24 +00:00
Kurt Zeilenga
aa36f5d049 cleanup 2002-08-28 07:30:57 +00:00
Howard Chu
3cb7a09eb0 Added check for Cyrus SASL sasl_version() 2002-08-28 07:12:22 +00:00
Howard Chu
1602bc3aa1 Fix ITS#2047 - link ldbm.lo directly when building back-ldbm as a module 2002-08-28 02:50:30 +00:00
Kurt Zeilenga
288f0f4f6d Add another safety check 2002-08-27 17:51:35 +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
aa602e0adc Return other. 2002-08-27 05:51:35 +00:00
Kurt Zeilenga
6ec6115119 Fix bug in last commit 2002-08-27 02:43:00 +00:00
Kurt Zeilenga
433eb54dc7 no structuralObjectClass is not a schema violation, but an
internal error.  It *should* have been added.
2002-08-27 02:28:15 +00:00
Kurt Zeilenga
11236eae56 Clean up some structuralObject checks to improve readability.
Functionality not changed (excepting one error message).
2002-08-27 01:55:09 +00:00
Kurt Zeilenga
00003ac539 Fix comment 2002-08-27 01:35:43 +00:00
Kurt Zeilenga
522ee4a038 Only add LASTMOD attributes if they don't exist in input. 2002-08-27 01:27:42 +00:00
Howard Chu
9f5b28baf3 Remove c_sasl_bindmutex, Binds are already serialized. 2002-08-26 22:20:30 +00:00
Kurt Zeilenga
2c4cfd7c27 remove lint 2002-08-26 20:11:19 +00:00
Kurt Zeilenga
9be4df6b7c Prevent buffer overflow 2002-08-26 20:10:45 +00:00
Kurt Zeilenga
1c5725010e Add a Connection pointer to the Operation. 2002-08-26 19:29:34 +00:00
Kurt Zeilenga
fb7ac08ada cleanup 2002-08-26 19:13:44 +00:00
Kurt Zeilenga
6f8a3919a1 Fix last commit. 2002-08-26 18:07:58 +00:00
Kurt Zeilenga
af4cb85d8b Prevent unlocking unlocked sasl_bindmutex... 2002-08-26 18:06:55 +00:00
Pierangelo Masarati
d9da0f2bb8 silence annoying warning (BTW: who initializes be?) 2002-08-26 17:37:33 +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
Kurt Zeilenga
08059f1633 zap charray 2002-08-25 16:53:20 +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
Howard Chu
925714ceef Experimental cruft to propagate valid Operation to SASL callbacks.
If you have a better way, jupm on in...
2002-08-24 07:34:50 +00:00
Howard Chu
1d7ee4471f Pass Operation to backend_attribute - should have been doing this all along. 2002-08-24 07:31:14 +00:00
Howard Chu
8c30114d84 Added thread-pool getkey/setkey functions 2002-08-24 05:39:43 +00:00
Kurt Zeilenga
e259c3c938 Zap 2002-08-24 00:55:56 +00:00
Kurt Zeilenga
23efa07a99 use ldap_charray_*() instead of charray_*() 2002-08-24 00:55:24 +00:00
Kurt Zeilenga
c67781d0ea use ldap_charray_free() instead of slapd's charray_free() 2002-08-24 00:40:25 +00:00
Howard Chu
77783bb4b7 Fix typo in previous commit. (Benign, code was #if'd out anyway.) 2002-08-23 22:29:08 +00:00
Pierangelo Masarati
f11c6b27e7 Final run of changes to back-sql; IBM db2 support has been tested.
Now related ITSes need be audited and possibly closed.

Enhancements:
  - re-styled code for better readability
  - upgraded backend API to reflect recent changes
  - LDAP schema is checked when loading SQL/LDAP mapping
  - AttributeDescription/ObjectClass pointers used for more efficient
    mapping lookup
  - bervals used where string length is required often
  - atomized write operations by committing at the end of each operation
    and defaulting connection closure to rollback
  - added LDAP access control to write operations
  - fully implemented modrdn (with rdn attrs change, deleteoldrdn,
    access check, parent/children check and more)
  - added parent access control, children control to delete operation
  - added structuralObjectClass operational attribute check and
    value return on search
  - added hasSubordinate operational attribute on demand
  - search limits are appropriately enforced
  - function backsql_strcat() has been made more efficient
  - concat function has been made configurable by means of a pattern
  - added config switches:
      - fail_if_no_mapping	write operations fail if there is no mapping
      - has_ldapinfo_dn_ru	overrides autodetect
      - concat_pattern		a string containing two '?' is used
				(note that "?||?" should be more portable
				than builtin function "CONCAT(?,?)")
      - strcast_func		cast of string constants in "SELECT DISTINCT					statements (needed by PostgreSQL)
      - upper_needs_cast	cast the argument of upper when required
				(basically when building dn substring queries)

Todo:
  - add security checks for SQL statements that can be injected (?)
  - re-test with previously supported RDBMs
  - replace dn_ru and so with normalized dn (no need for upper() and so
    in dn match)
  - implement a backsql_normalize() function to replace the upper()
    conversion routines
  - note that subtree deletion, subtree renaming and so could be easily
    implemented (rollback and consistency checks are available :)
  - implement "lastmod" and other operational stuff (ldap_entries table ?)
2002-08-23 08:54:08 +00:00
Pierangelo Masarati
7b4b4b34c4 fixed bug in reading size/time limits without style, in the form 'size=number', 'time=number' 2002-08-23 08:50:34 +00:00
Pierangelo Masarati
a038ef68e6 added attr_merge/value_add functions that dela with single attribute; bervals for '*', '+' and '1.1' made available 2002-08-23 08:49:19 +00:00
Pierangelo Masarati
ff4edfa054 added assertions to catch helper function misuse 2002-08-23 08:46:45 +00:00
Howard Chu
b3ddb5734b Fix indexing bug in splitting indirect blocks 2002-08-23 03:07:33 +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
3a15afa057 Fix abstract schema check 2002-08-22 02:27:42 +00:00
Pierangelo Masarati
d4bc79864d fix previous commit 2002-08-21 18:11:30 +00:00
Jong Hyuk Choi
b81122d441 Slapadd is changed to include Operational Attributes (entryUUID, entryCSN,
creatorsName, modifiersName, createTimestamp, modifyTimestamp) when it adds
from ldif file. Month field in time format in entryCSN is changed to 1~12.
2002-08-21 00:11:32 +00:00
Kurt Zeilenga
65760c064e ITS#2004 AD lang bug fix 2002-08-20 19:08:18 +00:00
Howard Chu
505a141c75 Use search callbacks in slap_sasl_checkpass and slap_auxprop_lookup,
use ACL_AUTH for acl checks.
2002-08-20 05:32:54 +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
Kurt Zeilenga
041c3700e1 fix typo in last commit 2002-08-19 07:08:59 +00:00
Kurt Zeilenga
930ecd3930 Normalized form should be pretty. 2002-08-19 07:07:25 +00:00
Howard Chu
e5091f5926 Updated register_syntax, register_matching_rule for more convenient
calling from other modules
2002-08-17 01:29:18 +00:00
Kurt Zeilenga
6e02fe2e8a Remove #if 0 code 2002-08-16 18:58:39 +00:00
Pierangelo Masarati
05348c5fc5 CHANGES:
- now all write operations appear to work correctly with PostgeSQL 7.0
- all write operations have been made transactional (atomic writes to
  entries are committed separately only in case of complete^1 success
  while all other operations are rolled-back by default)
- more cleanup and handling of exceptional conditions

TODO:
- deen to check with different databases and more up to date versions
  of both unixODBC and PostgreSQL.

^1: attribute add/modify/delete operations silently succeed if the
    appropriate add/delete proc does not exist for each attribute;
    this may be correct to hide undesired/unimplemented correspondence
    between LDAP and SQL databases; however, a more appropriate
    LDAP behavior would be a failure with LDAP_UNAVAILABLE if a
    single write operation cannot be executed for such reason
2002-08-16 16:45:24 +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
Pierangelo Masarati
3a26ef5bbb silence warnings 2002-08-16 16:33:22 +00:00
Pierangelo Masarati
a7349c100e fix printableStringValidate return value bug 2002-08-16 16:32:42 +00:00
Pierangelo Masarati
115408986c changes:
- re-style according to the style giudelines for better readability
- updated to recent frontend/backend API changes
- fixed a few quirks about normalization
- "optimized" a few memory allocation/string handling functions
- fixed a few quirks about add/modify (still have to look ad modrdn)

todo:
- there is still something broken (at least with PostgreSQL and IBM db2,
  the two RDBMS O have at hand) when adding
- move everything to struct bervals and try to save a few strlen
- try some LDAP/SQL syntax relation to use appropriate value bind if possible
- ...
2002-08-13 17:12:27 +00:00
Pierangelo Masarati
7c2de5721a VERY PRELIMINARY support for PostgreSQL and IBM db2 2002-08-13 17:07:40 +00:00
Pierangelo Masarati
c4a8a3dce5 better error handling when returning results 2002-08-13 17:00:33 +00:00
Kurt Zeilenga
84fe0ad051 Log successful SASL bind (ITS#2017) 2002-08-13 03:49:21 +00:00
Kurt Zeilenga
a500feb4a6 Patch: lutil_progname() and lutil_strcopy() are not declared (ITS#2021)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

lutil_progname() and lutil_strcopy() are not declared, which can
be fatal since they do not return int.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, Aug 2002.
2002-08-13 02:33:20 +00:00
Kurt Zeilenga
c5b6a86502 Fix IRIX sc_mask conflict 2002-08-13 02:32:57 +00:00
Kurt Zeilenga
f8f1321760 Add support for response controls 2002-08-12 20:50:20 +00:00
Kurt Zeilenga
1c75a7f25c Fix inverted bvmatch logic in modrdn 2002-08-12 08:45:20 +00:00
Kurt Zeilenga
d250339576 Add back_bdb to modules 2002-08-11 21:06:03 +00:00
Kurt Zeilenga
f10699865e consistently reduce string_expand bv_len by 1 2002-08-11 20:26:01 +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
Pierangelo Masarati
b063a50891 same as for back-meta 2002-08-10 14:25:41 +00:00
Pierangelo Masarati
328046248b initialize struct timeval (fixes ITS#2014);
also, check for return value of dnNormalize2: if the returned
DN contains undefined attributes, the normalization fails.
2002-08-10 14:13:46 +00:00
Howard Chu
07ebdca237 ITS#1893, use "schemadn" to configure subschemasubentry DN. (diff was
inaccessible, this is original code, not contributed.)
2002-08-10 03:10:52 +00:00
Pierangelo Masarati
1abb8cb339 rework connection pool handling (reduce amount of malloc) 2002-08-09 17:15:10 +00:00
Pierangelo Masarati
85a74efc71 remove dependency from LDAP_FILT_MAXSIZ (and handle arbitrary size filters) 2002-08-09 13:51:35 +00:00
Howard Chu
f7859e9913 ITS#2015 give correct index key back to presence_candidates 2002-08-08 17:27:50 +00:00
Kurt Zeilenga
e69c9067c2 Fix saslregex init bug 2002-08-07 19:17:22 +00:00
Howard Chu
44ac8a3564 Plug config leaks 2002-08-07 08:43:52 +00:00
Howard Chu
554311a4c8 Fix cargv leak in recursive read_config() 2002-08-07 08:22:43 +00:00
Kurt Zeilenga
4a4323e3b7 Move large string comment to just above UTF8StringValidate(). 2002-08-07 08:19:11 +00:00
Howard Chu
50d490be6c Revert previous commit 2002-08-07 06:37:11 +00:00
Howard Chu
13d13baeda In backend_operational don't add subschemaSubentry unless it was
requested. In send_search_entry don't malloc vrFilter flags unless
a matchedValue filter was given; malloc 1 contiguous block instead
of multiple sub-arrays.
2002-08-07 05:31:03 +00:00
Howard Chu
6862cfd97c Don't strdup conn->authz into op, just reference directly. (Conn cannot
be freed until after all associated ops are freed.)
2002-08-07 05:19:55 +00:00
Kurt Zeilenga
f1047b704e ITS#2010: use snprintf instead of strcpy to prevent buffer overflow 2002-08-06 19:31:00 +00:00
Kurt Zeilenga
3f2faa1a84 other->invalid 2002-08-06 05:38:49 +00:00
Kurt Zeilenga
a35d5b90fc For IA5, printable, telephone:
Don't allow empty string values.
Treat string values with only spaces as one space.
DirectoryString needs more work (space handling needs
to be done post normalization).
2002-08-06 05:35:59 +00:00
Kurt Zeilenga
6fdcdeb816 Add a summary to strings comment 2002-08-06 04:25:54 +00:00
Kurt Zeilenga
48f72b6862 Update string commment with examples. 2002-08-06 04:03:13 +00:00
Kurt Zeilenga
82540c5cc1 Add start of discussion of strings in LDAP/X.500 and OpenLDAP. 2002-08-06 03:52:02 +00:00
Kurt Zeilenga
3b3232f21c Fix nameAndOptionalUUID normalization,
now uses bitStringNormalize().
2002-08-06 03:18:02 +00:00
Kurt Zeilenga
3fbfd3064a Remove lint 2002-08-06 03:08:12 +00:00
Howard Chu
e14f471a27 Add #include "lutil.h" for lutil_str* functions 2002-08-06 02:36:34 +00:00
Howard Chu
61731500d0 ITS#1998 UTF8StringNormalize should accept all-space vals 2002-08-06 02:35:24 +00:00
Kurt Zeilenga
428c15d883 Misc clean up of last commit.
Still need to fix my devbox so I can test this....
2002-08-05 23:40:08 +00:00
Kurt Zeilenga
119462adfa Rework saslRegex code (not yet tested) 2002-08-05 23:16:28 +00:00
Kurt Zeilenga
64791571aa Prevent overflow in .rej creation (ITS#2007) 2002-08-05 19:44:24 +00:00
Kurt Zeilenga
c673b651e8 Set O_EXCL (ITS#2009) 2002-08-05 19:43:01 +00:00
Kurt Zeilenga
d38d19edc1 Fix lutil_str*() warnings 2002-08-05 17:56:13 +00:00
Kurt Zeilenga
526d010635 Patch: add OpenLDAPaci #public# access (ITS#2005)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

I couldn't find a way for an OpenLDAPaci to grant public access to an
entry, so I added a dnType #public# for that.  It is in the position
of subjectDn in the draft, which seems kind of stupid, so I put it
in the position of dnType instead.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, Aug 2002.
2002-08-05 17:53:39 +00:00
Kurt Zeilenga
f8c0481dd4 Patch: ACL #access-id#<invalid-DN> granted access to everyone (ITS#2006)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

There is a bug in OpenLDAPaci's "access-id":  If the specified DN is
invalid so dnNormalize2() fails, everyone gets access.
This means that e.g. "#access-id#[all]" gives public access, so it
might be considered a feature, but I fixed it anyway:-)  I guess that
means the change should be documented in the release notes, though.

See also ITS#2005 (add OpenLDAPaci #public# access).

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, Aug 2002.
2002-08-05 17:52:16 +00:00
Howard Chu
771f70eb0f Fix ITS#1994, Windows heap consistency 2002-08-03 02:57:52 +00:00
Pierangelo Masarati
40f3da36b0 need <lutil.h> for lutil_gentime 2002-08-02 10:24:03 +00:00
Pierangelo Masarati
540dbbe1ed fix previous commit 2002-08-02 10:00:44 +00:00
Kurt Zeilenga
d22612e8db ITS#1951: saslRegexp limits syntax of regular expressions
Don't normalize regex.
Also, s/LDAP_OPERATIONS_ERROR/LDAP_OTHER/
2002-08-01 01:10:55 +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
Kurt Zeilenga
182dcf27e2 clean up curly matching 2002-07-28 07:37:46 +00:00
Kurt Zeilenga
eb581e43e7 Fix for:
SASL regex segmentation faults with group based acls (ITS#1978)
based, in part, by patch submitted by Simon Wilkinson <simon@sxw.org.uk>.
2002-07-28 07:27:55 +00:00
Kurt Zeilenga
c054d8458a Fix pkiUser 2002-07-27 10:25:42 +00:00
Kurt Zeilenga
e53214b26f ITS#1965: use snprintf 2002-07-27 07:39:50 +00:00
Kurt Zeilenga
1677f178ce ITS#1985 fix: blind commit 2002-07-27 07:37:04 +00:00
Kurt Zeilenga
2f9b89b4af Improve schema error messages 2002-07-27 06:08:51 +00:00
Howard Chu
b6620f3d25 Use lutil_gentime 2002-07-27 02:10:43 +00:00
Howard Chu
5a01db28e3 Moved slap_strcopy, slap_strncopy to lutil_strcopy, lutil_strncopy 2002-07-27 00:24:02 +00:00
Kurt Zeilenga
e981dcbad5 use strongAuthRequired instead of operationsError to indicate
authentication required before modification.
2002-07-26 15:29:36 +00:00
Howard Chu
d6ae1d95de Include <sys/stat.h> for mkdir prototype 2002-07-26 13:24:37 +00:00
Pierangelo Masarati
90f127472d fix normalization bug; change time stamping by using createTimestamp and modifyTimestamp (related to ITS#1984) 2002-07-25 09:49:02 +00:00
Pierangelo Masarati
7e81297147 fix normalization bug (related to ITS#1984) 2002-07-25 09:48:29 +00:00
Kurt Zeilenga
4d22977f7f BootParamSyntax: be more liberal than the ABNF such that
examples in RFC 2307 are treated as valid.
2002-07-24 15:29:22 +00:00
Kurt Zeilenga
3b775fce8b Should allow keystring in bootParams 2002-07-24 15:19:40 +00:00
Kurt Zeilenga
8a3d02bf6b misc cleanup 2002-07-23 18:35:12 +00:00
Julius Enarusai
2168be2b4a Converted LDAP_LOG messages to use new Macro 2002-07-23 00:01:53 +00:00
Pierangelo Masarati
437014723c fix ITS#1953 2002-07-22 14:24:32 +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
Kurt Zeilenga
202e516450 krbName is now builtin 2002-07-16 02:42:29 +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
Howard Chu
a073e28510 Fix setting c_authz_backend for SASL binds:
in slap_sasl2dn, make sure it's set for base DN searches as well.
  in do_bind, don't zero it during multi-stage binds.
2002-07-13 00:11:03 +00:00
Howard Chu
7fdb38bca9 Fix previous commit - the stub was never needed. 2002-07-12 23:43:46 +00:00
Howard Chu
f9cbbc6770 Fix order of params to sasl_setpass. Added initial stub for setpass to
change in-directory password.
2002-07-12 20:55:12 +00:00
Stig Venaas
bf5e3a15ca Use AF_INET instead of AF_UNSPEC when IPv6 disabled 2002-07-12 15:36:33 +00:00
Julius Enarusai
6107ba67d2 Coverted LDAP_LOG macro to use subsystem ID int values instead of string values 2002-07-11 20:33:24 +00:00
Kurt Zeilenga
ef3d895cb8 More ACL to dn="" bug fixing... and add test006-acl check 2002-07-11 01:45:22 +00:00
Kurt Zeilenga
98a2e41911 Fix ACL to dn="" bug 2002-07-11 01:35:37 +00:00
Kurt Zeilenga
32a2f291ee Change dn="" to dn.base="". 2002-07-11 01:17:41 +00:00
Kurt Zeilenga
0fffad53c3 get data if ready 2002-07-10 22:03:32 +00:00
Kurt Zeilenga
fffd84ff9f Fix matched values zero allocation bug (ITS#1931) 2002-07-09 00:20:30 +00:00
Kurt Zeilenga
4f48237d22 remove lint 2002-07-08 18:55:50 +00:00
Kurt Zeilenga
e6627e93d0 Add matchedValues 2002-07-08 18:54:52 +00:00
Stig Venaas
deb62446fe Added normalization to caseIgnoreIA5Indexer() 2002-07-07 13:22:45 +00:00
Stig Venaas
62139b6ef3 Set peeraddr also for IPv6, fixes ITS#1918 2002-07-05 20:29:15 +00:00
Stig Venaas
804490a8b1 Use IPV6_V6ONLY on IPv6 sockets if available. This way we only get IPv6
packets on the IPv6 socket, and we receive only IPv6 with -6.
2002-06-27 13:20:37 +00:00
Stig Venaas
6d025001da Ignore error if listen on socket bound to 0.0.0.0 fails and already
listening on socket bound to ::
2002-06-27 12:41:09 +00:00
Kurt Zeilenga
f708b4e94e Add krbName's definition (ITS#1913) 2002-06-26 18:43:55 +00:00
Kurt Zeilenga
0a2a381d07 Fix for "no structuralObjectClass" when lastmod is off (ITS#1904) 2002-06-25 01:04:54 +00:00
Kurt Zeilenga
3d90fcda3a authcId might be NULL 2002-06-22 21:27:38 +00:00
Howard Chu
7e8c77c5de Fix dynamic module linking 2002-06-21 01:34:53 +00:00
Kurt Zeilenga
54d5d65791 Yet another schema error bug fix 2002-06-20 20:48:19 +00:00
Kurt Zeilenga
a5f29741a6 Fix off by one error in erorr reporting 2002-06-20 20:46:16 +00:00
Kurt Zeilenga
03a4901b5f assert( e != NULL ) in entry2str() 2002-06-19 22:04:28 +00:00
Pierangelo Masarati
93dbac3caf use monitorContext for the monitor database 2002-06-19 07:57:01 +00:00
Kurt Zeilenga
0371c61073 Add monitorContext rootDSE attribute 2002-06-19 06:44:16 +00:00
Kurt Zeilenga
dec67d1ad9 Hide cn=Monitor from namingContexts
Should add a special DN pointer
2002-06-19 06:06:21 +00:00
Kurt Zeilenga
35749a2520 make curlies match 2002-06-18 22:41:03 +00:00
Kurt Zeilenga
ba4faad6e5 Use correct ssfs. 2002-06-18 07:31:20 +00:00
Howard Chu
cf61e03cb8 ITS#1891, debug msg in send_search_entry 2002-06-18 00:37:45 +00:00
Kurt Zeilenga
9a38d98d37 Add option to disallow unprotected simple authentication.
Add protected simple authentication as a "strong" mechanism.
2002-06-17 22:18:27 +00:00
Kurt Zeilenga
27fdd04153 Add -4/-6 flags to slapd to force use of IPv4 or IPv6 2002-06-15 22:01:39 +00:00
Pierangelo Masarati
bf449f33bd small cleanup 2002-06-15 18:20:41 +00:00
Pierangelo Masarati
d75249abfe define and normalize static bervals alltogether 2002-06-15 17:01:35 +00:00
Pierangelo Masarati
b9254b8ab4 should compile even without Cyrus SASL 2002-06-15 15:01:17 +00:00
Kurt Zeilenga
cbba11d7cd saslAuthzTo/From LDUP URLs should have hostnames 2002-06-14 22:03:52 +00:00
Kurt Zeilenga
04df89d972 zap unnecessary include 2002-06-14 09:10:02 +00:00
Kurt Zeilenga
3b695bc6c8 Use experimental OIDs for saslAuth attributes and hide 'em
make the usage distributedOperation
2002-06-14 08:25:14 +00:00
Howard Chu
077aea8127 Fix OID clash in previous commit 2002-06-14 08:16:06 +00:00
Howard Chu
07a34489c6 Added saslAuthzTo and saslAuthzFrom to system schema.
Added sasl-authz-policy config keyword to control proxy authorization.
Moved sasl-related config processing to sasl.c:slap_sasl_config().
Moved other global defs used only in saslauthz.c into saslauthz.c.
2002-06-14 08:10:14 +00:00
Kurt Zeilenga
ad673923a3 ITS#1882: fix typo 2002-06-13 14:50:33 +00:00
Kurt Zeilenga
b5e7208cb8 Date: Thu, 2 May 2002 08:54:59 GMT
From: h.b.furuseth@usit.uio.no
To: openldap-its@OpenLDAP.org
Subject: Patch: Bugs with back-ldap/meta mappings

Full_Name: Hallvard B. Furuseth
Version: HEAD
OS: Linux
URL: http://folk.uio.no/hbf/OpenLDAP/back-ldap.txt
Submission from: (NULL) (158.36.148.34)


The source claims the 'map' attribute has syntax
map {objectclass | attribute}   {<source> | *}      [<dest> | *]
while it actually has syntax
map {objectclass | attribute} [<local name> | *] {<foreign name> |
*}
except that the code is confused about it.  Removed attributes are
put in both the maps for local and foreign names:
	# Remove description and present title as description instead
	map attribute	description
	map attribute	description title
-->
	slapd.conf: line 10: duplicate mapping found (ignored)

Also, map.c:ldap_back_map_attrs() loops forever on removed attributes
(ie. if one asks ldapsearch for an attribute which has been removed).
2002-06-12 16:39:05 +00:00
Kurt Zeilenga
faf91f1f1f Update to the 'gentle SIGHUP' patch. (ITS#1679)
- Let write operations return unwilling-to-perform after
  'gentle shutdown' has been initiated.
- Change -1 to 2 in slapd_gentle_shutdown and slapd_shutdown, since
  sig_atomic_t can be unsigned (ITS#1736).  The 'gentle SIGHUP' patch
  is older than ITS#1736 but was applied later, so it reintroduced
  the problem.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, June 2002.
2002-06-12 15:43:19 +00:00
Howard Chu
c5c1ddb1ca Deleted Connection->c_cdn. Use conn->c_dn instead... 2002-06-12 08:38:59 +00:00
Howard Chu
a5cd5535e8 Fix typo in previous commit 2002-06-12 04:12:51 +00:00
Howard Chu
6d1a322f73 Finished slap_sasl_setpass for Cyrus 1.5; Cyrus 2.1 is incomplete.
Added conn->c_sasl_dn, streamlined slap_sasl_bind.
2002-06-12 04:05:48 +00:00
Kurt Zeilenga
1410b3e7d9 An almost complete slap_sasl_setpass() 2002-06-12 00:13:29 +00:00
Kurt Zeilenga
d6e7f0f630 Rework c_authzid_backend in preparation for sasl_setpass() support 2002-06-11 22:56:47 +00:00
Kurt Zeilenga
4d3b4f9eb8 return PROTOCOL_ERROR if reqdata is empty. 2002-06-10 19:56:17 +00:00
Jong Hyuk Choi
09a2a8fbce DB_RMW flag to dn2id and id2entry 2002-06-10 19:02:25 +00:00
Kurt Zeilenga
116e165a5c Be less forgiving (don't ignore so many configuration errors) 2002-06-08 18:38:52 +00:00
Kurt Zeilenga
a784e4d054 Add rootdn check when rootpw is set. 2002-06-08 18:04:43 +00:00
Kurt Zeilenga
aa46324462 Fix for ITS#1842 (applied blindly) 2002-06-08 06:09:30 +00:00
Kurt Zeilenga
964d1fdd90 userPassword/authPassword can be safely subtyped (though I wouldn't
recommend it).
2002-06-07 20:32:06 +00:00
Howard Chu
3304d125c4 ITS#1837, one-level searches on leaf entries 2002-06-06 11:27:52 +00:00
Howard Chu
b89c4539b9 Fix Listeners: handles multiple addresses for a given hostname, copies
sockaddr into Listener structure.
2002-06-06 10:33:18 +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
e958a4c780 Fix up abandon merge. Hallvard will holler if I get this wrong. :-) 2002-06-05 16:53:48 +00:00
Kurt Zeilenga
951ca2bd68 Patch: Non-unique msgid for abandon in back-<shell,tcl> (ITS#1793)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

It has just occurred to me - duh - that the process ID of a back-shell
command is a perfectly good unique ID for it, and more useful than
any connection id/message id thingy.  Doesn't need extra arguments
to the shell commands either, except a pid: line to abandon.
And msgid: can still be removed in a future version.
Here is a patch.


Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
2002-06-05 16:40:16 +00:00
Kurt Zeilenga
19eca33ca3 Gentile HUP shutdown from Hallvard 2002-06-03 16:47:43 +00:00
Kurt Zeilenga
5c5b5455fb VLV updates 2002-06-03 16:45:09 +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
55e925abe6 Add abstract/final system attribute types.
clean up error code macros
2002-05-31 20:24:26 +00:00
Kurt Zeilenga
4832cc09d3 Fix bogus assert. 2002-05-31 20:23:33 +00:00
Kurt Zeilenga
bdad40c696 Disallow addition of system schema via config files. 2002-05-30 05:23:37 +00:00
Kurt Zeilenga
aecf4033f6 Hide some yet-to-be-implemented schema 2002-05-29 06:14:55 +00:00
Kurt Zeilenga
02fb60d3da Delete extranous assert() 2002-05-23 03:17:58 +00:00
Kurt Zeilenga
9cdce9c0ed Add back-passwd.h to the mix 2002-05-22 16:22:24 +00:00
Howard Chu
8572d6f2fd Delete $(SLAPD_MODULES) 2002-05-18 03:52:46 +00:00
Howard Chu
561400dbe8 Delete $(SLAPD_MODULES) - we never implicitly link a dynamic module,
so this feature is unnecessary. Also it was breaking Unix dynamic builds.
2002-05-18 02:05:17 +00:00
Kurt Zeilenga
3abec7d8d7 From: h.b.furuseth@usit.uio.no
Patch: str2entry() dereferences NULL  (ITS#1822)

Sorry, last patch was wrong.  I didn't notice that e->e_dn
always is NULL at that point.  Here is a corrected patch.
2002-05-16 15:45:24 +00:00
Howard Chu
4ac8a54b56 Builds on both Unix and NT now. 2002-05-16 11:00:37 +00:00
Howard Chu
3d491808a8 Fixes for MingW: (passes test007, with LDAP_DIRSEP tweaks in slapd.conf)
must include <ac/stdlib.h> to get MAX_PATH defined.
  use LDAP_DIRSEP instead of '/' in paths
  define truncate/ftruncate macros, etc.
2002-05-16 10:51:45 +00:00
Kurt Zeilenga
54d93cc003 From: h.b.furuseth@usit.uio.no
Subject: Patch: str2entry() dereferences NULL  (ITS#1822)

entry.c:str2entry() prints pdn->bv_val even though pdn is always
NULL.  pdn was pretty dn before version 1.80.
2002-05-15 20:55:43 +00:00
Kurt Zeilenga
4e51bba217 Patch: Implement surrogate parent for back-shell (ITS#1815)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

A surrogate parent is supposed to keep back-shell children from
deadlocking due to resources locked by a threading parent.

Implementation note: The surrogate parent closes all unused file
descriptors, so it logs errors to stderr instead of via Debug() and
uses relloc() instead of ch_realloc().

Also close a file descriptor leak if fork() fails in fork.c.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
2002-05-15 06:18:14 +00:00
Kurt Zeilenga
36d9d9729c Fix typo in last commit. 2002-05-15 05:44:46 +00:00
Kurt Zeilenga
10a3a1b9c9 Patch: back-shell/searchexample.* nitpicks (ITS#1816)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

searchexample.conf needs core.schema, otherwise it fails on the suffix
DN.  searchexample.sh has a spurious 'sleep', probably from testing.
Also, I suggest 'chmod +x searchexample.sh'.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
2002-05-15 05:17:08 +00:00
Howard Chu
d2ee3d52a3 Once more, fix idl_intersection. Don't walk past end of arrays. 2002-05-15 03:05:05 +00:00
Howard Chu
a2d310f92e Fix nameUIDvalidate memfree 2002-05-15 00:48:47 +00:00
Howard Chu
856e21296a Cleanup log msg 2002-05-12 19:21:12 +00:00
Howard Chu
2d94a2016c Check for NULL before comparing authcid 2002-05-12 18:42:43 +00:00
Howard Chu
d7060d19f3 Skip processing if canonicalization is invoked redundantly (SASL PLAIN).
Truncate large username instead of failing with SASL_BUFOVER; we only care
about the DN anyway. (SASL 2 only)
2002-05-12 18:40:37 +00:00
Howard Chu
aea521bec2 Fix, SASL authzIDs might not be NUL-terminated. prop names must only be
set once; setting erases all existing values.
2002-05-11 20:19:55 +00:00
Howard Chu
da7a5a8e79 Fix typo in 1.97 2002-05-11 19:24:04 +00:00
Howard Chu
dfae2441eb Cleaned up getdn normalization 2002-05-11 08:07:18 +00:00
Howard Chu
379f84ba47 Fix previous commit, free in wrong place 2002-05-11 06:58:13 +00:00
Howard Chu
b057507e23 Cleanup HAVE_TLS dependencies, cleanup username with embedded realm handling 2002-05-10 19:26:35 +00:00
Kurt Zeilenga
445b7982d7 Patch: back-passwd needs pwent mutex (ITS#1794)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

back-passwd uses getpwent() and setpwfile(), which use static data.
It needs a mutex to make sure these operations can complete without
interference from another back-passwd call.  Here is a patch.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
2002-05-09 02:26:05 +00:00
Kurt Zeilenga
15e6a98bba Patch: Non-unique msgid for abandon in back-<shell,tcl> (ITS#1793)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

Here is a patch which does what I described.  Of course, someone has
to decide if that is the right solution:-)
- Add an "opid:" line to the input to back-shell commands.
- Add an "abandonid: <opid> line to back-shell/abandon input.
- Replace message id with opid in back-tcl arguments.
- Add an abandonid = <opid> argument to back-tcl/abandon.
An opid (operation ID) is a "connection ID/message ID" string.  I
would have liked to use another name to avoid confusion with struct
slap_op->o_opid, but I could not think of another apt word.

This also fixes ITS#1784 and ITS#1792.  Since calling conventions
changed anyway, I fixed back-shell by adding abandonid: and making
opid: always be the ID of the current operation.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
2002-05-09 02:11:39 +00:00
Howard Chu
da36670ea3 Don't use slap_empty_bv in structures that are expected to be free'able. 2002-05-08 23:16:17 +00:00
Howard Chu
9ba9ac4d9e Fix dnParent: must always return a pointer relative to the input pointer. 2002-05-08 23:04:11 +00:00
Howard Chu
fbe4785c5a Delete unused CANON_BUF_SIZE #define 2002-05-07 23:29:19 +00:00
Howard Chu
6f47e13147 Cyrus 2 support now requires Cyrus 2.1.3. Adds support for in-directory
SASL secrets. (Only works with plaintext userpassword tho.)
2002-05-07 23:08:23 +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
a067d64c3a Fixes for slap_sasl_regexp parsing and normalization 2002-05-07 18:46:32 +00:00
Howard Chu
56f1355968 Added comment for future reference re: in-directory secrets 2002-05-07 02:17:34 +00:00
Howard Chu
a039bd97ea ITS#1803, bogus free() of lber-private memory. 2002-05-06 16:51:00 +00:00
Pierangelo Masarati
bffa43e743 fix formats 2002-05-04 11:07:28 +00:00
Pierangelo Masarati
b0d1a52975 remove unused variables 2002-05-04 11:07:04 +00:00
Howard Chu
55cefef7ee ITS#1797 err used unit'd in Debug statement. (removed) 2002-05-04 10:50:24 +00:00
Howard Chu
ef678b179c ITS#1795 authid is uninit'd if tls_get_cert fails 2002-05-04 01:28:56 +00:00
Howard Chu
846a5832bb Set tls_opt_require_cert to default to NEVER. libldap defaults to DEMAND
due to client needs, we change it back here.
2002-05-04 00:07:12 +00:00
Kurt Zeilenga
9d39e1e672 fix uninitialized counter in matched values 2002-05-03 19:00:52 +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
Howard Chu
203c410243 Fix dependency typo from 1.99 2002-05-03 14:42:14 +00:00
Howard Chu
640bc864fa Use specific msg id instead of ANY to retrieve search results 2002-05-03 14:23:55 +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
Pierangelo Masarati
b9d74aba5f broken berval after successful rewrite 2002-05-02 11:42:11 +00:00
Pierangelo Masarati
2ca323d2b5 Fixes ITS#1786: dynamically growing number of tokens in config line
for both slapd and slurpd

Copyright 2002, John Morrissey (jwm at horde dot net), All rights reserved.
This is free software; you can redistribute and use it under the same terms
as OpenLDAP itself.

Applied with changes
2002-05-02 08:48:14 +00:00
Howard Chu
b3d0ab87aa More cleanups for suffixmassage DNs 2002-05-01 19:05:09 +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
Kurt Zeilenga
5b06af70bb Patch: Perl backend sends bind result twice (ITS#1783)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
            ================

perl_back_bind() should not send LDAP_SUCCESS, the frontend does that.
Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-05-01 18:10:14 +00:00
Pierangelo Masarati
c030dbfefd massage dn-valued attributes also when compiled without --enable-rewrite 2002-05-01 17:53:32 +00:00
Pierangelo Masarati
c1edf76e20 use BerVarray for suffix_massaging stuff 2002-05-01 17:45:03 +00:00
Pierangelo Masarati
1aa96af216 second round at ITS#1749 2002-05-01 16:38:30 +00:00
Pierangelo Masarati
6feec86e5d - trim check for real naming context already defined as suffix
- improve automatic massaging (prettify once)
- add (optimistic) automatic filter massaging
- cleanup of massaging stuff
2002-05-01 11:41:57 +00:00
Howard Chu
48fb754cc0 Added RFC 2459 PKCS9 emailAddress 2002-05-01 06:34:49 +00:00
Kurt Zeilenga
af02eee0d5 Reworking backend_check_restrictions for extensions
Should resolve ITS#1781.
2002-05-01 01:04:57 +00:00
Howard Chu
0f966d2fdb Changed ldap_pvt_tls_get_my_dn and ldap_pvt_tls_get_peer_dn to store result
in dn parameter and return a result code.

Changed dnX509peerNormalize as above. Added debug message on failure to
retrieve client DN.
2002-04-30 13:52:49 +00:00
Pierangelo Masarati
d019bff7b8 First commit of Hallvard's backend documentation effort
Backend documentation patch, version 1

================
Most of this text is taken from OpenLDAP.  The work of rewriting it
to manual pages is done by by Hallvard B. Furuseth and placed into
the public domain.  This software is not subject to any license of
the University of Oslo.
================

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-04-29 20:24:29 +00:00
Pierangelo Masarati
6b8828ed28 handle trivial cases 2002-04-29 19:14:42 +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
cef9fcf78b Fix check for "anonymous" in sasl_getdn 2002-04-27 03:44:23 +00:00
Julius Enarusai
ed8f299245 ITS#1730: Misc typos in NEW_LOGGING code from Hallvard 2002-04-25 22:12:44 +00:00
Pierangelo Masarati
d2ee0b1758 fix off-by-one bug; use s/sprintf/snprintf/ 2002-04-25 19:23:37 +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
Howard Chu
c7262c7599 Added rebind-as-user option; saves bind credentials and sets a rebind_proc
to allow chasing referrals using the same user's credentials.
2002-04-25 02:05:34 +00:00
Kurt Zeilenga
3e3911247b Remove lint. 2002-04-22 23:03:33 +00:00
Kurt Zeilenga
0ca5d06f77 Re: PRIVATE: Patch: Passwords (ITS#1740)
================
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-22 17:31:16 +00:00
Jong Hyuk Choi
60b1ee1ba9 Patch for ITS# 1643 2002-04-19 21:41:32 +00:00
Howard Chu
8c917b8d68 Put dnX509 normalizers behind #ifdef HAVE_TLS 2002-04-19 01:25:15 +00:00
Kurt Zeilenga
96eda541e9 Blind commit:
Re: Untested patch: back-tcl used wrong types  (ITS#1719)

			================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

> I turned it into an automatic variable.

...and used a variable-length array.  That's a gcc extension, it is not
in ANSI C89.  (It is in C99 though.)  You seem to be compiling without
-pedantic:-)  Anyway, here is a patch to turn it back into ch_malloc(),
plus some README fixes
2002-04-18 19:28:26 +00:00
Howard Chu
0aa7c83a0e Fix memory leak in previous commit 2002-04-18 15:55:05 +00:00
Howard Chu
8a5423ea8d deleted sasl_external_x509dn_convert; X509 DNs are always converted to
normalized LDAP DNs now.

Changed dnDCEnormalize to dnX509normalize, added dnX509peerNormalize,
based on new ldap_X509dn2bv() etc.
2002-04-18 12:26:36 +00:00
Howard Chu
80f67ef11e Fix slap_bv2ad initializing with wrong bv_len 2002-04-18 12:21:33 +00:00
Howard Chu
b3c7c9e3ce Delete more unused code, no need to fetch REALM in slap_sasl_bind 2002-04-17 19:47:34 +00:00
Kurt Zeilenga
7ee5d2612b Fix ssf declaration 2002-04-17 17:56:30 +00:00
Kurt Zeilenga
84f4acf124 NEW_LOGGING bugs (ITS#1730)
Here a patch for another:  A spurious `"' in back-ldbm.
From Hallvard.
2002-04-17 17:54:52 +00:00
Howard Chu
1dea5905c6 More SASL DN simplification. No more "dn:" prefix used anywhere internally. 2002-04-17 07:56:46 +00:00
Julius Enarusai
98f3c3d43b Added LDAP_LOG Messages 2002-04-16 20:11:09 +00:00
Julius Enarusai
4ab3ce1651 Added LDAP_LOG Messages 2002-04-16 19:23:49 +00:00
Jong Hyuk Choi
b7f0983efa Hallvard B. Furuseth's patch for cache lock and mutex 2002-04-16 14:03:13 +00:00
Howard Chu
1bbd51da77 ITS#1712, rewritten dn_openssl2ldap(). Added dnDCEnormalize(), used by
dn_openssl2ldap() and sasl_external_x509dn_convert. Fixed realm handling
for foreign Kerberos realms embedded in usernames.
2002-04-16 08:46:25 +00:00
Luke Howard
03679b7ce5 correct sponsor name 2002-04-16 05:36:22 +00:00
Howard Chu
ababc07479 Add "nentries" to send_search_result() Statslog message. Suggested
by ITS#1360.
2002-04-16 04:58:41 +00:00
Luke Howard
dda2e4cee0 ITS#1646 2002-04-16 04:25:44 +00:00
Luke Howard
064319ae4e ITS#1659 - forgot to define n_a 2002-04-16 04:04:40 +00:00
Luke Howard
c517c23853 ITS#1659: s/na/n_a/ 2002-04-16 03:59:22 +00:00
Luke Howard
a045fc60a5 ITS#1729, #1659 2002-04-16 03:58:21 +00:00
Luke Howard
d2585491a0 ITS#1729 2002-04-16 03:56:23 +00:00
Luke Howard
9db008f08f ITS#1676 2002-04-16 03:51:51 +00:00
Luke Howard
7127e0887c ITS#1659 2002-04-16 03:47:39 +00:00
Kurt Zeilenga
8354160f8b Patch: aclparse.c bugs (ITS#1752)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

Bug fixes:
- acl_regex_normalized_dn(pattern):
  * used pattern->bv_len even though it claimed not to,
  * would walk past the end of strings that ended (incorrectly)
    with a single '\'.
- style=regex checked for "^.*$$" twice but not for "^.*$".
- the code did not notice if dnNormalize2() failed, and would
  (at least in one case) treat a bad DN as '*'.
Some cleanup:
- changed regtest() to return void, since the return value was unused.
- changed acl_regex_normalized_dn() to take a string input argument
  instead of a half-filled berval, it looks saner that way.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-04-15 20:44:05 +00:00
Kurt Zeilenga
709ce4fa6c Re: Patch: ctype functions require 'unsigned char' args (ITS#1678)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

Here are fixes for more places where the argument to ctype.h functions
should be in the range of `unsigned char'.

Explanation of the last patch (to schema_init.c:bvcasechr()):
TOLOWER() and TOUPPER() return values in the range of `unsigned char',
but bvcasechr() then compares those values with a plain `char'.  So I
convert the return values from TOLOWER()/TOUPPER() to `char' first.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-04-15 20:42:42 +00:00
Julius Enarusai
15fffedad7 Added LDAP_LOG Messages 2002-04-15 20:40:15 +00:00
Julius Enarusai
a1b4f71443 Added LDAP_LOG Messages 2002-04-15 20:28:16 +00:00
Julius Enarusai
7d162b6806 Added LDAP_LOG Messages 2002-04-15 20:18:47 +00:00
Julius Enarusai
714ec82ca0 Added LDAP_LOG Messages 2002-04-15 20:05:06 +00:00
Julius Enarusai
92d24de6e0 Added LDAP_LOG Messages 2002-04-15 19:37:49 +00:00
Julius Enarusai
ef4fe3fc4b Added LDAP_LOG Messages 2002-04-15 19:16:32 +00:00
Julius Enarusai
34ef718be8 Added LDAP_LOG Messages 2002-04-15 18:59:20 +00:00
Kurt Zeilenga
02e8527248 Patch: Escape character troubles (ITS#1753)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

maildap could address buf[-1] if len was < 2.

REWRITE_SUBMATCH_ESCAPE is '%', not '\'.

librewrite and saslautz could walk past the end of a string which
ended with an escape character.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-04-15 18:29:39 +00:00
Julius Enarusai
c7d183a19b Added LDAP_LOG messages 2002-04-15 17:57:44 +00:00
Pierangelo Masarati
a9b521cef4 add '-t' switch for clean config check; cleanup usage() messages 2002-04-15 17:32:08 +00:00
Kurt Zeilenga
ab3b125d1e Fix include order 2002-04-15 16:45:02 +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
Howard Chu
66602e8faa Fix name canonicalization and authorization for Cyrus SASL 2.x 2002-04-14 04:27:46 +00:00
Howard Chu
a73ffbe3cd Previous commit included undesired changes. 2002-04-14 04:15:17 +00:00
Howard Chu
9b958147f8 Fix previous commit, == instead of != 2002-04-13 17:27:02 +00:00
Howard Chu
bf6fccd7bb ITS#1740 2002-04-13 10:56:16 +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
17433a8412 Fix ITS#1722 - IPv4 addresses also need to be massaged for sasl_server_new. 2002-04-11 10:04:29 +00:00
Howard Chu
1dcbb23f5b ITS#1727 return allids on unknown filters to allow extended filtering 2002-04-11 08:59:30 +00:00
Howard Chu
170de200f8 ITS#1734 return error on bad config file 2002-04-11 08:51:35 +00:00
Howard Chu
d4465e376f ITS#1732 signed/unsigned integers 2002-04-11 08:46:34 +00:00
Howard Chu
98df4006b1 ITS#1733 eliminate o_abandonmutex 2002-04-11 08:08:42 +00:00
Howard Chu
efecf4e121 ITS#1733 eliminate o_abandonmutex 2002-04-11 08:03:40 +00:00
Howard Chu
0825e12b42 ITS#1570 - avoid overflowing array when dups are present in IDLs 2002-04-11 08:01:56 +00:00
Howard Chu
5c4a924f81 ITS#1735 unused conn.c_uthc_backend, include ldap_pvt.h 2002-04-11 07:42:57 +00:00
Howard Chu
98e3499b05 ITS#1736 slapd_shutdown can be unsigned 2002-04-11 07:28:30 +00:00
Howard Chu
14026284d0 ITS#1613, call ldap_pvt_tls_init after config file is read. ldap.conf doesn't
get read until much later, too late for TLS_RANDFILE to be useful.
2002-04-11 07:04:12 +00:00
Julius Enarusai
1649a3f832 Added/Updated LDAP_LOG messages 2002-04-10 22:17:09 +00:00
Julius Enarusai
0922553da2 Added/Updated LDAP_LOG messages 2002-04-10 22:10:22 +00:00
Kurt Zeilenga
63c9dd8280 SLAP_OP_LAST dependent code needs to be behind SLAP_MONITOR 2002-04-09 23:54:45 +00:00
Howard Chu
f516e34918 ITS#1681 - detect bad filter in slap_parseURI() - from Hallvard Furuseth 2002-04-09 10:41:15 +00:00
Pierangelo Masarati
c22f10f4ca don't count operations per request if back-monitor is not built 2002-04-08 19:13:13 +00:00
Pierangelo Masarati
b772987712 ... and log initiated/completed operations divided per request 2002-04-08 18:41:47 +00:00
Pierangelo Masarati
51e33154b3 count initiated/completed operations divided per request 2002-04-08 18:41:15 +00:00
Pierangelo Masarati
4a2b9b2195 ITS#1730 2002-04-08 18:39:23 +00:00
Pierangelo Masarati
4b9fa66188 use BVC() macro (changed in BER_BVC) to initialize constant bervals 2002-04-08 18:37:37 +00:00
Pierangelo Masarati
4ca97f4118 uniform temporary buf sizes; use automatic buffers instead of heap 2002-04-08 11:09:34 +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
Julius Enarusai
f57d33f636 Added LDAP_LOG messages 2002-04-05 18:38:59 +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
5c70106657 ITS#1708 ldap_pvt_tls_sb_ctx() et al 2002-04-05 06:48:03 +00:00
Howard Chu
70d4ef9a85 ITS#1714 dn->bv_val malloc len+1 2002-04-05 06:34:15 +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
Howard Chu
1353ded30c Change slap_parseURI to use ldap_parse_url. Other struct berval changes. 2002-04-05 05:37:01 +00:00
Stig Venaas
891f987928 Changed to use lower case for case folding 2002-04-04 12:50:46 +00:00
Pierangelo Masarati
dd4f10de57 use ber_bvcmp where appropriate 2002-04-03 15:43:41 +00:00
Pierangelo Masarati
82d1c77722 missing description in current cunnections number 2002-04-03 15:42:54 +00:00
Pierangelo Masarati
440637dde7 various acl improvements/cleanups/speedups (need to be documented, though) 2002-04-03 15:42:19 +00:00
Pierangelo Masarati
f4dba925ff add a switch that enables/disables reverse lookups if configured with rlookups 2002-04-03 15:40:49 +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
Kurt Zeilenga
26b99bc35d ITS#1701. Fix ber_scanf() return tag handling.
Based upon patch submitted by Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>.
2002-04-02 18:40:04 +00:00
Pierangelo Masarati
32c2995ecc fix last part of ITS#1710 (commented code, though) 2002-04-02 14:38:57 +00:00
Pierangelo Masarati
068c73b01f appropriately detect the required conn 2002-04-02 14:25:01 +00:00
Pierangelo Masarati
6c589f2552 don't loop any more if connid is found :) 2002-04-02 13:44:30 +00:00
Pierangelo Masarati
090ef02589 partial fulfilment of ITS#1710 2002-04-02 12:27:06 +00:00
Pierangelo Masarati
49ab777bbb minor improvement 2002-04-02 11:51:05 +00:00
Pierangelo Masarati
7b2f5f0da7 use ber_bvcmp() whenever possible 2002-04-02 11:41:56 +00:00
Pierangelo Masarati
e847d6fdf2 fix ITS#1704 2002-04-02 11:16:00 +00:00
Pierangelo Masarati
ab6ad34692 the logic of this check was completely reversed; in case '*' is used, on't test the regula expression 2002-04-02 08:18:30 +00:00
Pierangelo Masarati
1658aa0893 fix counting twice the substitution length (caused berval to have wrong length, rejected by subsequent dnNormalize) 2002-03-30 15:44:30 +00:00
Pierangelo Masarati
9bf3ccd0bf allow attribute exclusion list in selective replica 2002-03-30 08:52:20 +00:00
Pierangelo Masarati
bcc486df2d initialize temporaries 2002-03-30 08:47:13 +00:00
Pierangelo Masarati
af3a65b924 do not print -1 as %lu 2002-03-30 08:45:21 +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
f9766f684b System loading can now be done in one place... 2002-03-30 01:28:34 +00:00
Kurt Zeilenga
e7523b1496 add si_syn_octetString to keep syntax load checks in one place. 2002-03-30 01:07:20 +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
cf3f722c94 Now understand with Hallvard was commenting on in ITS#1669.
Removed "leading" comments and added a general caution statement.
This schema will be pulled from 2.1.
2002-03-25 17:13:11 +00:00
Kurt Zeilenga
9b26e48aa6 ITS#1674: integerOrderingMatch, integerFirstComponentMatch and then some. 2002-03-25 17:08:38 +00:00
Kurt Zeilenga
aa18b7a52e ITS#1686: fix typo in usage 2002-03-25 16:30:06 +00:00
Howard Chu
f20a6a27b3 Fix ITS#1675, make sure search results are initialized 2002-03-25 11:52:39 +00:00
Kurt Zeilenga
6033aeb6cf Fixup a few schema definitions 2002-03-24 17:37:27 +00:00
Kurt Zeilenga
0be4d842bc Update control framework
Misc cleanup
NT updates
2002-03-24 02:17:21 +00:00
Kurt Zeilenga
41138a8ca7 cleanlup 2002-03-24 02:15:17 +00:00
Kurt Zeilenga
4216f19ed1 cleanup 2002-03-24 02:14:00 +00:00
Pierangelo Masarati
49f324a1fa fix ITS#1671 and more 2002-03-23 16:53:44 +00:00
Pierangelo Masarati
724666c447 fix ITS#1667 2002-03-23 16:17:26 +00:00
Pierangelo Masarati
6174cb6529 improvement of permission handling of local sockets (ITS#1660, issue 2) 2002-03-23 16:07:19 +00:00
Pierangelo Masarati
fa654ae447 fix ITS#1660 (issue 1) 2002-03-23 16:06:22 +00:00
Pierangelo Masarati
50baa90139 port hasSubordinates handling to back-bdb 2002-03-23 11:04:09 +00:00
Howard Chu
f181388a5e Fix ITS#1655, don't retrieve sd until we've checked for valid c_sb. 2002-03-20 23:47:08 +00:00
Howard Chu
6b0fb09e0d Fix ITS#1607, longstanding bug in group and dnattr acls, gave access
to anonymous connections.
2002-03-20 13:11:37 +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
bad62d2167 Fix backend_attribute trying to reference a NULL be. Neither backend_group
nor backend_attribute need to worry about the noSubs parameter of
select_backend().
2002-03-18 08:59:02 +00:00
Howard Chu
35554dadf3 use ber_str2bv() instead of ch_strdup/strlen. 2002-03-18 08:57:59 +00:00
Howard Chu
a1063a041d Fix previous commit, lutil_passwd_scheme() returns boolean, not pointer. 2002-03-18 08:56:47 +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
a1d757a038 Check components of extensible match filter sooner than later. 2002-03-12 23:07:07 +00:00
Kurt Zeilenga
dbfc18985a Align with back-ldbm version 2002-03-12 22:46:13 +00:00
Kurt Zeilenga
9eac390e2f Return inappropriate matching if the syntaxes don't line up for
extensible matching
2002-03-11 16:29:01 +00:00
Kurt Zeilenga
815e2ac717 Add a comment to the check which needs extending to support
new extensible matching rules.
2002-03-11 16:12:36 +00:00
Kurt Zeilenga
5ea0bf2f9b Use put/get filter to convert string to filter 2002-03-11 05:21:49 +00:00
Kurt Zeilenga
b56f7c7222 Add no-op mru_schema_info()...
Not sure how best to populate matchingRuleUses...
2002-03-11 03:06:34 +00:00
Kurt Zeilenga
2f7858044e ITS#1636 fix 2002-03-11 03:05:43 +00:00
Kurt Zeilenga
c02f448a16 Misc extensible match clean up. 2002-03-11 01:48:37 +00:00
Kurt Zeilenga
c9c3a68496 Deprecate filter_print in favor of filter2bv. 2002-03-10 17:41:14 +00:00
Kurt Zeilenga
902350f991 Fix up handling of extended operations with no request data 2002-03-10 17:40:22 +00:00
Pierangelo Masarati
a1b65bcdfe detect unavailable hash algorithms at startup 2002-03-09 11:02:32 +00:00
Howard Chu
f0a453dfca Fix ITS#1615 2002-03-07 20:23:48 +00:00
Julius Enarusai
08d0a48ac5 The following file fails compile when NEW_LOGGING is enabled. 2002-03-07 17:50:56 +00:00
Kurt Zeilenga
1880c23029 Replace get_filter generation of fstr with filter2bv(). 2002-03-07 03:13:11 +00:00
Kurt Zeilenga
a4635f3ada CLDAP fixes 2002-03-06 20:58:20 +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
d9c93faac8 Fix typo 2002-03-04 22:26:47 +00:00
Kurt Zeilenga
3d89f398a9 Fix callback initializer. 2002-03-04 21:28:46 +00:00
Pierangelo Masarati
914d703714 backout previous change; validation has been added to dnNormalize functions 2002-03-02 17:28:19 +00:00
Kurt Zeilenga
ad0858dea4 Add validation. 2002-03-02 17:05:29 +00:00
Pierangelo Masarati
9dee603fdf null length string is not allowed 2002-03-02 14:28:08 +00:00
Kurt Zeilenga
ef7883c028 Fix substring index error handling 2002-03-01 19:07:15 +00:00
Kurt Zeilenga
faa9956446 Validate filter and compare inputs 2002-03-01 18:52:45 +00:00
Kurt Zeilenga
a71cd15182 Add normalize_validate_normalize() to be use instead of value_normalize()
where value has not yet been validated.
2002-03-01 18:05:47 +00:00
Kurt Zeilenga
c0fdb1aaca Add a value_validate() function to be used by prior to value_normalize
calls as needed (compare/filters).
2002-03-01 17:36:22 +00:00
Stig Venaas
c476878fde Using new UTF8bv* all over, getting rid of UTF8normalize() and
UTF8normcmp().
2002-02-27 16:11:24 +00:00
Stig Venaas
94983da942 Added code for approximate matching in UTF8bvnormalize() and changed to use
this in approxMatch etc in schema_init.c
2002-02-26 18:38:40 +00:00
Kurt Zeilenga
5d347b6153 tool install should not be dependent on $(BUILD_LDBM) 2002-02-25 16:57:29 +00:00
Kurt Zeilenga
d50eb2e959 C translator portability changes (ITS#1609) 2002-02-23 23:47:37 +00:00
Kurt Zeilenga
cea1746182 Return proper result codes for usage errors 2002-02-21 19:29:32 +00:00
Kurt Zeilenga
75d97a43eb Fix bug in unused function 2002-02-21 19:28:49 +00:00
Pierangelo Masarati
2d1eb56725 #ifdef local time hack 2002-02-19 09:11:55 +00:00
Kurt Zeilenga
33516fa9eb #ifdef ACI/authpasswd schema 2002-02-18 20:06:50 +00:00
Kurt Zeilenga
348e489b35 #ifdef experimental controls 2002-02-18 19:48:27 +00:00
Howard Chu
f9902a32b4 Changed supportedFeatures to array of struct bervals 2002-02-15 16:33:44 +00:00
Howard Chu
81c3c311a8 Changed reqoid to struct berval 2002-02-15 16:27:31 +00:00
Howard Chu
a0bfd8b058 Add basic objectClass filtering to filtered replicas 2002-02-15 15:21:13 +00:00
Howard Chu
ce4466655e Fix ad_inlist typo on oc->required 2002-02-15 14:48:01 +00:00
Pierangelo Masarati
2aec424646 use memchr in ber_bvchr 2002-02-14 21:10:13 +00:00
Pierangelo Masarati
215448ac83 substrings match works with NULs in UTF8 strings 2002-02-14 18:55:38 +00:00
Pierangelo Masarati
55993dc66a don't free dangling pointers :( 2002-02-14 18:15:56 +00:00
Pierangelo Masarati
ef607e65d7 first round at replacing UTF8normalize with UTF8bvnormalize 2002-02-14 16:01:48 +00:00
Howard Chu
933f6a5fdd For ITS#1601, add ber_init2() using given buffer in-place instead of
allocating a copy.
2002-02-14 13:32:40 +00:00
Pierangelo Masarati
39891e4e5b make UTF8STringNormalize handle NUL 2002-02-13 21:25:57 +00:00
Pierangelo Masarati
6e88ea7108 fix dnValidate (leak and return SUCCESS) 2002-02-13 19:25:58 +00:00
Pierangelo Masarati
3cc674589d DNs may include NULs 2002-02-13 19:18:31 +00:00
Kurt Zeilenga
6ebe49f1b6 Limit the length of [R]DNs on input to 8192. A lower limit,
especially for anonymous clients, might be even more reasonable.
2002-02-13 18:11:52 +00:00
Kurt Zeilenga
ee6d1a4d40 Check for NULs in DNs. 2002-02-13 16:41:41 +00:00
Pierangelo Masarati
33d5f0f8f8 honor the ber_len field to allow to exploit ldap_bv2[r]dn to handle DNs embedded in longer strings ... 2002-02-13 12:09:36 +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
Pierangelo Masarati
959edd88c0 prepare for ldap_bv2dn() 2002-02-13 10:05:22 +00:00
Kurt Zeilenga
2a2d6cc93e Add embedded NUL checks, fix last commit 2002-02-13 09:26:25 +00:00
Kurt Zeilenga
7c962f3dd4 dnValidate needs to check for embedded NULs. 2002-02-13 09:20:07 +00:00
Kurt Zeilenga
275f3be363 Misc. DN fixes and cleanups, namely don't muck with AVA_BINARY values
Also, pass empty_bv when bv_val is NULL.
2002-02-13 06:35:27 +00:00
Kurt Zeilenga
b2d948f0e5 Quick (and expensive) fix to detect DNs with embedded NULs 2002-02-13 04:20:11 +00:00
Kurt Zeilenga
fcf835558e improve log message 2002-02-12 22:55:36 +00:00
Kurt Zeilenga
9b18295f4f Don't print unprintable keys 2002-02-12 19:29:27 +00:00
Kurt Zeilenga
d88f1757ef Fix pointer initialization bug 2002-02-12 19:18:39 +00:00
Kurt Zeilenga
2f6e801ab1 Fix overly complex control management 2002-02-12 18:47:48 +00:00
Kurt Zeilenga
35d04ef121 Minor cleanup. 2002-02-12 04:51:23 +00:00
Kurt Zeilenga
20e46b27fc no need to check escaping of normalized dn 2002-02-12 04:50:40 +00:00
Kurt Zeilenga
0006ec0a46 Revert most of last change 2002-02-12 01:30:35 +00:00
Kurt Zeilenga
ef63ce1441 Misc cleanup 2002-02-12 00:35:29 +00:00
Kurt Zeilenga
c912616590 Fix bug in last commit 2002-02-11 21:07:55 +00:00
Kurt Zeilenga
ec34550487 Note that we likely need to make some of this conditional. 2002-02-11 20:33:27 +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
Howard Chu
fd810bb35e Silence a warning about ldap_debug 2002-02-11 09:38:49 +00:00
Kurt Zeilenga
d23c559646 Don't use 'shtool mkln' as ln(1) replacement.
Allow both <sasl/sasl.h> and <sasl.h>
2002-02-11 08:28:51 +00:00
Kurt Zeilenga
f3548d371f notes needs for future additions 2002-02-11 01:58:36 +00:00
Kurt Zeilenga
ce07fb958e Update libtool usage
s/-L.../libraries -lldap/.../libraries/libldap/libldap.la/
2002-02-10 22:42:51 +00:00
Kurt Zeilenga
5e31e90c74 Fix compile error properly 2002-02-10 18:05:04 +00:00
Kurt Zeilenga
b315d8af34 Update Cyrus SASL detection to always look for <sasl.h> regardless
of version and then try -lsasl2 and -lsasl.  Make SASL code
conditional on SASL_VERSION_MAJOR, not HAVE_CYRUS_SASL.
2002-02-10 17:51:19 +00:00
Howard Chu
8a4e92b259 Support for Cyrus SASLv2. Untested. 2002-02-10 14:27:23 +00:00
Kurt Zeilenga
2b71d70f2f Reverse arguments of is_object_subclass and reverse backwards calls 2002-02-09 23:55:37 +00:00
Kurt Zeilenga
c1bf5ab485 Change structuralObjectClass to use objectClassMatch,
enabling objectclass subclass debugging
2002-02-09 23:13:59 +00:00
Pierangelo Masarati
53a0980348 fix for acl state 2002-02-09 17:31:49 +00:00
Pierangelo Masarati
1f7b880963 fix for acl state 2002-02-09 09:05:40 +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
Kurt Zeilenga
59857824ff Treat access to dn="" as access to dn.base="". Avoid empty regex.
Note: by dn="" already treated as anonymous.
2002-02-08 18:32:12 +00:00
Kurt Zeilenga
357a2fba5b Update comment 2002-02-08 18:26:53 +00:00
Howard Chu
f4989b6210 Some malloc tweaks for for print_vals 2002-02-08 06:54:04 +00:00
Howard Chu
f50b75f0c2 Added replica attr=<attribute list> support to filter replog content 2002-02-08 06:44:33 +00:00
Howard Chu
b2eec644fa Minor IDL tweaks 2002-02-08 06:42:34 +00:00
Kurt Zeilenga
01c6a1946e ITS#1587: s/2289/2589/ 2002-02-07 18:41:59 +00:00
Pierangelo Masarati
cf5489ff00 fixes ITS#1582 (didn't trap SLAP_MOD_SOFTADD modification type) 2002-02-06 08:41:05 +00:00
Howard Chu
6f8cc0d72c Finished compare implementation 2002-02-02 10:37:25 +00:00
Howard Chu
8755c4e067 Deleted unneeded unbind.c 2002-02-02 10:13:16 +00:00
Howard Chu
73c87065fb API updates, some typo fixes 2002-02-02 10:10:35 +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
544ae160b4 Switch to openldap-data 2002-02-02 06:24:47 +00:00
Kurt Zeilenga
29a5c97265 create openldap-data, not openldap-ldbm 2002-02-02 06:23:35 +00:00
Kurt Zeilenga
d4a940d55e use BDB and other updates 2002-02-02 06:23:12 +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
41e8195c2e Fix binary v lang_range typo 2002-01-31 15:09:55 +00:00
Howard Chu
010e94d4de Fix ITS#1573 spelling errors 2002-01-31 14:12:06 +00:00
Howard Chu
38d0af5399 Fix ITS#1572, check for NULL objectClass in is_entry_objectclass 2002-01-31 14:10:19 +00:00
Kurt Zeilenga
057dda50d3 remove deadwood, e.g. slap_index2prefix() 2002-01-31 00:11:44 +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
0eac91fcc7 Entry rwlock is no longer needed as concurrency is managed
by the giant rwlock.
2002-01-29 20:05:55 +00:00
Kurt Zeilenga
7c6afdf7d1 Fix giant lock handling on entry release 2002-01-29 19:43:17 +00:00
Kurt Zeilenga
b6de12f552 revert constification of slap_init_user() 2002-01-29 19:01:15 +00:00
Kurt Zeilenga
78fe3a311f Add giant lock code back in... (it's my flakey devbox that needed work) 2002-01-29 17:58:36 +00:00
Kurt Zeilenga
77e8e46bdf Back out giant lock code, needs more work 2002-01-29 17:49:37 +00:00
Kurt Zeilenga
634cca7f0d Add GIANT rwlock! This should resolve nasty concurrency issues. 2002-01-29 17:27:20 +00:00
Kurt Zeilenga
3a10cc1e43 Add time.c 2002-01-29 17:25:04 +00:00
Pierangelo Masarati
702bdbf8f4 added local time under 'lang' (lang-x-local) 2002-01-29 17:23:26 +00:00
Pierangelo Masarati
8cd8053d5e add Time subsystem 2002-01-29 12:15:13 +00:00
Pierangelo Masarati
9b8ffc30ed fix uninitialized last (NULL) entry in BerVarray 2002-01-29 08:58:34 +00:00
Kurt Zeilenga
0a31400d63 Some misc cleanup 2002-01-29 06:06:20 +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
Pierangelo Masarati
c775624c9f Check the ldif file without actually creating the db (but inits the files;
maybe I should trim this also).  Useful to check LARGE ldif files which
will require TONS on indices without failing at the very last entry for
a silly typo after 45 min. or more :)
2002-01-28 20:36:29 +00:00
Pierangelo Masarati
4f2ff1c108 uses URL extensions to set socket permissions other than default
URL Syntax:

ldapi://[<path>[/????[!]x-mod=<mod>]]

where <path> is the URL-encoded path of the socket (i.e. use %2F instead
of '/' for UNIX filenames!) and <mod> is 3*[w|-] (all we need is write
permission to the socket, read/execute permissions are ignored; however,
they're set when opening the listener).  The critical flag (the optional
'!' if not used ignores the result of the chmod() operation.
2002-01-28 20:26:55 +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
Kurt Zeilenga
97e29c023e Remove lint 2002-01-28 20:22:57 +00:00
Pierangelo Masarati
eb14feac7e provisions for user-supplied permissions 2002-01-28 17:57:53 +00:00
Pierangelo Masarati
f00f86bf22 another round at cleaning it up: better naming, more attributes and so 2002-01-28 17:21:52 +00:00
Pierangelo Masarati
79bf6eb80e beautify listener monitor 2002-01-28 14:01:16 +00:00
Howard Chu
5e522ca882 Changed Access.a_sockurl_pat, Connection.c_listener_url etc.
to struct bervals
2002-01-28 11:41:07 +00:00
Howard Chu
b6b4d837e3 Some more struct berval conversions 2002-01-28 10:11:36 +00:00
Howard Chu
c3c85b4062 Extended TLS_REQCERT/TLSVerifyClient syntax to 4 states: never,allow,try,
and hard/demand.
2002-01-27 02:56:18 +00:00
Kurt Zeilenga
bf371dcce9 Don't free langbuf. 2002-01-26 23:44:53 +00:00
Kurt Zeilenga
c0daf2aac4 Back out unintended commit 2002-01-26 23:36:39 +00:00
Kurt Zeilenga
8057b1a0a8 Language Tag and Range Support <draft-zeilenga-ldap-rfc2596-xx.txt>
Based upon code submitted by Steve Omrani <somrani@us.ibm.com> (ITS#1525)
2002-01-26 23:14:51 +00:00
Howard Chu
80f404f247 Fix result 2002-01-26 15:06:53 +00:00
Howard Chu
d937237987 Eliminated dn_normalize. No more migration. 2002-01-26 14:51:45 +00:00
Pierangelo Masarati
563736859c appropriately detect index delete failure 2002-01-26 14:33:31 +00:00
Howard Chu
4191f39037 Changed slap_authz_info.sai_mech to struct berval.
Changed sasl_* to use struct bervals.
2002-01-26 13:57:41 +00:00
Howard Chu
6bac96b0bd Changed dnParent to void instead of int. (It always returned success...) 2002-01-26 08:44:59 +00:00
Kurt Zeilenga
309870fa9c Remove deprecated routines and a little lint. 2002-01-26 07:32:13 +00:00
Howard Chu
278ccf828b Changed be_issuffix and dnParent to struct bervals 2002-01-26 06:52:59 +00:00
Howard Chu
7e43108c31 Changed dnParent to struct bervals 2002-01-26 06:52:24 +00:00
Howard Chu
b907603b2d Fix previous commit 2002-01-26 06:52:11 +00:00
Howard Chu
7f54a89f32 Changed be_issuffix and dnParent to struct bervals 2002-01-26 06:40:56 +00:00
Howard Chu
07d0f4e411 Changed be_issuffix and dnParent to take struct bervals.
Changed dn_rdnlen, assumes an already pretty/normalized DN.
Added slap_empty_bv, a zero-length non-NULL berval.
2002-01-26 05:27:28 +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
Kurt Zeilenga
b4df227d94 Initialize backend ssf set from global. 2002-01-25 21:35:40 +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
Howard Chu
1226d620e0 Added Entry->e_bv for entry_decode 2002-01-25 07:11:52 +00:00
Howard Chu
2367a31872 Minor cleanup, no need to zero fields in calloc'd memory 2002-01-25 07:07:55 +00:00
Pierangelo Masarati
cb8299d124 allow trailing '\' to continue a config line (ITS#1551) 2002-01-23 16:28:48 +00:00
Pierangelo Masarati
f74e81aa99 check on escaped rdn separator not needed any more 2002-01-22 08:30:32 +00:00
Pierangelo Masarati
5fc7217f1b final dn_parent elimination in back-bdb 2002-01-22 08:18:12 +00:00
Pierangelo Masarati
f83fd25872 as a temporary hack, return result without rewriting match 2002-01-22 08:17:02 +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
3d8c269f2e Update collective attribute schema 2002-01-19 22:33:07 +00:00
Kurt Zeilenga
ba8da68f94 Add mods.c 2002-01-19 19:58:47 +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
Pierangelo Masarati
48d40fb6c3 fix ad_cmp 2002-01-19 15:42:59 +00:00
Kurt Zeilenga
2c94c7915a Modify ad_cmp() macro to support use as an ordering function. 2002-01-19 06:42:59 +00:00
Kurt Zeilenga
c043a9c0cf Fix modify/replace. 2002-01-19 05:55:18 +00:00
Kurt Zeilenga
b713f42650 Cleanup prototypes 2002-01-19 05:13:14 +00:00
Howard Chu
9cd630d507 Fix previous commit 2002-01-19 04:59:39 +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
eab49fe5da Cleanup lint 2002-01-19 04:50:26 +00:00
Howard Chu
e040c2dee0 Fix previous commit 2002-01-19 04:32:43 +00:00
Howard Chu
d9a9899937 Don't free bv_vals that were passed to ber_bvarray_add. 2002-01-19 04:28:45 +00:00
Howard Chu
306e15d3bd Use calloc for new Entries, take care of new e_ocflags field 2002-01-19 04:28:07 +00:00
Howard Chu
480d50d883 Fix previous commit 2002-01-19 03:50:37 +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
ccc4e64f0a Fix up duplicate error reporting 2002-01-19 02:20:46 +00:00
Kurt Zeilenga
960fa831a6 Add checks for duplicate values. 2002-01-19 01:56:57 +00:00
Kurt Zeilenga
014ea5f486 Add checks for duplicate values 2002-01-19 01:56:35 +00:00
Kurt Zeilenga
4468ffa9e0 Remove some lint. 2002-01-19 01:54:56 +00:00
Kurt Zeilenga
819ffa1c37 Limit slurpd friendly code to replication user. 2002-01-18 22:01:29 +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
32cafeb525 Add missing newline at EOF 2002-01-18 04:50:34 +00:00
Howard Chu
6bfe37bdf5 In UTF8StringValidate, 1-byte chars are already validated 2002-01-18 04:49:55 +00:00
Howard Chu
89abf8bbb0 Change to use dn_match 2002-01-18 04:48:58 +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
3894bd332b fix dnParent to return '' if the dn is a rdn 2002-01-17 22:36:53 +00:00
Pierangelo Masarati
4624bbafba another round replacing dn_parent ... 2002-01-17 19:58:19 +00:00
Pierangelo Masarati
861e9a66b5 fix uninitialized pointer (ITS#1538) 2002-01-17 19:33:48 +00:00
Pierangelo Masarati
d70f117b69 first round at eliminating dn_parent ... 2002-01-17 19:05:21 +00:00
Kurt Zeilenga
e25f6ef0cd Add a safety check to bvcasechr 2002-01-17 17:19:20 +00:00
Pierangelo Masarati
1ea0d20e82 publish dnParent() 2002-01-17 17:04:11 +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
Kurt Zeilenga
32b955cfc5 replace strcasechr with bvcasechr 2002-01-17 00:18:57 +00:00
Pierangelo Masarati
52b05a5b06 more ber_*cmp optimizations 2002-01-16 19:18:41 +00:00
Kurt Zeilenga
b48c355934 Fix up last commit 2002-01-16 19:03:31 +00:00
Pierangelo Masarati
1092fcfed8 remark for future (questionable) optimization 2002-01-16 18:51:20 +00:00
Pierangelo Masarati
0842db2a8b fix ber_*str renaming 2002-01-16 18:50:45 +00:00
Kurt Zeilenga
7f0289a390 Move most of the new ber_*cmp routines to lber_pvt.h to keep them private,
rework them slightly to avoid computations which might result in underflow.
Rename them for consistency with other berval routines.
Remove some utf8 lint.
2002-01-16 18:16:15 +00:00
Howard Chu
356a98a363 Fix bdb_idl_fetch/insert_key. Still fails test011. 2002-01-16 15:22:08 +00:00
Pierangelo Masarati
8f29c5e1e4 use dn_match 2002-01-16 12:15:27 +00:00
Pierangelo Masarati
3d9377f764 compare attribute type, not value 2002-01-16 12:06:42 +00:00
Pierangelo Masarati
af54eed042 added ber_[mem|case]cmp() macros for fast berval comparison; extensively used in acl and in dn_match macro at present 2002-01-16 11:36:47 +00:00
Howard Chu
457b00bf0f Fix idl_insert_key with USE_INDIRECT_NIDS, wasn't setting NIDS... 2002-01-16 09:58:11 +00:00
Howard Chu
913c321a7e Fix misplaced #if USE_INDIRECT_NIDS/cont_alloc in idl_delete_key 2002-01-16 07:39:00 +00:00
Kurt Zeilenga
21c8846e64 Fix last commit 2002-01-16 05:44:21 +00:00
Kurt Zeilenga
20af643fc4 more cleanup 2002-01-16 04:40:41 +00:00
Kurt Zeilenga
3bfab4699e Remove last uses of dn_validate() 2002-01-16 03:01:19 +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
e154da3a09 Remove some asserts. Need to re-valid logic 2002-01-15 19:54:21 +00:00
Kurt Zeilenga
beaf090bbb remove lint 2002-01-15 17:18:18 +00:00
Kurt Zeilenga
5e6e27078c Change replace ACL semantics from U-Mich historical behavior.
U-Mich allows someone with selfwrite to use replace all values
of an attribute with a value containing their DN.  Which, of course,
could than be deleted.  This behavior was carried forward in all
versions of OpenLDAP.

The new semantics separate checks for deleting all existing values
and adding new values.  It is more logical and more inline with
the common use of selfwrite.
2002-01-15 16:23:11 +00:00
Howard Chu
e21e900392 Use LDAP_UTF8_CHARLEN2 to check shortest possible encoding 2002-01-15 08:27:19 +00:00
Kurt Zeilenga
13af7fb073 Misc. cleanup, remove lint, remove unused deprecated functions, etc. 2002-01-15 07:29:15 +00:00
Kurt Zeilenga
5a378a5ce8 A very basic UTF-8 check 2002-01-15 04:38:05 +00:00
Howard Chu
6981960be0 Deleted autosubtypes support. 2002-01-15 01:50:09 +00:00
Howard Chu
d70498f0f2 Revert previous commit again. autosubtypes are gone for good. 2002-01-15 01:49:53 +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
1180279104 Revert previous commit 2002-01-14 20:13:25 +00:00
Kurt Zeilenga
f89308915a Add a default case with assert() just in case. 2002-01-14 17:25:13 +00:00
Kurt Zeilenga
9d307b4242 ITS#1530 no value replace ACL fix 2002-01-14 17:19:05 +00:00
Howard Chu
f91d5f484a In DN_SUBTREE use idl_allids instead of explicit malloc. 2002-01-14 11:52:53 +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
ec8fc19566 Modify performance patch from Gertjan van Wingerde <gwingerde@home.nl>
with minor adjustments.
2002-01-13 23:21:03 +00:00
Howard Chu
8b969479f4 Turn on BDB_IDL_MULTI by default 2002-01-13 22:26:29 +00:00
Howard Chu
22120f4930 Turn on USE_INDIRECT_NIDS by default 2002-01-13 22:25:51 +00:00
Kurt Zeilenga
de6700d3b1 Really fix previous commit 2002-01-13 20:30:17 +00:00
Kurt Zeilenga
7826020e97 Fix compile error 2002-01-13 20:19:40 +00:00
Kurt Zeilenga
ff23cd0f7f Clean up last patch 2002-01-13 20:06:53 +00:00
Kurt Zeilenga
64619bed94 Install system schema checks 2002-01-13 19:38:12 +00:00
Kurt Zeilenga
9a3dcc376c Zap connection_internal_* 2002-01-13 18:05:16 +00:00
Howard Chu
d0724c769e Fix mutex leak in previous commit 2002-01-13 17:17:29 +00:00
Howard Chu
f20991dea7 Changed to use search callbacks instead of connection_internal_open 2002-01-13 17:12:43 +00:00
Howard Chu
af862f8c6b Reworked callback layout, added send_search_entry callback 2002-01-13 16:40:37 +00:00
Kurt Zeilenga
ce2d8ebc7e Misc cleanup, lint removal, and minor optimizations 2002-01-13 05:00:59 +00:00
Pierangelo Masarati
fafce1601e consistently use dn_match macro throughout slapd 2002-01-12 18:17:13 +00:00
Kurt Zeilenga
bcf37b4463 Fix SASL leak and clobber bug
Fix TLS critical rev logic bug
Suggested fixes reported by Roman.Kagan@itep.ru
2002-01-12 17:46:27 +00:00
Pierangelo Masarati
3bddc61a2a clarify macro name: dn_match = 1 if match, 0 otherwise 2002-01-12 17:42:44 +00:00
Pierangelo Masarati
e89d7b1280 some memory handling cleanup: check that memory is freed by who allocated it, or at least put a FIXME where not 2002-01-12 17:35:01 +00:00
Pierangelo Masarati
39a652d2de cleanup and better dn handling 2002-01-12 16:04:15 +00:00
Pierangelo Masarati
725e13dade slap_strncopy function 2002-01-12 16:02:51 +00:00
Pierangelo Masarati
f8fb4aca76 error message from be_entry_put tool backend function 2002-01-12 16:00:51 +00:00
Pierangelo Masarati
ea86a19460 monitor objectclass definition 2002-01-12 11:36:23 +00:00
Kurt Zeilenga
7e9c78fbc6 Add ITS#1508 fix to allow ACIs to grant anonymous users access. 2002-01-11 23:48:22 +00:00
Kurt Zeilenga
d30ab4c113 Additional system schema checks 2002-01-11 20:47:24 +00:00
Kurt Zeilenga
2d09d18de5 Add collective attribute system schema support. 2002-01-11 20:28:05 +00:00
Kurt Zeilenga
70d6f39459 More system schema checks 2002-01-11 19:11:46 +00:00
Kurt Zeilenga
19f2925ab1 Add some basic system schema checks. 2002-01-11 18:56:01 +00:00
Kurt Zeilenga
f57057ee01 Add system schema flags to backends supporting system schema. 2002-01-11 18:26:17 +00:00
Kurt Zeilenga
f402762f9a Remove lint. 2002-01-11 18:03:28 +00:00
Kurt Zeilenga
20dd3c1273 Add Backend to system schema check routines 2002-01-11 18:00:22 +00:00
Pierangelo Masarati
6c76b2c55d of course this is required by listener monitor 2002-01-11 11:48:46 +00:00
Pierangelo Masarati
619f772459 listener monitor 2002-01-11 11:43:35 +00:00
Pierangelo Masarati
5dfbf93687 need this outside for back monitor ... 2002-01-11 10:46:58 +00:00
Pierangelo Masarati
75f1addd76 added structural objectclass; reworked obejctclasses to use 'monitor' and 'extensibleObject'; minor cleanup 2002-01-11 10:27:58 +00:00
Howard Chu
340d288db3 Fix loop in glue_tool_sync 2002-01-11 09:04:34 +00:00
Kurt Zeilenga
504404725a Flip some bits in the backend flags mask 2002-01-11 02:31:47 +00:00
Kurt Zeilenga
c3b62aae91 Fix the bits 2002-01-10 22:54:24 +00:00
Jon Leichter
80a214aef0 Added a missing attribute: tokenGroupsGlobalAndUniversal. It exists
in Active Directory.
2002-01-10 22:38:17 +00:00
Kurt Zeilenga
55501e886f Rework backend (lastmod + glue + system schema) flags 2002-01-10 22:34:11 +00:00
Howard Chu
f0cd9956ed readahead is only needed on UDP, don't use it on TCP. (Save unneeded memcpy) 2002-01-10 22:00:17 +00:00
Howard Chu
54dae3d3d3 Fix str2anlist declaration, str is not const. (gets overwritten if
there is an error.)
2002-01-10 20:25:23 +00:00
Pierangelo Masarati
f757db004c fix for backend-dependent schema check 2002-01-10 20:12:25 +00:00
Kurt Zeilenga
27a26905b7 Use NULL for be parameter to entry_schema_check() for now. 2002-01-10 19:48:43 +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
Howard Chu
f5bfb64f07 Fix lint in previous commit 2002-01-10 18:55:13 +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
Howard Chu
8067107ed2 Added an_oc to AttributeName for caching ObjectClass lookups.
Added error checking to str2anlist; if the attr name doesn't match
any attribute or objectclass the offending attr name is displayed.
2002-01-10 09:54:14 +00:00
Kurt Zeilenga
bf5b4405fe More clean up of system schema changes 2002-01-10 06:58:57 +00:00
Kurt Zeilenga
aa9612f051 add system schema checks 2002-01-10 06:30:26 +00:00
Kurt Zeilenga
b4bb3b5bf8 Fix up last commit 2002-01-10 05:54:50 +00:00
Kurt Zeilenga
58a72b915a More operational attribute infrastructure... 2002-01-10 05:31:49 +00:00
Kurt Zeilenga
cadecfaae1 Finish building in operational attributes 2002-01-10 04:10:54 +00:00
Kurt Zeilenga
f4336c8953 More builtin operational attributes 2002-01-10 03:31:11 +00:00
Kurt Zeilenga
7fcf4e011c Cleanup last commit. Need to add more internal schema.... 2002-01-10 02:01:00 +00:00
Kurt Zeilenga
6ed15e3350 Another round of operational attribute changes... more to follow. 2002-01-10 01:46:08 +00:00
Kurt Zeilenga
91644affd9 Minor cleanup 2002-01-10 00:54:31 +00:00
Kurt Zeilenga
c80d93f2bb Start of new operational attribute framework 2002-01-10 00:17:21 +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
Kurt Zeilenga
bc1cd95149 Rework control infrastructure a bit. Add subentries visibility control. 2002-01-09 06:29:54 +00:00
Kurt Zeilenga
e19fdf58c0 Add some comments 2002-01-09 00:19:56 +00:00
Kurt Zeilenga
053251ee88 Bring nadf back from attic, but note that it is obsolete 2002-01-09 00:19:20 +00:00
Kurt Zeilenga
2958cb4dd0 A subentries control framework 2002-01-09 00:05:49 +00:00
Kurt Zeilenga
2a0bb35194 Move nadf to attic 2002-01-08 23:54:53 +00:00
Kurt Zeilenga
5a6f77e92b comment out pilotObject as it depends on lastModifiedBy
move nadf.schema as it depends on lastModifiedBy
2002-01-08 23:54:24 +00:00
Kurt Zeilenga
205f1bd71b Clarify comment. 2002-01-08 21:14:00 +00:00
Kurt Zeilenga
c9700526e1 Use iplanet OID (with typo fixed) for inetLocalMailRecipient 2002-01-08 21:09:52 +00:00
Kurt Zeilenga
180a37268e comment out obsolete operational schema 2002-01-08 21:08:03 +00:00
Kurt Zeilenga
587d36e18b A few changes to the handling of operational attributes.
Small preparation for applying tighter semantics to operational attributes.
2002-01-08 20:22:41 +00:00
Kurt Zeilenga
319b92202b Fix ACL logic for non-regex peername, sockname, etc. 2002-01-08 02:55:03 +00:00
Kurt Zeilenga
962e351271 Minor cleanup 2002-01-07 21:22:38 +00:00
Kurt Zeilenga
e9342bc7a9 Don't use 'void *' unnecessarily. 2002-01-07 20:28:02 +00:00
Pierangelo Masarati
a8697827c8 fix questionable behavior in case of bind errors 2002-01-07 10:15:05 +00:00
Pierangelo Masarati
ed5f670ac1 fix c_cdn migration 2002-01-07 09:25:20 +00:00
Kurt Zeilenga
89e60eda54 Lachman laser is expired. 2002-01-07 07:41:45 +00:00
Kurt Zeilenga
3dd36b0e0a Add collective schema (not yet implemented) 2002-01-07 04:45:06 +00:00
Kurt Zeilenga
95c6eae74a Clarify DESC 2002-01-07 04:44:50 +00:00
Howard Chu
26e327f32e Fix some debug statements 2002-01-06 07:21:06 +00:00
Howard Chu
50277c6abe Added LDAP_FILTER_EXT case to filter_free() 2002-01-06 06:21:30 +00:00
Howard Chu
e75627a7a7 Don't need to malloc/free ma_rule_text 2002-01-06 06:21:11 +00:00
Howard Chu
ec46a2f33a Use 'm' ber_scanf format where convenient 2002-01-06 06:11:01 +00:00
Kurt Zeilenga
645ae7a22f Hide select matching rules from published schema 2002-01-06 05:29:04 +00:00
Kurt Zeilenga
c7a0c436d2 Don't split DESC over multiple lines 2002-01-06 05:27:03 +00:00
Kurt Zeilenga
4b3e7fa668 Add LDAP/X.500 subentry schema (draft-zeilenga-ldap-subentry-xx.txt) 2002-01-06 04:59:26 +00:00
Howard Chu
ce7d8d26f2 Changed conn->c_cdn to struct berval. 2002-01-06 03:26:09 +00:00
Kurt Zeilenga
d218a5ed5c Add SLAP_MALLOC() and friends.
Intended to be used instead of ch_malloc() and friends.
See comment.
2002-01-06 01:34:53 +00:00
Kurt Zeilenga
eaf3264184 Add some critical control checks. 2002-01-06 00:36:55 +00:00
Kurt Zeilenga
4aae03ef24 Remove lint. 2002-01-06 00:35:41 +00:00
Kurt Zeilenga
95082964fc Fix compile errors 2002-01-06 00:35:01 +00:00
Kurt Zeilenga
c83b406fdc Fix compile errors 2002-01-05 19:36:41 +00:00
Pierangelo Masarati
e5beebd6a3 more cleanup 2002-01-05 18:31:38 +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
Pierangelo Masarati
a744ca2be3 fix logs 2002-01-05 16:53:08 +00:00
Pierangelo Masarati
ca60d05dd1 fix malformed test 2002-01-05 15:44:08 +00:00
Howard Chu
05b9ddc15f Fix uninitialized pointers 2002-01-05 13:25:04 +00:00
Howard Chu
225fa32d8f BVarray fixes for ldap_dnattr_rewrite 2002-01-05 11:41:23 +00:00
Howard Chu
5fd983725e Fix at_destroy free of slap_schema.si_at_undefined (when it's NULL) 2002-01-05 11:41:03 +00:00
Pierangelo Masarati
f3b61d87b7 fix BVarray 2002-01-05 09:58:19 +00:00
Kurt Zeilenga
add5119c1a Cleanup 2002-01-04 23:49:58 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Pierangelo Masarati
b28c3953d4 more fixes/updates 2002-01-04 19:23:10 +00:00
Pierangelo Masarati
847f0f5b8f misc fix/improvements 2002-01-04 19:11:55 +00:00
Pierangelo Masarati
cdc1e149ca fix attribute mapping bug 2002-01-04 18:03:43 +00:00
Pierangelo Masarati
4f4f5dc93f move mapping in a separate file 2002-01-04 18:01:56 +00:00
Pierangelo Masarati
10352caec1 fix rewrite iteration 2002-01-04 17:51:46 +00:00
Pierangelo Masarati
bd535be5cb hide mapping initialization 2002-01-04 17:51:20 +00:00
Pierangelo Masarati
d3dae8d1cd more cleanup; doesn't work (fails on ldap_result, select returns -1) 2002-01-04 15:26:45 +00:00
Howard Chu
05b2332caa struct berval fixes, fix memory leak in ldap_send_entry 2002-01-04 00:49:34 +00:00
Kurt Zeilenga
f5ab06738b All empty IA5 and Printable strings, but not Directory strings. 2002-01-03 20:03:27 +00:00
Kurt Zeilenga
32b764a9b0 Remove lint 2002-01-03 20:02:49 +00:00
Pierangelo Masarati
db71bb1c4d lots of migration to struct berval; unfortunately it seems to be broken 2002-01-03 16:29:38 +00:00
Pierangelo Masarati
3e230c7f91 trivial fixes 2002-01-03 16:28:21 +00:00
Kurt Zeilenga
33e6f6e65c Cleanup (not)found logic 2002-01-03 08:03:22 +00:00
Kurt Zeilenga
d14579589e Indicate support for True (&) and False (|) filters 2002-01-03 08:02:17 +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
265a03c7bd Changed AttributeName back into an array instead of a linked list 2002-01-03 05:41:50 +00:00
Howard Chu
bcdfdb968f Changed AttributeName back into an array instead of a linked list.
Fixed bug in do_search eating up controls.
2002-01-03 05:38:26 +00:00
Howard Chu
029306a5be Use ldap_queue.h instead of <ac/queue.h> 2002-01-03 00:12:46 +00:00
Howard Chu
013b3a9f3d Minor cleanup 2002-01-02 23:26:20 +00:00
Howard Chu
38fea082ad Remove unused int i, j 2002-01-02 22:57:57 +00:00
Howard Chu
1a8543da6d Fix for attr_merge 2002-01-02 22:46:10 +00:00
Kurt Zeilenga
2a799ef855 Fix yet another stupid error... 2002-01-02 19:06:49 +00:00
Kurt Zeilenga
b905b543e0 Additional error checking + misc cleanup 2002-01-02 18:48:10 +00:00
Pierangelo Masarati
c8afe173ba more cleanup 2002-01-02 18:14:29 +00:00
Pierangelo Masarati
09348fcd85 minor fixes 2002-01-02 17:56:48 +00:00
Kurt Zeilenga
763c0de59b Rework filter code
Misc cleanup / lint removal
2002-01-02 17:06:56 +00:00
Kurt Zeilenga
f6be5028f0 cleanup 2002-01-02 17:05:12 +00:00
Kurt Zeilenga
c603bc3946 use sizeof instead of strlen/hardcoded-consts 2002-01-02 17:04:09 +00:00
Kurt Zeilenga
af121f0489 Remove lint 2002-01-02 17:02:30 +00:00
Kurt Zeilenga
c999444f40 Cleanup 2002-01-02 17:01:44 +00:00
Kurt Zeilenga
3adff99b47 Zap unbind and abandon 2002-01-02 17:00:54 +00:00
Kurt Zeilenga
da6928b437 use malloc not calloc 2002-01-02 17:00:21 +00:00
Kurt Zeilenga
38d800637f Use AC_MEMCPY instead of memcpy
Use sizeof instead of strlen
2002-01-02 16:58:37 +00:00
Kurt Zeilenga
f418f6247f use sizeof not strlen 2002-01-02 16:57:30 +00:00
Howard Chu
4aa2a28692 Changed struct berval ** to BVarray 2002-01-02 13:28:10 +00:00
Howard Chu
f59fc68beb Changed struct berval ** to BVarray 2002-01-02 13:09:28 +00:00
Howard Chu
b15eebf50b Minor cleanup. bvarray_add should return success/fail, like
ber_bvecadd does.
2002-01-02 13:03:46 +00:00
Howard Chu
17a36b757c Changed struct berval ** to BVarray 2002-01-02 13:03:06 +00:00
Howard Chu
ee98e6938c Fix memory leak of Mod.sml_type 2002-01-02 12:34:35 +00:00
Howard Chu
a18e437356 Fix entry_decode 2002-01-02 11:52:06 +00:00
Howard Chu
f52cc9bab5 Change struct berval ** to BVarray 2002-01-02 11:00:36 +00:00
Howard Chu
ce9ac6d273 Removed unused unbind stuff 2002-01-02 04:42:09 +00:00
Howard Chu
78c6bd9d23 Removed unused unbind stuff 2002-01-02 04:32:34 +00:00
Howard Chu
b2809cb330 Fix dnParent to return "" for root 2002-01-01 13:32:10 +00:00
Howard Chu
affa8f5a65 More struct berval conversions 2002-01-01 13:31:20 +00:00
Howard Chu
dc4fe01758 Remove abandon cruft 2002-01-01 12:23:02 +00:00
Howard Chu
de97928160 Remove abandon cruft 2002-01-01 11:38:30 +00:00
Howard Chu
ab713881b9 Cleanup 2002-01-01 09:49:23 +00:00
Howard Chu
fdc4dec350 Use ldap_str2rdn 2002-01-01 09:41:10 +00:00
Howard Chu
6fa6ac6676 Fix dnValidate 2002-01-01 09:40:57 +00:00
Howard Chu
1a7d129585 Use ldap_str2rdn instead of rdn_attr 2002-01-01 09:18:34 +00:00
Howard Chu
5b83bbc681 Fix previous commit 2002-01-01 04:44:59 +00:00
Howard Chu
3d8d9344dd Optimize ISSPACE checks in UTF8StringNormalize 2002-01-01 04:43:03 +00:00
Pierangelo Masarati
7d12cbe341 my compiler complains ... 2001-12-31 16:10:39 +00:00
Howard Chu
c962743263 Free any ADs attached to the undefined attribute type 2001-12-31 14:47:41 +00:00
Howard Chu
d9fec6d815 More for ad_inlist 2001-12-31 14:47:20 +00:00
Howard Chu
743c402265 Changed search attrs from struct berval ** to AttributeName * 2001-12-31 11:35:52 +00:00
Howard Chu
b92710e3a5 Minor cleanup 2001-12-31 06:44:36 +00:00
Howard Chu
74cd06efdd Fix previous commit 2001-12-31 06:09:29 +00:00
Howard Chu
9383bf3265 Use ber_free_buf 2001-12-31 06:02:35 +00:00
Howard Chu
e6d4c7dbcc Added oidm_destroy 2001-12-31 04:35:02 +00:00
Howard Chu
10961151ef Use queue-compat for Connection->c_ops,c_pending_ops 2001-12-31 04:08:29 +00:00
Howard Chu
07b4ad7fa2 Use dnIsSuffix 2001-12-30 10:47:28 +00:00
Howard Chu
776ce133e9 More str2rdn tweaks 2001-12-30 09:42:58 +00:00
Howard Chu
5d28b4555e Reorganize LDAPAVA allocation layout 2001-12-30 06:56:57 +00:00
Howard Chu
1f8cf93db8 One more uninit 2001-12-30 00:38:44 +00:00
Howard Chu
c5529b489b fix uninitialized vars 2001-12-30 00:24:44 +00:00
Howard Chu
7ffc723c40 Cleanup, fix uninitialized vars 2001-12-30 00:14:45 +00:00
Howard Chu
f7c1ef4398 More ava fixups 2001-12-29 15:24:53 +00:00
Pierangelo Masarati
7b8c4c3b50 fix some ava bugs 2001-12-29 15:13:24 +00:00
Howard Chu
185ff129b5 Change struct berval * to struct berval in various structures 2001-12-29 15:01:10 +00:00
Pierangelo Masarati
6d046b1681 fix rewrite stuff 2001-12-29 14:18:31 +00:00
Howard Chu
a191392e2e Changed LDAP_AVA struct berval * to struct berval. 2001-12-29 10:35:24 +00:00
Pierangelo Masarati
3930a390e0 cleanup 2001-12-29 10:30:23 +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
40dc0aa329 Silence warning 2001-12-29 02:56:27 +00:00
Howard Chu
c4b432cb3f Fix newSuperior handling. Back out previous commit. 2001-12-29 02:56:08 +00:00
Pierangelo Masarati
04ce28cf48 a couple of comments; will require special DN handling ... 2001-12-28 18:18:16 +00:00
Pierangelo Masarati
1a349907f3 cached entries are deleted if volatile; small improvements 2001-12-28 15:58:51 +00:00
Pierangelo Masarati
c8335e7d14 strengthen previous commit 2001-12-28 15:56:18 +00:00
Pierangelo Masarati
9dab474fa4 fix realloc bug 2001-12-28 15:28:10 +00:00
Pierangelo Masarati
cd8eb327d6 more exploitation of efficient parsing 2001-12-28 15:13:16 +00:00
Pierangelo Masarati
f2a80ff827 fix acl_dn_pat bervalization 2001-12-28 14:47:26 +00:00
Pierangelo Masarati
2f3f7c6765 ldap_str2rdn() can parse without allocating a LDAPRDN* (not very clean, though); used by dn_rdnlen 2001-12-28 12:50:48 +00:00
Howard Chu
92c6c9c25d Misc berval stuff. 2001-12-28 11:45:25 +00:00
Howard Chu
65636e0855 Changed dnExtractRdn to use a provided berval instead of allocating one.
Use ldap_dn2bv and ldap_rdn2bv instead of the *2str versions.
2001-12-28 10:04:53 +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
Howard Chu
ef62c618d7 Fix previous commit 2001-12-28 08:01:01 +00:00
Howard Chu
0039cb2a37 More dnPrettyNormal 2001-12-28 07:58:54 +00:00
Kurt Zeilenga
699a092967 More dn_normalize -> dnNormalize changes 2001-12-28 07:41:52 +00:00
Kurt Zeilenga
27f42bba62 More dn_normalize() -> dnNormalize() changes 2001-12-28 07:30:34 +00:00
Howard Chu
292c575c1f Added dnPrettyNormal, do both Pretty and Normalize at once to save
some ldap_str2dn overhead.
2001-12-28 07:27:15 +00:00
Kurt Zeilenga
4810c8c255 dn_normalize -> dnNormalize 2001-12-28 07:09:12 +00:00
Howard Chu
6b413395fd More struct beral conversion 2001-12-28 04:20:08 +00:00
Kurt Zeilenga
b17572c7d3 cleanup 2001-12-27 23:01:09 +00:00
Pierangelo Masarati
cd06dac298 :) 2001-12-27 18:10:25 +00:00
Kurt Zeilenga
cefce9c965 dnExtractRDN should take a struct berval DN. 2001-12-27 17:17:01 +00:00
Pierangelo Masarati
0bff9e6eb7 struct bervals for DN; fix in send children 2001-12-27 15:16:12 +00:00
Pierangelo Masarati
70e7d58c7d small improvement and prototyping 2001-12-27 15:15:30 +00:00
Pierangelo Masarati
02153708a0 conversion to berval DN 2001-12-27 12:17:54 +00:00
Pierangelo Masarati
7d63865e9f group and attribute conversion to berval DN 2001-12-27 12:17:28 +00:00
Pierangelo Masarati
bc68b6faa7 matched_dn may be null 2001-12-27 12:16:58 +00:00
Howard Chu
102cb93220 Fix memory leak in str2entry 2001-12-27 10:25:50 +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
Kurt Zeilenga
f9c2dc3701 Clean up a few globals 2001-12-27 02:03:57 +00:00
Howard Chu
ef31250591 More struct berval fixes 2001-12-27 01:38:15 +00:00
Howard Chu
0e5e2a95fd More struct berval fixes for modrdn 2001-12-27 01:10:52 +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
Kurt Zeilenga
ef7a99ff99 Additional struct berval DN changes... 2001-12-26 23:26:55 +00:00
Howard Chu
66dc664930 Some more (incomplete) struct berval conversion 2001-12-26 23:26:17 +00:00
Kurt Zeilenga
93fb01e2f0 Fix modrdn and other misc cleanup 2001-12-26 23:03:36 +00:00
Kurt Zeilenga
d9d636f00c Update to new API (struct berval DNs) 2001-12-26 22:59:28 +00:00
Kurt Zeilenga
a3e6048359 Update to new struct berval DN API 2001-12-26 22:53:54 +00:00
Kurt Zeilenga
e0b83b3096 Fix syntax errors caused by struct berval changes... 2001-12-26 21:25:04 +00:00
Kurt Zeilenga
21cecb3831 Update referral handling to use struct berval DNs. 2001-12-26 20:59:24 +00:00
Pierangelo Masarati
f6deebfe6b not needed any longer 2001-12-26 20:53:49 +00:00
Pierangelo Masarati
e2fdaed3c7 some char* to berval fixes 2001-12-26 20:47:41 +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
7195dad7c2 Zap configinfo and cleanup unused defaults 2001-12-26 19:10:13 +00:00
Kurt Zeilenga
4c888909dd Zap configinfo 2001-12-26 19:09:34 +00:00
Kurt Zeilenga
24a4d888dc move compare and delete to struct berval DNs 2001-12-26 19:05:26 +00:00
Kurt Zeilenga
9f8c9bf3a8 struct berval DN changes 2001-12-26 18:04:06 +00:00
Kurt Zeilenga
df9cc9da58 Fix typo 2001-12-26 17:51:07 +00:00
Kurt Zeilenga
d64ec6ee0d modify be_referral to use struct berval DNs. 2001-12-26 17:40:34 +00:00
Kurt Zeilenga
139e78e35c Remove lint. 2001-12-26 16:52:26 +00:00
Kurt Zeilenga
21288fbb21 Misc cleanup and dn_normalize() zapping
Fix nameAndOptionalIdentifer syntax.
2001-12-26 16:42:35 +00:00
Howard Chu
bbcb0f8a7f Replace strcat with slap_strcopy 2001-12-26 16:25:18 +00:00
Howard Chu
d8979214fe Removed obsolete dn_normalize calls 2001-12-26 16:24:18 +00:00
Howard Chu
71aff74f71 Use dnNormalize 2001-12-26 16:23:32 +00:00
Howard Chu
2a3dc7ab8f Moved bdb_strcopy to slap_strcopy 2001-12-26 15:52:46 +00:00
Howard Chu
dae9473e08 Minor struct berval tweaks 2001-12-26 15:29:17 +00:00
Howard Chu
d0add35348 Changed get_limits to struct berval* 2001-12-26 15:28:01 +00:00
Howard Chu
3da3be8128 Precompute syn_oidlen and mr_oidlen 2001-12-26 14:36:02 +00:00
Howard Chu
15f630545a Changed ma_rule_text to struct berval.
Changed get_filter to struct bervals
2001-12-26 13:47:10 +00:00
Howard Chu
a1460e74ce Added ldap_xxx2bv schema functions 2001-12-26 12:31:44 +00:00
Howard Chu
d474789d0d First pass at converting bind to struct bervals 2001-12-26 11:41:38 +00:00
Pierangelo Masarati
29ffe05902 more on attrs array from char* to berval* 2001-12-26 11:23:35 +00:00
Howard Chu
fb3af1ccbd Merged ber_bvstr and ber_bvstrdup into ber_str2bv. 2001-12-26 10:06:19 +00:00
Howard Chu
d00fe773ae Fix attrs handling 2001-12-26 09:19:57 +00:00
Howard Chu
e78a0930c8 Fix attrs handling 2001-12-26 08:49:27 +00:00
Howard Chu
ede3abc8c7 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:47:04 +00:00
Howard Chu
c7d7c6f18f Added missing passwd_back_db_config. 2001-12-26 08:32:08 +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
65977a0f83 Migrate to dnNormalize 2001-12-26 06:21:23 +00:00
Howard Chu
34214776d1 Minor cleanup 2001-12-26 06:21:06 +00:00
Howard Chu
7685b237b7 Fix unterminated string in previous commit. dnNormalize ought to use an
ldap_bv2dn function instead of ldap_str2dn and honor the bv_len's...
2001-12-26 04:51:10 +00:00
Howard Chu
b96645af7d More struct berval changes, dnNormalize migration... 2001-12-26 04:17:49 +00:00
Kurt Zeilenga
dab28c8773 Fix typo 2001-12-25 19:53:59 +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
e08a10b853 Have replog() use struct berval DNs 2001-12-25 04:09:09 +00:00
Kurt Zeilenga
c3323c31d5 Fix modrdn 2001-12-25 03:47:35 +00:00
Kurt Zeilenga
ae0a17fa4e Adjust e_name.bv_len on modrdn 2001-12-25 03:03:03 +00:00
Kurt Zeilenga
3336619c80 More "char *" to struct berval DN changes 2001-12-25 02:30:01 +00:00
Kurt Zeilenga
5ee89d6167 Use struct berval DNs for root DN and update DN 2001-12-25 00:05:26 +00:00
Kurt Zeilenga
f443af5a57 Remove unneeded cheats. hyc found/fixed my bug (in slap.h) 2001-12-24 20:42:05 +00:00
Kurt Zeilenga
5ccff70aa3 update comment
make tests (0-4) now works! (w/ dnNormalize/dnMatch cheats)
2001-12-24 20:29:59 +00:00
Howard Chu
6654fffb3e Fix SEGV when no newSuperior is specified 2001-12-24 20:27:00 +00:00
Kurt Zeilenga
5b49e1a9c5 This really should work... but it's no more broken than last commit 2001-12-24 20:20:29 +00:00
Howard Chu
a61b777cdc Fix uninitialized struct berval* to avoid assert in dnNormalize 2001-12-24 20:12:30 +00:00
Kurt Zeilenga
b735ca3237 Add some cheats to dnNormalize and dnMatch to workaround
ava normalization issues.
2001-12-24 20:07:19 +00:00
Howard Chu
3df5c17881 Fix typo in e_ndn macro 2001-12-24 20:03:54 +00:00
Kurt Zeilenga
6441db83c0 Misc cleanup, but doesn't fix tests. 2001-12-24 19:21:42 +00:00
Kurt Zeilenga
54e11f63e5 Missed a dnPretty ber_val NULL... 2001-12-24 18:53:33 +00:00
Pierangelo Masarati
cbe43a8540 more re-engineering; now rdn_attrs() and so are written in terms of ldap_str2rdn; some functions are deprecated 2001-12-24 18:42:51 +00:00
Pierangelo Masarati
e544300b05 back out previous change 2001-12-24 18:39:41 +00:00
Kurt Zeilenga
d047cc854e Require the struct berval **out argument of dnPretty/dnNormalize
point to a NULL pointer, that is assert( *out == NULL ).
Eventually, we'll allow **out to point to a preallocated
struct berval (to avoid unnecessary allocation).
2001-12-24 18:38:20 +00:00
Kurt Zeilenga
d3d4bb9270 Fix up frontend side of modrdn. Need to rework backend side (especially
to adjust ber_lens as needed).
2001-12-24 18:02:49 +00:00
Howard Chu
3b8cf82517 Use e_nname.bv_len 2001-12-24 17:52:07 +00:00
Howard Chu
b4b948c37b e_name.bv_len stuff in entry_decode 2001-12-24 17:37:22 +00:00
Pierangelo Masarati
f0c9590e68 comment for future optimization 2001-12-24 17:27:26 +00:00
Kurt Zeilenga
aac4f1caf5 Basic ename.bv_len work. 2001-12-24 17:24:18 +00:00
Pierangelo Masarati
7aedd4972d trim spurious e_ndn also from back-meta 2001-12-24 17:24:07 +00:00
Howard Chu
6e3ec13e05 Avoid conflict with e_ndn macro 2001-12-24 17:06:46 +00:00
Kurt Zeilenga
fa30a46446 Fix DN struct berval issue 2001-12-24 17:01:08 +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
70194f9ad6 Changed suffix_alias() to use struct berval * in-place. 2001-12-24 16:29:18 +00:00
Pierangelo Masarati
7bf6ec940b re-engineered some dn related functions with ldap_dn* functions; helpers should be used instead of deprecated functions in code 2001-12-24 15:48:35 +00:00
Howard Chu
9e0ab3da36 Changed Access->a_set_pat and acl->acl_dn_pat to struct berval to eliminate
strlen() from acl processing.
2001-12-24 15:43:27 +00:00
Howard Chu
18cd610f2d op->o_ndn berval fixes for SLAPD_ACI_ENABLED 2001-12-24 15:18:02 +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
Howard Chu
9969058a06 Fix typo in berval commit 2001-12-24 13:47:47 +00:00
Kurt Zeilenga
883196d348 Clean up some symbol scoping 2001-12-24 06:36:44 +00:00
Kurt Zeilenga
d0abe6f59f Misc DN cleanup, no functional changes 2001-12-24 06:00:02 +00:00
Kurt Zeilenga
e701812f27 Make note of deprecated DN routines. Need to write
"struct berval" versions
2001-12-24 04:39:15 +00:00
Kurt Zeilenga
914eba1207 Improve error message 2001-12-24 04:03:27 +00:00
Kurt Zeilenga
9d56c59d1b Minor cleanup, rename ldapava_free_*() routines and
don't expose symbols of ava helper routines
2001-12-23 22:46:37 +00:00
Kurt Zeilenga
7a6e80cdcd Zap dn_match(), cleanup up prototype header 2001-12-23 20:23:15 +00:00
Kurt Zeilenga
50d57151a7 Move dnValidate, dnNormalize, dnPretty to dn.c 2001-12-23 01:19:46 +00:00
Kurt Zeilenga
0c28b66a75 use dnPretty instead of dn_pretty 2001-12-23 00:43:57 +00:00
Kurt Zeilenga
a4a1325a6a Update BER decoding of PDU to use "o" (struct berval) instead of
"a" (char **)... another step towards BerValue DNs.
2001-12-22 21:52:58 +00:00
Kurt Zeilenga
29d5819729 Fix up builds 2001-12-22 20:17:19 +00:00
Kurt Zeilenga
a78053ecfa Add a couple of FIXME comments 2001-12-22 19:21:32 +00:00
Pierangelo Masarati
de903b65c9 added operations and sent stats to back-monitor; minor cleanup 2001-12-22 19:14:10 +00:00
Pierangelo Masarati
7733169933 allegedly unnecessary selection of first database to return rootDSE or subschema entries; note that the same happens in access_allowed() 2001-12-22 14:25:54 +00:00
Pierangelo Masarati
328d38713a better handling of on-the-fly operational attrs by means of helpers 2001-12-22 14:24:13 +00:00
Pierangelo Masarati
3824672c49 added hasSubordinates to back-monitor 2001-12-22 12:28:02 +00:00
Pierangelo Masarati
e36bde9180 added backend-side support for on-the-fly operational attributes; added hasSubordinates to schema and back-ldbm 2001-12-22 11:50:16 +00:00
Pierangelo Masarati
d71888c0aa temporary variable erroneously inside #ifdef (ITS#1503) 2001-12-21 10:15:24 +00:00
Kurt Zeilenga
d23313a068 LDAPv2 disallow and other flag changes
Fix compile errors
2001-12-21 04:44:34 +00:00
Howard Chu
56bc0b64df Fix - don't free constant database names 2001-12-20 08:47:32 +00:00
Kurt Zeilenga
5c0a8848cf Add abstract object class checks and a bit of structuralObjectClass
optimization.
2001-12-20 01:41:44 +00:00
Kurt Zeilenga
80c134ec07 Fix error in last commit 2001-12-20 00:44:26 +00:00
Kurt Zeilenga
1d6c8d8157 Add better error reporting.
Handle multiple SUP objectClasses.
2001-12-20 00:34:36 +00:00
Kurt Zeilenga
39bc94082a Fix minor error in error text handling
Fix invalid structural object class chains in test schema
2001-12-19 23:41:31 +00:00
Kurt Zeilenga
948925a683 Patch slapadd(8) to provide a structuralObjectClass if missing
from input.  This likely needs to be done by the frontend instead.
Add structuralObjectClass to the root and subschema dses.
2001-12-19 22:41:00 +00:00
Kurt Zeilenga
49d16c4dce Add structuralObjectClass support and a bit of const'ification 2001-12-19 22:08:24 +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
fff5fc14ec from jon@symas.com - minor cleanup 2001-12-18 04:02:17 +00:00
Kurt Zeilenga
ca975216b8 Regenerate configure and fix AC header inclusion 2001-12-18 02:25:21 +00:00
Howard Chu
0b22897f37 Minor cleanup 2001-12-18 00:29:43 +00:00
Howard Chu
3bd8946ca0 from jon@symas.com - minor cleanup 2001-12-17 22:48:29 +00:00
Howard Chu
923cdcf3c5 fix from jon@symas.com - missing arguments to Debug/LDAP_LOG 2001-12-17 22:47:36 +00:00
Howard Chu
8ad557e4ec fix from jon@symas.com - inet_ntoa on uninitialized sockaddr 2001-12-17 22:46:59 +00:00
Howard Chu
3545f082af fix from jon@symas.com - don't free uninitialized bv_val 2001-12-17 22:46:08 +00:00
Howard Chu
63d4d0eb1e Fix ITS#1497 use strcmp instead of strncmp 2001-12-17 21:56:24 +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
ff682be26e Added acl_destroy, acl_free. 2001-12-15 12:41:53 +00:00
Howard Chu
826056e75b More thorough backend_destroy. Added config_destroy. Destroy slap_listeners.
Plugged other small leaks.
2001-12-15 12:05:58 +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
Pierangelo Masarati
cea4556910 allow empty suffix 2001-12-12 07:56:17 +00:00
Howard Chu
bc66d649b3 More from jon@symas.com - slapd.conf needs backslashes to be escaped. 2001-12-11 22:49:16 +00:00
Howard Chu
bfe6df6b20 Don't signal error if reindexing an already existing dn2id index 2001-12-11 14:23:05 +00:00
Howard Chu
fcce9bb260 Fix ldbm_tool_entry_first, was not byteswapping ID. 2001-12-11 14:03:18 +00:00
Pierangelo Masarati
7330016026 strengthen dn_issuffix 2001-12-11 12:36:54 +00:00
Pierangelo Masarati
f461eb5c72 better description of the backend 2001-12-11 11:47:43 +00:00
Pierangelo Masarati
f21649c9a6 fix backend suffix allocation bug; add better versioning to main entry 2001-12-11 11:31:38 +00:00
Pierangelo Masarati
e754997da0 minor cleanup 2001-12-11 11:30:01 +00:00
Pierangelo Masarati
e25627942e missing files (sorry) 2001-12-10 21:49:07 +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
b54df180f0 Fix - on little-endian machines, store IDs in big-endian order. 2001-12-10 17:42:01 +00:00
Howard Chu
75064ce91d Fix check for DN_SUBTREE on be suffix 2001-12-10 16:59:37 +00:00
Howard Chu
ce76a4b01a Fix - on little-endian machines, store IDs in big-endian order. Otherwise
BDB's default key sort algorithm sorts in the wrong order (and there's no
convenient way to select the correct algorithm). This is an incompatible
change to the database format but will improve back-ldbm's add/delete
characteristics.
2001-12-10 16:53:15 +00:00
Howard Chu
d7a7b844a0 More cleanup. The last, I hope. 2001-12-10 13:44:02 +00:00
Howard Chu
aeba8c29bb Extra NULL check, just in case 2001-12-10 13:39:36 +00:00
Howard Chu
727baf2fa5 Misc cleanup 2001-12-10 13:35:04 +00:00
Howard Chu
74377c9620 Fix typo in glue_back_select 2001-12-10 12:30:43 +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
Pierangelo Masarati
95f1740aa6 improvements to monitor backend: added a log entry that lists the current log level and can be modified via protocol at runtime, to change the log level; minor improvements; fixed a problem in dealing with dn normalization 2001-12-10 09:50:06 +00:00
Pierangelo Masarati
fe45b74798 minor cleanup 2001-12-10 09:46:50 +00:00
Kurt Zeilenga
7a2d752118 fix issuffix call 2001-12-09 19:19:10 +00:00
Kurt Zeilenga
30831a4012 misc cleanup 2001-12-09 18:57:46 +00:00
Howard Chu
fd7e23c188 Converted suffixAlias to struct bervals. 2001-12-09 14:57:42 +00:00
Howard Chu
45aadbbbba Eliminate unnecessary per-operation dn_normalize(o_ndn); it's already
done in do_bind() and there's space in the connection structure for c_ndn
already, just copy it.
2001-12-09 14:46:29 +00:00
Howard Chu
d0b1ca692a Minor strlen cleanup 2001-12-09 13:57:55 +00:00
Kurt Zeilenga
ab6f9bd352 Remove lint 2001-12-09 03:19:23 +00:00
Howard Chu
369ee86107 Cleaned up search, use dn_issuffixbv 2001-12-09 03:09:18 +00:00
Howard Chu
ebadb3737f Added dn_issuffixbv() like dn_issuffix, but with bervals. 2001-12-09 03:02:29 +00:00
Howard Chu
984c29bc5f Added ndn to replog args, eliminate unnecessary dn_normalize in replog. 2001-12-09 02:57:50 +00:00
Howard Chu
acc2500114 Added ndn to replog args, eliminate unnecessary dn_normalize in replog. 2001-12-09 02:47:39 +00:00
Howard Chu
1f28047ab5 Added referrals to gluestate. 2001-12-09 02:46:25 +00:00
Kurt Zeilenga
bc9cee96a1 More misc MSVC changes 2001-12-09 02:43:04 +00:00
Kurt Zeilenga
abd9be4def Remove lint and misc MSVC updates 2001-12-09 02:34:45 +00:00
Howard Chu
b0169858d1 Don't include glued databases in namingContexts 2001-12-09 02:01:58 +00:00
Howard Chu
109307547e Clean up bdb_entry_release / bdb_entry_return 2001-12-09 01:14:32 +00:00
Howard Chu
f4f1d1b164 Fix for slapcat 2001-12-08 16:42:27 +00:00
Howard Chu
3a8075e9b0 Added new backglue pseudo-backend. Uses callbacks to glue different backends
together into a single searchable hierarchy.
2001-12-08 15:58:47 +00:00
Howard Chu
584d58e8d1 Added callbacks for send_ldap_response and send_search_result. 2001-12-08 15:21:20 +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
3fce8e0e80 Turned dn_parent into dn_parent1, returning in-place pointer. Made
dn_parent return ch_strdup of dn_parent1 for compatibility.
2001-12-08 08:41:39 +00:00
Kurt Zeilenga
6a8d7d92fb ITS#1399, fix make depend when built as module 2001-12-08 07:48:58 +00:00
Kurt Zeilenga
dc55afec67 Add reference to replication-notes 2001-12-08 07:38:14 +00:00
Kurt Zeilenga
ea8f7aaab3 Pretty the entry DNs on add but not rename (yet). 2001-12-08 06:57:06 +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
bf7f1046d4 Add SLAPD_STATIC_BACKENDS and SLAPD_DYNAMIC_BACKENDS macros to simplify
backend build rules.
2001-12-08 04:01:30 +00:00
Howard Chu
840a8c95ed Fix typos in previous commit 2001-12-08 01:16:10 +00:00
Kurt Zeilenga
24e4062e26 add 'objectIdentifier' to openldap.schema ONLY
(other schema should be provided as defined in its specification).
and trim DESC to one line
2001-12-08 00:36:11 +00:00
Kurt Zeilenga
d46252fb21 Port reference scope fix from back-ldbm 2001-12-07 22:41:43 +00:00
Kurt Zeilenga
3f1ab56fa9 Fix reference scope. 2001-12-07 22:28:46 +00:00
Kurt Zeilenga
b4ccbc2722 ITS#1413 suggested fix
(I think I fixed this by other means, but this does no harm)
2001-12-07 17:25:34 +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
245d24f776 Fix from jon@symas.com for misdeclared lib handle 2001-12-07 03:18:32 +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
223fb11840 Fix so previous change to slapcat works. 2001-12-06 12:28:49 +00:00
Pierangelo Masarati
67ed3982fb now dnValidate loops thru each value; added private member to LDAPAVA to hold the attribute description 2001-12-06 11:50:17 +00:00
Pierangelo Masarati
9260b22dec liberally accept many LDAPv2/LDAPv3 stuff in DN (quoted parts, ';' as rdn separator and so); enforce exact case match of normalized dn in dnMatch (let's see what happens ...); fix a ldapava_free_rdn bug 2001-12-06 10:01:25 +00:00
Kurt Zeilenga
2c07200a3a pretty DNs 2001-12-06 07:32:53 +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
Kurt Zeilenga
575c9469d9 Rework dnNormalize/dnPretty to share LDAP_rewrite
Add flag to matching rules to indicate if DN folding is needed.
Don't specify dnPretty as pretty function for DN attribute types as
this works too well (it breaks tests).
2001-12-06 03:24:31 +00:00
Howard Chu
52beecbdf4 Fix, index databases were not being closed on shutdown. 2001-12-06 03:24:09 +00:00
Kurt Zeilenga
3787c4c7d7 Allow an object class to be provided in an attribute description list,
treated as a request for all required and allowed attributes of the class.
This allows:
	ldapsearch (objectClass=*) inetOrgPerson
	(requests return of all attributes of inetOrgPerson)
and
	ldapsearch (objectClass=*) extensibleObject
	(requests return of all attributes, e.g., "+" "*")
2001-12-06 01:02:11 +00:00
Kurt Zeilenga
2b925e2102 Misc cleanup 2001-12-05 23:27:49 +00:00
Kurt Zeilenga
da06921364 Monitor schema should be defined in a separate file. 2001-12-05 23:24:51 +00:00
Kurt Zeilenga
8362bc91f5 Misc I-D updates
Misc schema updates
2001-12-05 23:16:35 +00:00
Kurt Zeilenga
f26e1b390e Add basic infrastructure for pretty routines
A pretty routine may rewrite the representation of a value but
must not alter the value itself.
2001-12-05 21:36:59 +00:00
Kurt Zeilenga
3f53087f57 Add comments 2001-12-05 21:07:57 +00:00
Pierangelo Masarati
379e0e9d50 another step towards schema aware normalization: ava sorting in rdns; now by defining USE_LDAP_DN_PARSING both the new dn parsing and the server side normalization is used. There might be, every now and then, a flaw mostly due to naive normalization of pseudo-dn (thinking about some acl/regex stuff and so) 2001-12-05 19:26:30 +00:00
Kurt Zeilenga
5282ecd94b I should finish my morning coke before making my first commit of the day.
Fixes errors in prior commits.
2001-12-05 16:41:45 +00:00
Pierangelo Masarati
335a8bd0ad a gross attempt to implement a schema-aware normalization 2001-12-05 16:34:51 +00:00
Kurt Zeilenga
f5f0397398 (undefined=*) should precompute to False 2001-12-05 16:31:19 +00:00
Kurt Zeilenga
86f79b85d8 Add experimental UUID/CSN support (needed for LCUP). 2001-12-05 07:25:25 +00:00
Kurt Zeilenga
a5a1fc0846 Add undefined present filter bug fix 2001-12-05 03:21:39 +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
Kurt Zeilenga
999b3dad7b Fix replacing of all values with an empty value. 2001-12-05 01:16:12 +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
Kurt Zeilenga
fe92783ea8 dnMatch should not be local to file 2001-12-04 23:42:10 +00:00
Pierangelo Masarati
09626cc1d5 of course we don't need debug stuff any more ... :) 2001-12-04 20:27:26 +00:00
Pierangelo Masarati
9004262d95 reimplement dn_validate/normalize/(match) using the ldap_str2dn/dn2str stuff; need to #define USE_LDAP_DN_PARSING 2001-12-04 20:22:26 +00:00
Kurt Zeilenga
b5504a1c36 Clean up some misplaced 'extern' declarations (should be headers) 2001-12-04 19:57:09 +00:00
Howard Chu
bf4bbcaae2 Don't maintain a DN_SUBTREE index for the backend suffix. 2001-12-04 00:10:47 +00:00
Kurt Zeilenga
891c39f7c5 Really fix the fix to the past commit 2001-12-03 20:16:00 +00:00
Kurt Zeilenga
9c41af8430 Fix previous commit 2001-12-03 20:14:44 +00:00
Kurt Zeilenga
1b91a3872c Add additional sanity check 2001-12-03 20:05:46 +00:00
Kurt Zeilenga
95b3e2a97d Minor cleanup 2001-12-03 20:04:08 +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
Kurt Zeilenga
b81fd13999 Add more DESC fields and misc cleanup 2001-12-02 04:50:03 +00:00
Kurt Zeilenga
7c555af8d5 Make sure experimental syntaxes are hidden 2001-12-02 04:48:06 +00:00
Kurt Zeilenga
f6369fd702 Misc DESC updates 2001-12-01 18:13:34 +00:00
Pierangelo Masarati
0f64b72a00 paranoid check for escaped dn separators when naively checking for rdn boundary 2001-12-01 16:28:21 +00:00
Pierangelo Masarati
bdb3edefd5 added pattern="anonymous","users","dn.{base|one|subtree|children}" to limit enforcement 2001-12-01 14:17:14 +00:00
Howard Chu
d68b891ced In presence_candidates(), always return a full match for objectClass. 2001-11-30 01:21:52 +00:00
Kurt Zeilenga
e8c91879ca Clarify acceptability requirements of additional schema items. 2001-11-29 02:05:20 +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
Kurt Zeilenga
db12d41978 ITS#1467 passwd fix from Brad Thompson <brad@vecna.com> 2001-11-28 02:23:36 +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
Mark Adamson
bd091ce276 Allow size and time limits in slapd.conf for anonymous bound search operations 2001-11-21 20:28:15 +00:00
Pierangelo Masarati
aee3600276 minor cleanup 2001-11-17 16:18:07 +00:00
Pierangelo Masarati
6df4889f43 minor cleanup 2001-11-17 14:39:10 +00:00
Pierangelo Masarati
0f30fb0d8f minor cleanup 2001-11-17 14:24:27 +00:00
Pierangelo Masarati
d262aae706 fix misinitialized UNDEFINED attribute type; reordered members of AttributeType because I don't know a portable way to statically initialize a mutex :) 2001-11-17 14:09:38 +00:00
Pierangelo Masarati
a4c9c2c06e add const 2001-11-17 09:21:22 +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
Howard Chu
18ae339b0f ainfo_free no longer needed 2001-11-17 00:46:00 +00:00
Kurt Zeilenga
383939f18f bitString fixes from Julius Enarusai (ITS#1441) 2001-11-16 18:10:37 +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
Pierangelo Masarati
616d409817 updatedn can add '' rooted entries (according to ACLs) 2001-11-16 14:08:17 +00:00
Pierangelo Masarati
7793ece6ce check children access to newSuperior 2001-11-16 14:04:54 +00:00
Pierangelo Masarati
0cf9b37908 non-root modrdn of entries rooted at '' checks children write permission (completes previous add/delete fix; needs be ported to back-bdb) 2001-11-16 12:24:22 +00:00
Pierangelo Masarati
b1688462ce check for update dn 2001-11-16 11:47:15 +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
Howard Chu
0bfaa8b4ae Changed AttributeType.sat_cname from char * to struct berval.
(will fix up back-bdb next.)
2001-11-16 07:45:37 +00:00
Howard Chu
cc4a51f23c Changed global ad_mutex into per-attributeType mutex. Added
ad_find_lang() to search an AttributeType for a given language variant.
(Will be used in back-bdb/back-ldbm index code...)
2001-11-16 07:39:14 +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
Pierangelo Masarati
8c2ed9c809 non-root add/delete of entries rooted at '' checks children write permission 2001-11-14 16:08:59 +00:00
Kurt Zeilenga
90a60edef9 Remove slap_get_time optimization.
timelimit must be checked on first entry.
2001-11-13 20:31:00 +00:00
Kurt Zeilenga
525cd6f783 Port ITS#1430 changes from ldbm 2001-11-13 19:45:47 +00:00
Kurt Zeilenga
0f10bed011 rm currenttime_mutex.
trival other cleanup.
2001-11-13 18:16:07 +00:00
Mark Adamson
8c16d30087 optimize number of calls to slap_get_time() 2001-11-13 01:38:30 +00:00
Howard Chu
52d3f7b3da Fix - put group cache search after backend has been selected 2001-11-12 21:39:55 +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
Howard Chu
48623df1a8 Added backend_group result caching. 2001-11-12 19:37:48 +00:00
Howard Chu
a0a24d73dc Added backend_group result caching. 2001-11-12 19:25:41 +00:00
Pierangelo Masarati
6b1104ab87 Fixes first part of ITS#1430 2001-11-12 17:32:52 +00:00
Pierangelo Masarati
8c4c2ce789 Fixes second part of ITS#1430 2001-11-12 17:27:01 +00:00
Pierangelo Masarati
afd0037eda Fixes ITS#1433 2001-11-12 17:12:43 +00:00
Pierangelo Masarati
b4e7f0873a trims space after comma in dn.regex acls (prelude to normalization) 2001-11-12 11:29:40 +00:00
Mark Adamson
ddd3a4b926 already have the strlen of the attrname in the berval->bv_len 2001-11-12 03:15:40 +00:00
Stig Venaas
d717a7fb9f Fixes memory leaks in do_compare() 2001-11-10 23:34:03 +00:00
Mark Adamson
f05420c8d8 use berval's instead of strings with UTF8normalize() 2001-11-09 19:01:23 +00:00
Kurt Zeilenga
8d74b517cd Remove lint 2001-11-07 01:24:32 +00:00
Howard Chu
5f8058f957 Added schema_destroy() et al to free schema structures on shutdown 2001-11-07 01:03:49 +00:00
Stig Venaas
76243a2797 Fixed more memory leaks 2001-11-06 22:36:28 +00:00
Howard Chu
33ace5610c Added ldap_pvt_tls_destroy() to cleanup TLS library on shutdown 2001-11-06 20:52:59 +00:00
Mark Adamson
67886fc4a1 bervals alloc'd by UTF8SubstringsassertionNormalize() must be ber_bvfree'd 2001-11-06 19:07:15 +00:00
Mark Adamson
e0ff8d6782 fix various memory leaks 2001-11-05 23:14:42 +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
Kurt Zeilenga
b312488614 telex number should allow $ 2001-11-03 22:03:20 +00:00
Kurt Zeilenga
d03acd7209 Fix uninitialized pointer bug. 2001-11-03 22:02:57 +00:00
Pierangelo Masarati
3a16335374 wrong length in statement selection (not critical); some cleanup (sizeof()-1 instead of strlen on constant strings) 2001-11-01 18:57:21 +00:00
Pierangelo Masarati
08ff231888 fixes assertion fault when the <to> clauses's argument does not have a = inside 2001-10-29 08:14:12 +00:00
Kurt Zeilenga
82fad7d0c8 First stable an implementing latest namedref specification.
Includes rewriting of URLs where the DN of the referral object
and the DN of the ref attribute attribute are not the same.
Also, always returns explicit DN and scope.
Currently, back-ldbm only.  Needs to be ported to back-bdb.
2001-10-26 02:05:14 +00:00
Pierangelo Masarati
271c323281 Fixes ITS#1385 2001-10-25 15:15:34 +00:00
Kurt Zeilenga
79f76c763f Root DSE and subschema subentry compare.
Developed by Steve Omrani/IBM
Copyright IBM Corp. 2001
Use of this source code is subject to the terms of The OpenLDAP
Public License Version 2.7, 7 September 2001.  No trademarks of the
IBM Corporation are to be used to identify, endorse or promote any
products derived from this code without the prior written consent
of IBM.
2001-10-25 06:18:11 +00:00
Kurt Zeilenga
a6acc0ff8c Use allids instead of candidiate negation for !. (ITS#1405)
Use presence indices in support of >= and <=.
(Note presence indices could be used to support = and substr in
like fashion where eq and substr indices are not maintained, but
I'll save that for another day.)
2001-10-24 21:26:32 +00:00
Kurt Zeilenga
23bf2fb086 Fix error messages 2001-10-24 05:27:49 +00:00
Kurt Zeilenga
fcd1ce0e28 Use defined Root DSE attributes.
Developed by Julius Enarusai/IBM
Copyright IBM Corp. 2001

Use of this source code is subject to the terms of The OpenLDAP
Public License Version 2.7, 7 September 2001.  No trademarks of the
IBM Corporation are to be used to identify, endorse or promote any
products derived from this code without the prior written consent
of IBM.
2001-10-23 23:29:41 +00:00
Kurt Zeilenga
d9fb94f1a8 Updated busy loop protection 2001-10-23 22:17:41 +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
358950e8ad And this change implements indexing for certificateExactMatch. Now
you can search efficiently the directory for a certificate.

Notice that we index certificates just as serial integers.  A full
index should combine the issuer DN too, but I think in most scenarios
that would be extremely redundant and of little benefit.  We can add
an option later to do full indexing.
2001-10-23 13:39:07 +00:00
Julio Sánchez Fernández
9752cea92c No code change, added a comment warning of a possible future difficulty.
Apparently, we refuse to index ;binary attributes.  That is mostly
bogus.  Whether it is indexable or not depends on whether we know how
to or not, nothing more.  I.e., the existance of indexer and filter
functions for the matching rules that are relevant to the attribute
type.
2001-10-23 13:35:54 +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
Julio Sánchez Fernández
cb98a604fb Replacement for value_find and compatibility macro.
Now we will be able to fix compares.
2001-10-23 09:43:20 +00:00
Julio Sánchez Fernández
de353ebeda Normalization and more error checking. 2001-10-23 09:05:04 +00:00
Julio Sánchez Fernández
dd34307cf7 When checking if an entry matches some filter, we have the list of
values as stored in the entry on the one hand and an assertion value
that is not necessarily of the same syntax.  So tell value_match this
is the case by setting SLAP_MR_VALUE_IS_IN_MR_SYNTAX in flags.
2001-10-22 20:07:06 +00:00
Julio Sánchez Fernández
5f6d5494dd Extend value_match to extract an asserted value from a full value
if needed.  This is controlled by SLAP_MR_VALUE_IS_IN_MR_SYNTAX,
a new flag that should be set when evaluating filters such as in
searches and compares and unset otherwise (such as in modify).

Now, some callers of value_match, notably value_find, don't know
whether to set it or not.  We'll see to that.
2001-10-22 20:03:30 +00:00
Julio Sánchez Fernández
5dbf4bddae Add a flag to help the value_* functions know whether they are seeing
a full value (in attribute type syntax) or a value in the syntax of
the matching rule (as happens in filters).
2001-10-22 19:57:23 +00:00
Julio Sánchez Fernández
be89c094f6 Do something with the error text. 2001-10-22 19:55:21 +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
c108e66222 Fix entry_encode; must save the given e->e_dn without modification. 2001-10-22 15:01:35 +00:00
Howard Chu
c981026a6c Missed a test in AttributeDescription commit 2001-10-22 14:55:42 +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
Julio Sánchez Fernández
7581e304c0 It now sort of works, but needs some normalization work and proper
error reporting to client and syslog. And indexing, of course.

Now, the problem is that matching rules get called from different
places that are inconsistent in what an assertedValue is.  When doing
a modify, a full certificate value is passed (to verify it isn't
already there).  When doing a search or compare, the passed value is
in the syntax of the matching rule.

Consistency would require that the caller extracts an asserted value
from the full value before calling smr_match.  It can do this by
calling smr_convert (it was unused, was it meant to be used for
this?).

Unfortunately, the caller is typically value_find, value_match, etc.
that have themselves little knowledge of what they are dealing with,
so their interface needs to be extended, new flag values or new
arguments, so that they know if they have a value in attribute type
syntax or in matching rule syntax.
2001-10-22 06:54:30 +00:00
Kurt Zeilenga
17264d1ad4 Experiment with busy loop protection... 2001-10-21 00:48:14 +00:00
Julio Sánchez Fernández
7e1c4f272d Use the ldap syntax oid assigned by David Chadwick (no yet published). 2001-10-20 17:31:52 +00:00
Pierangelo Masarati
99e7ffe034 listen on any device 2001-10-20 17:19:56 +00:00
Julio Sánchez Fernández
4d0ab0215b First cut at certificateExactMatch, completely untested and without
indexing.
2001-10-20 10:15:09 +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
Mark Adamson
290137a54f Serialize access to idl insert/delete key routines (ITS 1359) 2001-10-11 18:12:53 +00:00
Kurt Zeilenga
01bdb4650e Check for no OID. 2001-10-10 18:15:30 +00:00
Kurt Zeilenga
b6a3dad8f0 Delete attribute indices 2001-10-09 19:41:48 +00:00
Kurt Zeilenga
cdc7c44d80 Use non-critical ManageDsaIT control. 2001-10-09 18:53:22 +00:00
Pierangelo Masarati
069155f667 fixes ITS #1379; the replication test has been improved by adding modrdn entries 2001-10-09 18:12:22 +00:00
Kurt Zeilenga
fdc0dd7d6a Fix some NEW_LOGGING errors 2001-10-05 21:49:04 +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
06a50e37b1 Don't assume e_id is a long. 2001-10-05 18:38:25 +00:00
Kurt Zeilenga
9f1fc48659 Another round. BDB_INDEX almost ready for functional testing. 2001-10-05 17:00:21 +00:00
Kurt Zeilenga
83d50bd696 Minor updates 2001-10-05 02:01:37 +00:00
Kurt Zeilenga
aedf4b42fc Return unwillingToPerform instead of noSuchObject for subschema subentry 2001-10-05 01:55:14 +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
Kurt Zeilenga
f704c35caf subschemaSubentry attributes could be leaked under some conditions,
plug them.
2001-10-03 18:19:07 +00:00
Pierangelo Masarati
35c38e271d use slap_str2undef_ad for unknown attributes 2001-10-03 18:17:08 +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
Pierangelo Masarati
6e4a050657 fix memory leak in case of ACL failure (no write permission to rdn attributes) 2001-10-02 10:36:35 +00:00
Howard Chu
693a81e1db More CLDAP tweaks, to differentiate between real LDAPv2 CLDAP and "other"
LDAP/UDP messages. Slapd marks received CLDAP messages as LDAP_VERSION2.
The client library can generate CLDAP queries if -Protocol 2 is chosen,
otherwise not. LDAPv2 CLDAP cannot query the slapd rootDSE, gets no reply.
2001-10-02 01:02:23 +00:00
Pierangelo Masarati
1c010c59a1 fix candidate selection based on scope 2001-10-01 22:12:23 +00:00
Pierangelo Masarati
af8488c37d fix result bug; add hooks for error selection based on priority (now the last one is selected) 2001-10-01 22:11:37 +00:00
Pierangelo Masarati
ccef53677f fix various result returning bugs, mostly related to candidate selction that results in invalid candidates (bug detected by Markus Storm <Markus.Storm@mediaWays.net>) 2001-10-01 16:16:51 +00:00
Kurt Zeilenga
44146a1cb7 Rework DB_THREAD support. CDB support needs reimplementation. 2001-10-01 06:08:46 +00:00
Stig Venaas
3c28bb413d Removed a superfluous line left after the ai_addr == NULL fix 2001-09-29 09:40:47 +00:00
Kurt Zeilenga
e78265738d Rework getaddrinfo() stuff for ai_addr == NULL 2001-09-29 06:33:54 +00:00
Kurt Zeilenga
a1ecd9b697 Fix reference stats2 message 2001-09-28 01:44:13 +00:00
Howard Chu
926b454765 Set protocol to LDAP_VERSION2 on UDP session. 2001-09-28 00:49:01 +00:00
Howard Chu
647b5f84ee Resurrection/rewrite of CLDAP (RFC1798 Connectionless LDAP).
Compile with -DLDAP_CONNECTIONLESS to use this code.
For slapd, use "-h cldap://" to listen on UDP.
For ldapsearch, use "-H cldap://" to query on UDP.
Client-side support is very minimal:
  no automatic timeout/retries
  no basedn wildcard expansion on results
  no support for specifying multiple servers at once.
2001-09-28 00:18:40 +00:00
Kurt Zeilenga
af37269416 Rework do_ldap retry loop to better handle server down errors.
Could likely treat other errors (LDAP_BUSY) as non-fatal errors.
2001-09-27 03:13:28 +00:00
Howard Chu
ef7b93242d Replace some calloc/realloc with ch_calloc/ch_realloc for consistency. 2001-09-26 23:42:53 +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
ef59732180 Add a sample ACL 2001-09-25 20:30:51 +00:00
Kurt Zeilenga
61de99937f ldif.h include cleanup 2001-09-25 00:03:24 +00:00
Kurt Zeilenga
2af75ecc6a Trim both \n and \r\n from config files. 2001-09-24 22:18:02 +00:00
Howard Chu
2124673988 Tweaked ID_BLOCKs to record NIDs for INDIRECT blocks as well as directs.
Use high bit of NMAX to indicate an INDIRECT. Changes are behind
  #ifdef USE_INDIRECT_NIDS
2001-09-22 06:52:32 +00:00
Howard Chu
58f4ffca59 Fix another SEGV from previous patch. 2001-09-22 05:35:52 +00:00
Howard Chu
00a28378f8 Fix previous idl_find patch. Cannot test <=0 with unsigned ints, duh... 2001-09-22 04:10:03 +00:00
Howard Chu
b52795c283 Add idl_find binary search routine, used by idl_insert and idl_split_block
instead of linear search.
2001-09-21 20:30:27 +00:00
Kurt Zeilenga
c0c9c47032 bump MAXARGS to 500 2001-09-21 00:48:47 +00:00
Kurt Zeilenga
1bfadb5608 Bump MAXARGS to 500. 2001-09-21 00:48:00 +00:00
Mark Adamson
465ecb85f0 Finished the integerMatch matching rule and the integer syntax. 2001-09-20 15:50:49 +00:00
Pierangelo Masarati
f082328f45 logs changes even if no appropriate replica (or none at all) is defined (ITS#1335) 2001-09-19 09:09:51 +00:00
Kurt Zeilenga
22688a7ad6 Minor cleanup of last commit 2001-09-18 18:24:47 +00:00
Kurt Zeilenga
fb852d7d80 comment out inetLocalMailReciepent as it has no assigned OID 2001-09-18 17:52:43 +00:00
Howard Chu
6b9b0660c9 Fix ITS#1213, OID macro parsing in attributetypes 2001-09-18 11:30:00 +00:00
Kurt Zeilenga
7a18352c06 Patch for SASL EXTERNAL. Needs to be tested with other mechanisms. 2001-09-18 07:44:18 +00:00
Howard Chu
bb06fd8d6b Fix crashes for SASL/EXTERNAL binds:
in slap_sasl_getdn, test id, not dn. dn is still NULL
  also, don't check for trailing slash
  in slap_sasl_bind, initialize reslen to 0
2001-09-18 03:10:05 +00:00
Kurt Zeilenga
d05e6af326 Clean up include logging 2001-09-17 22:38:52 +00:00
Kurt Zeilenga
baa49e18de Back out ManageDsaIt change. 2001-09-16 22:03:38 +00:00
Kurt Zeilenga
dba27a3a17 Minor cleanup 2001-09-16 22:02:50 +00:00
Kurt Zeilenga
2d5a817288 Remove lint 2001-09-16 22:00:53 +00:00
Pierangelo Masarati
8a78d022bc cleanup and cast of logs 2001-09-13 21:30:44 +00:00
Kurt Zeilenga
4039648a2e Use time_t not char * to represent timestamps.
Fixes billionth second since epoch bug.
2001-09-09 21:16:17 +00:00
Kurt Zeilenga
09a7bd4331 Clean up asserts, should assert desc != NULL instead of attr != NULL 2001-09-09 18:58:54 +00:00
Kurt Zeilenga
0a155934ab Add root DSE supportedFeatures support. 2001-09-09 04:01:07 +00:00
Kurt Zeilenga
82a4f473ce Update 'invalid data' error message. 2001-09-08 03:55:41 +00:00
Kurt Zeilenga
a8b7e93ef4 Add referral scope checks (ITS#1289) from dshriver@sharemedia.com 2001-09-08 02:37:02 +00:00
Kurt Zeilenga
cd51428dbe Add IDL debugging code from SuSE. 2001-09-07 21:58:31 +00:00
Dmitry Kovalev
358835218a finish the prefious fixes... it is really hard to commit a truly good patch without even a chance to check if it is compilable ;) 2001-09-07 18:50:52 +00:00
Dmitry Kovalev
6bf69cbf39 some cosmetics and minor problems fixed, pointed out by Mei-Hui Su (c++-style comments, newlines etc.) 2001-09-07 13:04:11 +00:00
Kurt Zeilenga
ed9b7332fb Add <limits.h> 2001-09-07 02:08:32 +00:00
Kurt Zeilenga
1b42a20565 Remove extensible filter #ifdef 2001-09-04 18:45:05 +00:00
Kurt Zeilenga
3889e1d955 Add some EINTR logic to back-shell. Assumes fgets() handles
such errors in a particular manner.
2001-09-02 00:10:57 +00:00
Kurt Zeilenga
a2ba804e47 Add general extensible matching support and integerBitAndMatch
and integerBitOrMatch enhancement (ITS#1302 + minor changes)
from Luke Howard <lukeh@padl.com>.
2001-09-01 17:10:43 +00:00
Kurt Zeilenga
2c9a238571 Allow dn.base="" 2001-09-01 05:01:31 +00:00
Kurt Zeilenga
ef7b181f8b Open databases using WRCREAT not READER. 2001-09-01 05:00:27 +00:00
Kurt Zeilenga
a49392981a There is no TLSProtocol option. 2001-08-31 16:48:30 +00:00
Mark Adamson
fac77083cc Skip over the "dn:" prefix when passing a DN to dn_normalize(). 2001-08-29 23:01:24 +00:00
Kurt Zeilenga
2f761834b2 Fix NEW_LGGING typo 2001-08-29 19:49:05 +00:00
Kurt Zeilenga
9a80d76f44 Minor rework of *text = textbuf fix 2001-08-28 21:43:00 +00:00
Kurt Zeilenga
f10028ba06 Apply ACLs to front end objects (root DSE, subschema) consistently 2001-08-28 20:28:34 +00:00
Stig Venaas
70f7e55344 Changed get_listener_addresses() to not use getaddrinfo() for PF_LOCAL 2001-08-26 11:03:27 +00:00
Mark Adamson
7378872731 Need to set error text pointer sooner in entry_schema_check(), or Debug() will SEGV 2001-08-15 15:27:26 +00:00
Pierangelo Masarati
b637967b95 fix malformed test 2001-08-04 16:46:03 +00:00
Pierangelo Masarati
8ee6168916 fix a reference to volative memory in back-ldbm/passwd.c that caused garbage messages to be returned to ldappasswd 2001-08-04 15:46:08 +00:00
Pierangelo Masarati
1eb3f8b2e4 add limits stuff to back-ldap 2001-08-04 11:10:35 +00:00
Pierangelo Masarati
b5bb74bb02 cleanup limits stuff in back-meta 2001-08-04 11:10:08 +00:00
Pierangelo Masarati
6a5b253bc6 allow multiple limits setting on one global/per backend config line 2001-08-04 11:09:25 +00:00
Pierangelo Masarati
4919363fa0 more intuitive special limits configuration 2001-08-03 17:25:39 +00:00
Pierangelo Masarati
414783058d enforces detailed search limits 2001-08-03 17:15:14 +00:00
Dmitry Kovalev
2f4d324f60 A big bunch of improvements, contributed by Sam Drake and Raj Damani.
Summary of changes is cited below.
The patch still needs some cosmetic changes to be made, but is ready for testing.

-----Original Message-----
From: Sam Drake [mailto:drake@timesten.com]
Sent: Saturday, April 07, 2001 10:40 PM
To: 'mitya@seismic.ru'
Cc: openldap-devel@OpenLDAP.org
Subject: RE: Slapd frontend performance issues


FYI, here is a short description of the changes I made.  I'll package up the
changes asap, but it may take a couple of days.

The performance numbers quoted in this report were seen at my location with
a 100,000 object database ... the slower numbers I mentioned earlier were
reported by a customer with a 1,000,000 object database.

I also can't explain the very poor performance I saw with OpenLDAP and LDBM
with a 100,000 object database.

...Sam Drake / TimesTen Performance Software

----------

Work Performed

OpenLDAP 2.0.9, including back-sql, was built successfully on Solaris
8 using gcc.  The LDAP server itself, slapd, passed all tests bundled
with OpenLDAP.  OpenLDAP was built using Sleepycat LDBM release 3.1.17
as the "native" storage manager.

The experimental back-sql facility in slapd was also built
successfully.  It was built using Oracle release 8.1.7 and the Oracle
ODBC driver and ODBC Driver Manager from Merant.  Rudimentary testing
was performed with the data and examples provided with back-sql, and
back-sql was found to be functional.

Slapd and back-sql were then tested with TimesTen, using TimesTen
4.1.1.  Back-sql was not immediately functional with TimesTen due to a
number of SQL limitations in the TimesTen product.

Functional issues encountered were:

1. Back-sql issued SELECT statements including the construct,
   "UPPER(?)".  While TimesTen supports UPPER, it does not support the
   use of parameters as input to builtin functions.  Back-sql was
   modified to convert the parameter to upper case prior to giving it
   to the underlying database ... a change that is appropriate for all
   databases.

2. Back-sql issued SELECT statements using the SQL CONCAT function.
   TimesTen does not support this function.  Back-sql was modified to
   concatentate the necessary strings itself (in "C" code) prior to
   passing the parameters to SQL.  This change is also appropriate for
   all databases, not just TimesTen.

Once these two issues were resolved, back-sql could successfully
process LDAP searches using the sample data and examples provided with
back-sql.

While performance was not measured at this point, numerous serious
performance problems were observed with the back-sql code and the
generated SQL.  In particular:

1. In the process of implementing an LDAP search, back-sql will
   generate and execute a SQL query for all object classes stored in
   back-sql.  During the source of generating each SQL query, it is
   common for back-sql to determine that a particular object class can
   not possibly have any members satisfying the search.  For example,
   this can occur if the query searches an attribute of the LDAP
   object that does not exist in the SQL schema.  In this case,
   back-sql would generate and issue the SQL query anyway, including a
   clause such as "WHERE 1=0" in the generated SELECT.  The overhead
   of parsing, optimizing and executing the query is non-trivial, and
   the answer (the empty set) is known in advance. Solution: Back-sql
   was modified to stop executing a SQL query when it can be
   predetermined that the query will return no rows.

2. Searches in LDAP are fundamentally case-insensitive ("abc" is equal
   to "aBc").  However, in SQL this is not normally the case.
   Back-sql thus generated SQL SELECT statements including clauses of
   the form, "WHERE UPPER(attribute) = 'JOE'".  Even if an index is
   defined on the attribute in the relational database, the index can
   not be used to satisfy the query, as the index is case sensitive.
   The relational database then is forced to scan all rows in the
   table in order to satisfy the query ... an expensive and
   non-scalable proposition.  Solution: Back-sql was modified to allow
   the schema designer to add additional "upper cased" columns to the
   SQL schema.  These columns, if present, contain an upper cased
   version of the "standard" field, and will be used preferentially
   for searching.  Such columns can be provided for all searchable
   columns, some columns, or no columns.  An application using
   database "triggers" or similar mechanisms can automatically
   maintain these upper cased columns when the standard column is
   changed.

3. In order to implement the hierarchical nature of LDAP object
   hierarchies, OpenLDAP uses suffix searches in SQL.  For example, to
   find all objects in the subtree "o=TimesTen,c=us", a SQL SELECT
   statement of the form, "WHERE UPPER(dn) LIKE '%O=TIMESTEN,C=US'"
   would be employed.  Aside from the UPPER issue discussed above, a
   second performance problem in this query is the use of suffix
   search.  In TimesTen (and most relational databases), indexes can
   be used to optimize exact-match searches and prefix searches.
   However, suffix searches must be performed by scanning every row in
   the table ... an expensive and non-scalable proposition.  Solution:
   Back-sql was modified to optionally add a new "dn_ru" column to the
   ldap_entries table.  This additional column, if present, contains a
   byte-reversed and upper cased version of the DN.  This allows
   back-sql to generate indexable prefix searches.  This column is
   also easily maintained automatically through the use of triggers.

Results

A simple database schema was generated holding the LDAP objects and
attributes specified by our customer.  An application was written to
generate test databases.  Both TimesTen and Oracle 8.1.7 were
populated with 100,000 entry databases.

Load Times

Using "slapadd" followed by "slapindex", loading and indexing 100,000
entries in an LDBM database ran for 19 minutes 10 seconds.

Using a C++ application that used ODBC, loading 100,000 entries into
a disk based RDBMS took 17 minutes 53 seconds.

Using a C++ application that used ODBC, loading 100,000 entries into
TimesTen took 1 minute 40 seconds.

Search Times

The command, "timex timesearch.sh '(cn=fname210100*)'" was used to
test search times.  This command issues the same LDAP search 4000
times over a single LDAP connection.  Both the client and server
(slapd) were run on the same machine.

With TimesTen as the database, 4000 queries took 14.93 seconds, for a
rate of 267.9 per second.

With a disk based RDBMS as the database, 4000 queries took 77.79 seconds,
for a
rate of 51.42 per second.

With LDBM as the database, 1 query takes 76 seconds, or 0.076 per
second.  Something is clearly broken.
2001-08-02 17:28:59 +00:00
Kurt Zeilenga
b22ad8cf60 Add some addl. logging 2001-08-02 03:37:20 +00:00
Pierangelo Masarati
8471ef7ed0 add global, per backend and per op_ndn time/size soft, hard and to-be-checked limits (exploited by back-ldbm); see slapd.conf(5) for details 2001-08-01 10:09:04 +00:00
Pierangelo Masarati
419a5ae8c9 fix typo; try to delete dn2id in case of late failure 2001-07-31 10:54:39 +00:00
Pierangelo Masarati
d8cb33ebe8 added acl check for added/removed rdn attrs 2001-07-31 10:02:19 +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
Pierangelo Masarati
4362654eb6 fixes another assert in case of subtle error (schema failure while applying rdn changes) 2001-07-30 20:12:34 +00:00
Pierangelo Masarati
8edccd2554 fixes ITS#1261 (abort on modrdn with new dn already existing) 2001-07-30 14:54:02 +00:00
Pierangelo Masarati
6c81656a95 fixed some memory allocation nonsense 2001-07-29 17:21:28 +00:00
Pierangelo Masarati
c78416fdbd exploits regex-based per op_ndn time/size limits 2001-07-28 11:25:00 +00:00
Pierangelo Masarati
4051547dfa handle regex-based per op_ndn time/size limits 2001-07-28 11:24:22 +00:00
Kurt Zeilenga
279ef73485 Remove assert(0) 2001-07-28 01:06:06 +00:00
Stig Venaas
e3caeb2264 Removed duplicate code by replacing case-Exact/Ignore-Filter/Indexer and
case-Exact/Ignore-Substrings-Match/Filter/Indexer with common code for
the caseExact and caseIgnore cases
2001-07-27 22:54:43 +00:00
Stig Venaas
159fa1b26c Making the approx multistring code default. Leaving the old code for now,
but can really be removed.
2001-07-26 22:33:28 +00:00
Kurt Zeilenga
d4df1af590 Misc cleanup of asserts 2001-07-26 01:08:00 +00:00
Stig Venaas
92ec77f6dc Made approxMatch/Indexer/Filter all do Unicode cannonical normalization
followed by stripping of characters with 8th bit set. The normalization
is needed to make exact match imply approx match.
2001-07-25 21:22:55 +00:00
Kurt Zeilenga
e2b3914982 ITS#1274 fix 2001-07-24 19:54:04 +00:00
Kurt Zeilenga
d31da9dd01 Rework single-value check 2001-07-24 04:31:01 +00:00
Kurt Zeilenga
3e7e6bc6d5 Add an improved single value constraint check. 2001-07-24 03:25:17 +00:00
Pierangelo Masarati
589a5c7442 added extra check to suffix param of replica entry 2001-07-23 14:32:59 +00:00
Kurt Zeilenga
3a2f9e84ba Fix typo 2001-07-22 03:25:45 +00:00
Kurt Zeilenga
0cdf9e3124 fix up UTF8MATCH 2001-07-22 02:45:21 +00:00
Kurt Zeilenga
f310142d2c Use DN normalize 2001-07-22 00:32:58 +00:00
Stig Venaas
d326f96c32 We shouldn't need UTF8oncasecmp() and UTF8casechr() anymore, removing
them.
2001-07-22 00:31:04 +00:00
Kurt Zeilenga
7000f3e8cb Zap old DN code 2001-07-21 23:45:04 +00:00
Kurt Zeilenga
978e417699 Make some additional UTF8 public
Remove lint
2001-07-21 23:13:04 +00:00
Kurt Zeilenga
da2f6f6805 Zap !UTF8MATCH code 2001-07-21 23:02:06 +00:00
Kurt Zeilenga
5cb6b1ce02 Back out DN changes, needs more work 2001-07-21 22:44:55 +00:00
Kurt Zeilenga
9207e19978 unifdef -DMULTIATTRVAL_RDN 2001-07-21 21:21:32 +00:00
Pierangelo Masarati
ece9bdb0eb Added the suffix=<dn> parameter to replica config directive
to allow selective replication of subtrees of a single database.
Multiple occurrences allow the same replica to handle different
subtrees
2001-07-21 14:15:23 +00:00
Pierangelo Masarati
9ee9f1e0e1 Reworked again the caching in case of failure.
Now operations that set the status of an entry to CREATING (add.c, modrdn.c)
need to set it to COMMIT, by calling cache_entry_commit, before returning
the entry itself, otherwise the entry is removed from the cache
and its private data is freed.
Should fix crashes due to add failures as in ITS#1245
2001-07-21 10:53:06 +00:00
Pierangelo Masarati
aec4430d59 Reworked API of nextid; e_private gets destroyed separately from the entry in case add fails (should fix ITS#1245) 2001-07-20 09:50:28 +00:00
Stig Venaas
0e614ca0ec Made caseExactMatch() use Unicode normalization 2001-07-17 20:09:37 +00:00
Stig Venaas
6c362d77ac Made caseIgnoreSubstringsMatch and caseExactSubstringsMatch use proper
Unicode cannonical normalization
2001-07-17 19:35:23 +00:00
Randy Kunkee
82f3004a16 Prevent ldbm_sync from being called by ldbm_cache_close when the new
dbsync configuration is in use, which was preventing the performance
gains of this mode.
2001-07-16 23:21:36 +00:00
Stig Venaas
ea47735802 Fixed UTF8 encoding checks for substrings assertions 2001-07-16 22:48:52 +00:00
Randy Kunkee
f06021e335 Fix ITS#1239:
slapadd core-dumps when destroying db's env (Sleepycat 3.2.9) (ITS#1239)
Only call ldbm_shutdown_env if the database has been opened, ie. when
li->li_dbenv != NULL.  Would appear any time a shutdown occurred and
not all LDBM databases were opened.
2001-07-16 22:16:24 +00:00
Stig Venaas
9b0e583576 Fixed bug in caseExactSubstringsIndexer() and caseIgnoreSubstringsIndexer().
UTF8 normalization must be done before we compute number of keys since
string length might increase.
2001-07-15 21:28:07 +00:00
Kurt Zeilenga
40d68d8374 Extend assertion value syntax checks to some other cases. Needs to
be applied to substrings assertions as well.
2001-07-15 17:25:49 +00:00
Kurt Zeilenga
c46014e27e Fix typo in disallow logging 2001-07-15 17:25:00 +00:00
Stig Venaas
886a7575d0 Fixed segfault in caseIgnoreFilter when assertion value has bad UTF8 coding 2001-07-15 16:21:36 +00:00
Pierangelo Masarati
e864abf685 reworked slapd_mods_free into mimic to avoid extra obj linking into tools 2001-07-14 17:48:12 +00:00
Pierangelo Masarati
5fdba27288 This is the skeleton of back-monitor, the slapd monitoring backend.
The old monitoring stuff has been removed; the new backend is
enabled by using --enable-monitor at configure time and requires

	database monitor

in slapd.conf to be activated.  At present it implements a subset
of the old monitoring options, and it should be extendable to
a number of different subsystems.  The search operation has been
implementd; it does not honor abandon or size/time limits, though.
The compare and the abandon operations are planned.

Copyright Pierangelo Masarati <ando@sys-net.it>; the code is provided
AS IS with NO GUARANTEE.  It can be used and distributed under the
conditions stated by the OpenLDAP Public License.
2001-07-14 17:34:24 +00:00
Kurt Zeilenga
ca43453b95 Quick and dirty hack to add password modify replication. 2001-07-14 01:26:02 +00:00
Pierangelo Masarati
a453d7eacf dn_validate/dn_normalize has been rewritten by
David A. Cooper <david.cooper@nist.gov> (ITS#1232)
according to draft-ietf-ldapbis-dn-05.txt

A copyright statement follows:

  The functions normalize_unicode(), get_hexpair(), write_hex_pair(),
  get_next_byte(), get_next_char(), get_ber_length(),
  ber_parse_primitive_string(), ber_parse_string(), String_normalize(),
  DirectoryString_normalize(), PrintableString_normalize(),
  IA5String_normalize(), ber_parse_primitive_bitstring(),
  ber_parse_bitstring(), getNext8bits(), bitString_normalize(), match_oid(),
  match_key(), get_validated_av_in_dn(), get_validated_rdn_in_dn(),
  and get_validated_dn() in this file were developed at the National Institute
  of Standards and Technology by employees of the Federal Government in the
  course of their official duties. Pursuant to title 17 Section 105 of the
  United States Code the code in these functions is not subject to copyright
  protection and is in the public domain. The copyright for all other code in
  this file is as specified below.
2001-07-13 08:21:14 +00:00
Pierangelo Masarati
b0a60a5d3d added function cache_find_entry_ndn2id that avoids an unnecessary call to dn_normalize; now dn2id calls this function, while the original function has been left as a wrapper 2001-07-11 08:41:42 +00:00
Pierangelo Masarati
27e5c484e6 reworked rdn_attrs to use ldap_explode_rdn; maybe we should remove escapes "\" from parts directly in ldap_explode_rdn 2001-07-10 18:19:22 +00:00
Gary Williams
453e69d636 fix bad debug message 2001-07-10 16:42:26 +00:00
Pierangelo Masarati
005823e032 Forbid empty ("") dn! (followup 5 to ITS#1173) 2001-07-09 10:35:43 +00:00
Pierangelo Masarati
2baa2f0f24 If add to "" is allowed, also modrdn should 2001-07-07 15:40:25 +00:00
Pierangelo Masarati
04c29fb3ea dn2idl API changed for consistency with other dn2id* funcs 2001-07-07 14:49:42 +00:00
Pierangelo Masarati
a4dc886f02 moved some slap_mods_* functions into mods.c, so mods.o can be included
by slapd/tools/*; slap_mods_free is needed by ldbm_back_modrdn after
fixing ITS#1184 (at present -DMULTIATTRVAL_RDN is needed when compiling
back-ldbm/modrdn.c to trigger the compilation of new code).
2001-07-07 09:13:05 +00:00
Pierangelo Masarati
da9ea54700 fixed test on "" (empty) parent dn 2001-07-06 14:40:27 +00:00
Pierangelo Masarati
f4acf94c83 honors '+' rdn separator in adding/deleting attributes; needs -DMULTIATTRVAL_RDN. Please test 2001-07-06 12:24:34 +00:00
Pierangelo Masarati
bff5608926 protos and declarations for charray and rdn stuff 2001-07-06 12:23:22 +00:00
Pierangelo Masarati
38ce12a6f6 added rdn_attrs: parses a rdn and returns types and values in two arrays (honors '+' separator according to RFC 2253) 2001-07-06 12:22:01 +00:00
Pierangelo Masarati
016328a1da added misc charray utilities 2001-07-06 12:20:26 +00:00
Kurt Zeilenga
38e8fefe17 Fix root dse checks 2001-07-06 02:14:47 +00:00
Kurt Zeilenga
9d6852d584 Correct X.500 reference 2001-07-06 02:11:17 +00:00
Pierangelo Masarati
901ce99dde added a comment to rdn_validate: needs to be rewritten according to dn_validate 2001-07-05 20:33:15 +00:00
Pierangelo Masarati
cd74b62fd2 rdn check to prevent illegal rdns in modrdn (copied from dn_rdn) fixes ITS#1102 2001-07-05 08:40:40 +00:00
Pierangelo Masarati
5c0502add9 make slurpd honor include files in slapd.conf (note: the problem was signalled in ITS#131 :) 2001-07-04 20:03:49 +00:00
Pierangelo Masarati
5ad8efbb47 Used API signature from back-bdb; compiles and passes make test 2001-07-03 11:23:18 +00:00
Pierangelo Masarati
fdd45144ca separate ID return value form return status in dn2id (back-ldbm/dn2id.c) 2001-07-02 19:42:27 +00:00
Randy Kunkee
a9097044ea Remove global_backendsyncfreq code (code has been pushed down into back-ldbm). 2001-06-28 18:02:46 +00:00
Randy Kunkee
6a6fd6059d Change to _TRACE instead of _ANY for sync daemon internals. 2001-06-28 09:27:01 +00:00
Randy Kunkee
0ef87764d7 Move backend_syncfreq code down into back-ldbm. Creates new configuration
for LDBM backends called "dbsync", which takes minimum of one argument up
to 3 args which are sync frequency, # of delays, and delay periods.  See
man page update for "dbsync" configuration for more details.
2001-06-28 09:20:33 +00:00
Kurt Zeilenga
77f776dfd1 Another round of TLS updates to support secure referral chasing 2001-06-25 19:17:42 +00:00
Kurt Zeilenga
c4f5497ac6 move TLS ctx to lconn struct in prep for supporting TLS with referrals
need to rework cert check to use per lconn host name
2001-06-25 07:33:42 +00:00
Pierangelo Masarati
6364cea1d3 catch up with bi_db_sync stuff 2001-06-23 15:43:21 +00:00
Kurt Zeilenga
6dd25ba1e6 Plug idl leakage 2001-06-23 05:05:08 +00:00
Kurt Zeilenga
5aefca3be1 Add comments to three-value logic 2001-06-23 02:42:39 +00:00
Kurt Zeilenga
323a03aa90 Fix three value logic 2001-06-23 02:26:09 +00:00
Kurt Zeilenga
1229cfcc3f Backout directory config option 2001-06-22 21:00:24 +00:00
Kurt Zeilenga
60f4554c76 plug substrings filter memory leak 2001-06-22 18:09:19 +00:00
Kurt Zeilenga
f98a1bab88 TLS initialization fix 2001-06-22 18:08:44 +00:00
Randy Kunkee
d492880870 Add sync_daemon to daemon.c, enabled by global configuration
backendsyncfreq <seconds>.  Setting this automatically enables
dbnosync (because the synchronizer takes care of it).
2001-06-22 08:38:58 +00:00
Randy Kunkee
1656f2c774 Patches from Mark Whitehouse (with changes from myself) to make the
dbcachesize setting actually work for db-3.2.9.
2001-06-21 18:54:56 +00:00
Kurt Zeilenga
733d6296a6 Fix undefined filter parsing 2001-06-16 02:20:48 +00:00
Kurt Zeilenga
bee0650d9c Work in progress codes. !UNTESTED! 2001-06-15 07:08:37 +00:00
Kurt Zeilenga
11b6d1f284 Misc updates for NT4 2001-06-15 04:16:55 +00:00
Kurt Zeilenga
e2edf459cb Remove extraneous variable 2001-06-15 00:00:52 +00:00
Kurt Zeilenga
ff993c7ddb Misc updates to password codes / docs 2001-06-13 05:40:24 +00:00
Kurt Zeilenga
8d4c20cd6d Adding crypt(3) salt format (ITS#1202) from Jeff Costlow <j.costlow@f5.com>
with minor changes by committer
---
Copyright 2001, F5 Networks, Inc, All rights reserved.
This software is not subject to any license of F5 Networks.

This is free software; you can redistribute and use it
under the same terms as OpenLDAP itself.
2001-06-13 03:47:17 +00:00
Kurt Zeilenga
67cf14466e Check schema NAMEs 2001-06-07 22:47:02 +00:00
Kurt Zeilenga
cda7d4b2fc Check for children 2001-06-07 00:19:23 +00:00
Kurt Zeilenga
6a647d917f Check for duplicate entries 2001-06-06 22:17:57 +00:00
Kurt Zeilenga
adae86a7db Add more detailed reporting of schema violations to client. 2001-06-06 00:23:56 +00:00
Kurt Zeilenga
891079fb09 Fix undefined attribute type error text usage 2001-06-04 16:46:33 +00:00
Pierangelo Masarati
970abe2637 semicolon after colon in goto labels; no C++ style comments; unused vars removed or #ifdef'd 2001-06-03 08:55:17 +00:00
Pierangelo Masarati
5a2014b863 semicolon after colon in goto labels 2001-06-03 08:53:13 +00:00
Kurt Zeilenga
9a0b6e92d7 Default ACL clause should be "by * none stop" not "by * stop".
That is, default rule should set permissions to none.
2001-06-01 20:09:03 +00:00
Kurt Zeilenga
5f0473d127 Fix typo in last commit 2001-05-30 06:28:32 +00:00
Kurt Zeilenga
e4653bde68 Allow empty numericString matching 2001-05-30 06:06:14 +00:00
Kurt Zeilenga
cc6fab319e Add support for separate max incoming for anonymous and authenticated
sessions (defaults: 256K and 16M respectively).
2001-05-29 20:00:55 +00:00
Kurt Zeilenga
351e436dcf Add an LDBM backend "directory" directive (in addition to
the existing database "directory" directive) to allow setting
of a DB_ENV directory.  Should likely be database specific.
2001-05-29 01:51:37 +00:00
Kurt Zeilenga
7d89fb5446 Fix empty suffix separator test. 2001-05-28 19:40:42 +00:00
Kurt Zeilenga
b56b9859c7 Fix typo (no functional change) 2001-05-28 19:40:15 +00:00
Kurt Zeilenga
820042d013 Add some additional filter checks 2001-05-24 01:07:00 +00:00
Kurt Zeilenga
2433719316 add missing return bug 2001-05-24 00:42:08 +00:00
Kurt Zeilenga
8360b4396f Take rc out from #ifdef 2001-05-20 17:39:32 +00:00
Pierangelo Masarati
c5a9ffa62e pseudo-root dn bind; a couple of minor fixes 2001-05-19 17:02:39 +00:00
Kurt Zeilenga
b8788e8a75 minor cleanup 2001-05-18 17:10:03 +00:00
Kurt Zeilenga
0aef7722e6 Add support for obsolete attributes.
We don't support collective attributes (yet).
Remove exit() calls from scheme parsers.  Need to do same for acl parser.
2001-05-17 07:31:59 +00:00
Pierangelo Masarati
90766f4d4f minor cleanup; some error handling and log fixes 2001-05-16 23:06:15 +00:00
Pierangelo Masarati
395cc1d7bb added new log; minor cleanup of rewrite stuff 2001-05-16 22:55:44 +00:00
Kurt Zeilenga
a76935fe00 Note that schema submissions should come with a reference
to a stable specification.
2001-05-16 20:42:20 +00:00
Kurt Zeilenga
1669cd4d7b Add '=' to printableString to be consistent with ASN.1 description
of syntax.  RFC 1778/2252 are wrong and will need to be updated.
2001-05-16 19:20:29 +00:00
Kurt Zeilenga
ce8fcda8c4 Improve error message when parent is referral or not present 2001-05-16 19:19:16 +00:00
Pierangelo Masarati
0b4c7e0181 added new logging to back-meta 2001-05-13 23:44:22 +00:00
Pierangelo Masarati
00dfed1d0e cleanup of the tests in back-meta/data; after build, run "setup.sh"
in back-meta/data and follow instructions.
minor update of "Changes" and "TODO".
2001-05-13 17:58:03 +00:00
Kurt Zeilenga
0445405299 if continuation line starts with a tab, rewrite it to a space 2001-05-12 18:43:06 +00:00
Pierangelo Masarati
74fa239a20 This is the commit of:
- librewrite, for string rewriting; it may be used in back-ldap
    by configuring with '--enable-rewrite'. It must be used in
    back-meta. There's a text file, 'libraries/librewrite/RATIONALE',
    that explains the usage and the features. More comprehensive
    documentation will follow.
  - enhancements of back-ldap (ITS#989,ITS#998,ITS#1002,ITS#1054 and ITS#1137)
    including dn rewriting, a fix to group acl matching and so
  - back-meta: a new backend that proxies a set of remote servers
    by spawning queries. It uses portions of back-ldap and the rewrite
    capabilities of librewrite. It can be compiled by configuring
    with `--enable-ldap --enable-rewrite --enable-meta'.
    There's a text file, 'servers/slapd/back-meta/Documentation', that
    describes the main features and config statements.

Note: someone (Kurt?) should run 'autoconf' and commit 'configure' as
my autoconf version must be different: my configures contain a number
of differences and I didn't feel comfortable in adding them :)
2001-05-12 00:51:28 +00:00
Gary Williams
cabeec26d4 fix debug line (ITS 1145) 2001-05-11 20:19:16 +00:00
Kurt Zeilenga
cf2cb85fab Clean up logging 2001-05-10 17:40:12 +00:00
Kurt Zeilenga
af2ab5f0a5 Make sure we yield() on a failed accept() 2001-05-10 17:39:10 +00:00
Kurt Zeilenga
4baa7c47da Add better modlist2mod error reporting (to client) 2001-05-10 03:41:17 +00:00
Kurt Zeilenga
f48cb50f12 Zap presentation address match define 2001-05-09 23:43:06 +00:00
Kurt Zeilenga
24ea49810f Clean up some #ifdefs 2001-05-09 23:42:49 +00:00
Kurt Zeilenga
d523048634 Fix have inet_ntop bug 2001-05-09 23:41:16 +00:00
Kurt Zeilenga
b57bc8b35b Note that misc is experimental 2001-05-09 04:17:55 +00:00
Kurt Zeilenga
5f7bf65deb Add ITS#876 nisSchema 2001-05-09 04:16:47 +00:00
Kurt Zeilenga
a8e3501a11 Update copyright 2001-05-08 02:06:33 +00:00
Kurt Zeilenga
9617b89374 Add DESC to various schema elements 2001-05-08 02:03:44 +00:00
Kurt Zeilenga
60c5e77cd6 Fix disconnect bug 2001-05-06 20:01:18 +00:00
Kurt Zeilenga
4055077607 Add simple configure support for sockbuf max incoming 2001-05-05 07:29:21 +00:00
Kurt Zeilenga
be26f1a9f7 Fix typos 2001-05-04 22:50:51 +00:00
Kurt Zeilenga
abce5abf34 Quick sb_max_incoming hack, should be configurable (likely
with differing anonymous vs authenticated values).
2001-05-04 21:55:07 +00:00
Kurt Zeilenga
aa983f343e Clean up entry_free()
assert of e_private was not freed by caller
2001-05-04 01:02:36 +00:00
Kurt Zeilenga
383391b460 detect and use fcntl (for BSD/OS)
detect inet_ntop (for MacOSX)
2001-05-03 05:53:34 +00:00
Kurt Zeilenga
508890e75b Add telephone number indexing support (reuse only) 2001-05-03 00:59:47 +00:00
Kurt Zeilenga
87dc3e2091 Use SMD5 is SHA1 is not available 2001-05-02 19:46:30 +00:00
Kurt Zeilenga
3310663d02 RANDFILE directives 2001-05-02 19:46:01 +00:00
Kurt Zeilenga
3fdbff6923 SLP updates 2001-05-02 19:44:21 +00:00
Kurt Zeilenga
66aa425d92 Be a bit more liberal 2001-05-02 19:43:38 +00:00
Kurt Zeilenga
2133318df7 Fix LDIF bug 2001-05-02 19:41:57 +00:00
Kurt Zeilenga
f8b4ed8afb Fix secprops mimic'ing 2001-05-02 19:41:27 +00:00
Kurt Zeilenga
a045117bf2 fix typo in comment 2001-04-21 01:32:03 +00:00
Kurt Zeilenga
1eb0170482 s/<anonymous>/cn=anonymous/ to avoid syntax issues 2001-04-19 19:29:38 +00:00
Kurt Zeilenga
da0e6d3d98 Previously added modrdn restriction to restrictive. Need to
check newSuperior.
2001-04-19 19:29:00 +00:00
Kurt Zeilenga
c2c7ccc228 Disallow anonymous modification. 2001-04-19 19:28:15 +00:00
Kurt Zeilenga
7537abfb06 Fix referral handling bug 2001-04-12 23:02:20 +00:00
Gary Williams
a26612bc00 fix for select_backend suggested G. Gombas (ITS 1090) 2001-03-27 15:04:06 +00:00
Kurt Zeilenga
20690a532e Fix typo 2001-03-17 17:43:36 +00:00
Kurt Zeilenga
a5ea7aefd6 Add name and uid support to dnaddr 2001-03-15 04:48:29 +00:00
Kurt Zeilenga
fd41a199c0 Make sure we have a separator when doing suffix matching 2001-03-15 03:05:33 +00:00
Kurt Zeilenga
9f8a0e7d1b Normalize DN 2001-03-15 03:04:51 +00:00
Kurt Zeilenga
efaab64b69 Normalized user DN 2001-03-15 03:03:01 +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
339a1504d6 Fix syntax/matching-rules for ref and labeledURI 2001-03-15 03:00:52 +00:00
Mark Valence
4b87d9c7d2 Fixed bug (my own, rather old too) that causes a crash on exit when ru
n as a service on NT.
2001-03-11 05:13:57 +00:00
Gary Williams
80ab3d6a6e fix logging line 2001-03-02 14:17:01 +00:00
Mark Valence
2c677743ad bug fix 2001-02-20 16:08:14 +00:00
Mark Valence
95bc47ce79 fix mistype. 2001-02-20 16:07:05 +00:00
Mark Valence
6e6118c6cc attribute & objectclass mapping rules 2001-02-19 19:14:12 +00:00
Mark Valence
efcb4533be Fixed aci syntax validation to use UTF (aci attrs can have dn's) 2001-02-19 19:06:21 +00:00
Gary Williams
9cf6ee8ccd fix acl log line 2001-02-08 13:21:20 +00:00
Gary Williams
8ac7efd02d Add some logging for bad attributes 2001-02-06 16:06:38 +00:00
Kurt Zeilenga
0fc62be316 Rework security restrictions for SASL bind 2001-02-03 03:17:22 +00:00
Kurt Zeilenga
f9a302b1f6 Revamp last commit 2001-02-03 02:32:14 +00:00
Kurt Zeilenga
8091aedc76 Add security checks to root DSE searches.
Fix checking of require statements.
2001-02-03 02:21:37 +00:00
Gary Williams
7c53c9ba1c fix windows-specific logging line 2001-02-02 14:49:35 +00:00
Gary Williams
7cf56432be small changes to logging 2001-02-02 13:50:16 +00:00
Gary Williams
e565505f21 fix logging macros (thanks Mei) 2001-02-02 13:49:26 +00:00
Stig Venaas
ac95c255a8 Using UTF8normcmp() from lunicode, removing our own UTF8casecmp() 2001-01-31 15:58:00 +00:00
Stig Venaas
a8b77998f5 Made caseIgnoreIndexer(), caseIgnoreFilter(),
caseIgnoreSubstringsIndexer(), caseIgnoreSubstringsFilter(),
caseExactIndexer(), caseExactFilter(), caseExactSubstringsIndexer() and
caseExactSubstringsFilter() use UTF8normalize
2001-01-26 15:56:29 +00:00
Stig Venaas
b92bceed2a Now loading all UCDATA files 2001-01-26 14:33:09 +00:00
Stig Venaas
b371357c13 Made dnNormalize() do Unicode normalization and case folding.
dn_normalize() now uses dnNormalize() and fails if normalized string is
longer than original string.
2001-01-25 16:51:59 +00:00
Kurt Zeilenga
d717d9c897 Add DNS SRV to error text 2001-01-24 17:25:30 +00:00
Stig Venaas
13e628bcf4 Load UCDATA composition data 2001-01-24 15:31:53 +00:00
Kurt Zeilenga
fa21f7fe86 Fix IP= port numbers 2001-01-24 00:08:15 +00:00
Mark Adamson
68ab73a0f5 Make sure the variable used for SASL REALM is initialized, in case of no REALM. 2001-01-23 19:18:03 +00:00
Kurt Zeilenga
65cdfa68f0 Fix more typos 2001-01-22 22:03:44 +00:00
Kurt Zeilenga
a4f37d6303 Fix typo 2001-01-22 21:10:54 +00:00
Kurt Zeilenga
10730ca226 Add objectClass kind checking
Kludge NADF schema to conform
2001-01-22 08:09:25 +00:00
Kurt Zeilenga
a93a15d9fc Add copyright notices 2001-01-20 17:49:05 +00:00
Kurt Zeilenga
b849a6ec78 Add default to default option 2001-01-20 01:15:44 +00:00
Howard Chu
4703fe82b2 Pierangelo Masarati's bugfixes and enhancements for suffix-massaging.
See the Changes file for detailed description.
2001-01-19 21:27:20 +00:00
Kurt Zeilenga
28d1dbd8ac Add "sasl-external-x509dn-convert" configuration option aimed
at providing authid TLS/X.509 to LDAP DN mapping.  Experimental.
2001-01-19 00:47:32 +00:00
Kurt Zeilenga
1302713f09 Fix SASL_REALM bug
Minor cleanup of logging code, variable scope
2001-01-19 00:01:25 +00:00
Mark Adamson
6b4ec38178 Change the SASL DN's from cn=authzid to cn=auth 2001-01-18 20:05:15 +00:00
Gary Williams
84658f8a11 add new logging 2001-01-17 21:12:54 +00:00
Kurt Zeilenga
79d9ab38ba Add more restrictive numeric string validate.
Need to rework IA5 matching to support empty strings as they should
be allowed for most string types (excepting directoryString).
2001-01-17 21:02:11 +00:00
Gary Williams
3281138bcf fix format for new logging 2001-01-17 17:01:19 +00:00
Gary Williams
f49fd8a98e fix format 2001-01-17 16:35:53 +00:00
Kurt Zeilenga
c55a82baa2 Mark as "altered version" 2001-01-17 07:09:22 +00:00
Kurt Zeilenga
06d63200e4 ITS#919: fix str2ad initialization bug 2001-01-17 06:32:26 +00:00
Kurt Zeilenga
a5377f6c5e Use consistent spelling of objectClass 2001-01-17 02:51:05 +00:00
Kurt Zeilenga
abb0797358 Move optimistic ret setting 2001-01-17 02:48:55 +00:00
Kurt Zeilenga
8a22a0e0d0 SLP extension derived from patch provided by Caldera Systems.
Copyright 2000, Caldera Systems, Inc All rights reserved.
This software is not subject to any license of Caldera Systems, Inc

This is free software; you can redistribute and use it
under the same terms as OpenLDAP itself
2001-01-16 22:18:33 +00:00
Kurt Zeilenga
2a7036e5b0 ITS#963: Multimaster patch 2001-01-16 06:49:49 +00:00
Gary Williams
ffcdc6d11d More new logging (Behind NEW_LOGGING) 2001-01-15 19:17:29 +00:00
Gary Williams
d531a20f52 more new logging (finally), behind NEW_LOGGING 2001-01-11 17:11:23 +00:00
Kurt Zeilenga
2ae02fc19b Treat unrecognized object classes as an objecdt class violation (per X.511) 2001-01-10 19:00:47 +00:00
Kurt Zeilenga
6d0479b2a6 ITS#955: update cosine schema based upon X.500 recommendations 2001-01-10 18:59:54 +00:00
Stig Venaas
43015fc862 Allow changing rdn only, locked parent twice when old and new parent were
the same.
2001-01-09 15:49:44 +00:00
Kurt Zeilenga
778e5e9bb6 ITS#941: back-passwd levels fix from nick@debian.org 2000-12-28 02:27:13 +00:00
Mark Adamson
466ff113e1 ITS#897, internal connections need to free their single operation struct. 2000-12-08 22:34:22 +00:00
Mark Adamson
2231d5e64e Make SASL authorization work for NULL, "u:", and "dn:" authz strings. 2000-11-30 22:00:15 +00:00
Kurt Zeilenga
fc630ea1f8 Unbind should not return a result 2000-11-30 20:27:27 +00:00
Kurt Zeilenga
04e2da58ed ITS#895: gai_strerror fix 2000-11-24 05:30:52 +00:00
Kurt Zeilenga
8befe70f3f ITS#900: Fix waitpid == 0 bug 2000-11-21 21:59:35 +00:00
Howard Chu
e2ff92c6fc Set outbound connection to use the same protocol version as the inbound. 2000-11-11 03:01:00 +00:00
Kurt Zeilenga
fcd432ffbd empty OID values are invalid 2000-11-10 23:07:20 +00:00
Stig Venaas
b44cc963c2 Improved ucdata loading error handling 2000-11-09 12:39:18 +00:00
Kurt Zeilenga
ba37cbc233 Fix passwd clearing bug 2000-11-06 15:53:02 +00:00
Kurt Zeilenga
00b77ca088 Postal Address should be treated like directoryString 2000-11-04 21:11:52 +00:00
Kurt Zeilenga
451146f795 Update validation of printable-like syntaxes 2000-11-04 21:09:23 +00:00
Kurt Zeilenga
064abee2c8 highlite ;binary comments with SMIME attributes 2000-11-04 20:32:19 +00:00
Kurt Zeilenga
17bcb2b3bb Update printableString to restrict characters per RFC1778 not isprint() 2000-11-04 20:31:50 +00:00
Dmitry Kovalev
a9b601290b Add 'distinct' to sql search query to prevent duplicate entries in results (suggested by Mathieu Guillaume) 2000-11-04 12:52:06 +00:00
Mark Adamson
caf384a37c Improve handling of initials in approximate search strings. 2000-11-03 16:16:27 +00:00
Kurt Zeilenga
e138a74d48 subtype should inherit approximate matching rule 2000-11-02 21:49:03 +00:00
Dmitry Kovalev
c77bd543bc fix even more stupid thing with the same issue ;) 2000-11-02 16:29:57 +00:00
Dmitry Kovalev
46a10706f5 fix _stupid_ thing with toupper -> ldap_pvt_str2upper 2000-11-02 13:18:45 +00:00
Stig Venaas
87e58fb031 Changed ucdata loading, all is done in config.c. Tried to make ucdata load
when found in config file, or before first call to dn_normalize/dn_validate
2000-11-02 10:10:36 +00:00
Dmitry Kovalev
6d94ecd1b0 fix ITS #855 (back-sql crashes with malformed filters),
also extend bind() to something less trivial (to support SIMPLE_AUTH mode)
2000-10-30 20:36:29 +00:00
Kurt Zeilenga
5935a11c8e Set UTF8DN by default 2000-10-30 20:05:41 +00:00
Stig Venaas
a8985a440b Use the macro UTF8DN to set whether new UTF8 dn_normalize() code should
be used.
2000-10-30 20:00:56 +00:00
Stig Venaas
fdbd1ded93 Short term dn_normalize() fix. Uppercases all UTF8 characters as long
as the character byte length is preserved. Change #if 1 to use.
2000-10-28 23:38:14 +00:00
Dmitry Kovalev
4411e0aa17 fix case-insensitive matching
+
documentation cleanup & update
2000-10-25 21:23:04 +00:00
Gary Williams
a0b93ce648 initialize new logging routines (behind NEW_LOGGING) 2000-10-25 16:50:45 +00:00
Gary Williams
d65bf04894 add logfile directive to config (behind NEW_LOGGING) 2000-10-25 16:49:23 +00:00
Kurt Zeilenga
9117cbd488 Fix another #if 0 v UTF8MATCH bug 2000-10-25 01:32:35 +00:00
Kurt Zeilenga
b065d8e01b Missed on #if 0 to #if UTF8MATCH is last commit
Also, enable UTF8MATCH... this is devel!
2000-10-24 22:25:41 +00:00
Kurt Zeilenga
7d2d2d6583 UTF8 aware caseIgnore matching
---
Copyright 2000 Stig Venaas, UNINETT
All rights reserved.

Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice is
preserved. The name of UNINETT may not be used to endorse or promote
products derived from this software without specific prior written
permission. This software is provided ``as is'' without express or
implied warranty.
2000-10-24 22:23:30 +00:00
Mark Adamson
c165d93ecd Implement 2 approximate matching algorithms. 2000-10-24 20:25:37 +00:00
Kurt Zeilenga
52402fa752 Fix register_syntax argument names 2000-10-23 18:02:48 +00:00
Howard Chu
99c88eace1 Fix: remap API error codes into protocol error codes before sending
back to client.
2000-10-23 13:32:14 +00:00
Kurt Zeilenga
dbdba34972 First-cut at manageDSAit-aware backend selection. 2000-10-21 03:29:02 +00:00
Kurt Zeilenga
38cf4a1d82 Add better space compression 2000-10-21 03:27:41 +00:00
Gary Williams
696de70df4 fix lutil_set_debug_level call 2000-10-20 14:46:33 +00:00
Kurt Zeilenga
9e7accb034 This patch replaces gai_strerror with AC_GAI_STRERROR in daemon.c and also
uses AC_GAI_STRERROR to report getaddrinfo failures in os-ip.c
-- Stig Venass
2000-10-19 18:05:11 +00:00
Kurt Zeilenga
5630665e27 quick hack to support holding of the root naming context 2000-10-18 19:29:40 +00:00
Kurt Zeilenga
2dbd6c6d0e remove lint 2000-10-18 00:35:09 +00:00
Gary Williams
aacd6e78f4 convert text level to int 2000-10-17 19:42:24 +00:00
Kurt Zeilenga
a865220fd8 Bump listeners to 10 2000-10-17 06:36:22 +00:00
Kurt Zeilenga
d30264a2a1 Trim unimplemented syntaxes and matching rules from subschema subentry 2000-10-16 23:47:46 +00:00
Kurt Zeilenga
1fb923e6e2 Replace last commit with Stig's improved version 2000-10-16 21:45:35 +00:00
Kurt Zeilenga
820965a412 ITS#839: getaddrinfo portability fix from Gabar Gombas 2000-10-16 20:32:39 +00:00
Kurt Zeilenga
fc227a8816 Remove cpp lint 2000-10-16 20:04:42 +00:00
Kurt Zeilenga
e414303e10 Make sure openldap-slurp is created 700 2000-10-16 16:43:42 +00:00
Julio Sánchez Fernández
336f054d05 Extend MRA. It now has a pointer to a MatchingRule, but a char
pointer is kept for messages and to tell a filter without rule
from one with an unknown rule.  It matters.

Fix a couple of bugs in debug output.
2000-10-15 19:12:21 +00:00
Julio Sánchez Fernández
5b52ae5109 Extend MRA. It now has a pointer to a MatchingRule, but a char
pointer is kept for messages and to tell a filter without rule
from one with an unknown rule.  It matters.
2000-10-15 19:10:43 +00:00
Julio Sánchez Fernández
18b6b866e2 Better parsing. 2000-10-14 18:36:13 +00:00
Kurt Zeilenga
62a588bd05 Correct SMIME comment
move pilot.schema to the Attic
2000-10-14 01:42:49 +00:00
Kurt Zeilenga
e30826ea36 Per IETF LDAPext discussions, ;binary transfer of binary syntax
makes little sense.  Implementations should not require or by
default return ;binary for attributes of this syntax.  This means
inetOrgPerson needs updating.  This means Netscape roaming doesn't.
2000-10-14 01:37:48 +00:00
Kurt Zeilenga
82e7b2e049 label io as "ldap_" 2000-10-14 00:12:39 +00:00
Julio Sánchez Fernández
7444e727c9 Add mra.o to linked objects 2000-10-13 20:43:32 +00:00
Julio Sánchez Fernández
ff72b73fe3 Protos for extensible matching rules 2000-10-13 20:41:23 +00:00
Julio Sánchez Fernández
d4b63dd3e3 The beginning of extensible matches. Do not use. 2000-10-13 20:39:36 +00:00
Julio Sánchez Fernández
c317a093c4 Let slapd at least start and do things. Someone should really have
a look at this.  Do we need to add something to every program so
that levelArray is at least initialized?
2000-10-13 20:24:49 +00:00
Kurt Zeilenga
2b2ee1ccbd Return authMethodNotSupported not authUnknown for unknown
bind authentication method
2000-10-13 05:28:23 +00:00
Kurt Zeilenga
f7e9842160 Remove "defaultaccess" option. No longer needed as without
ACLs, the only sane and useful option is "read".
2000-10-13 04:45:24 +00:00
Howard Chu
004f4f3260 Fix TLSVerifyClient. Applied in wrong branch before. 2000-10-13 00:54:05 +00:00
Kurt Zeilenga
16fcdec8df Import Stig reorganized daemon.c + style changes 2000-10-12 21:59:08 +00:00
Gary Williams
b9837286db example of new logging use 2000-10-12 20:12:28 +00:00
Gary Williams
bbc0ac00b2 get new debug configuration 2000-10-12 20:11:49 +00:00
Kurt Zeilenga
b285814f8e Fix layer installation 2000-10-12 19:02:31 +00:00
Kurt Zeilenga
5a32ff0603 Add missing 'static'... (ITS#823,825,828)
as reported by Jeff Earickson <jaearick@colby.edu>
other suggestions to be separately reviewed
2000-10-11 23:42:53 +00:00
Kurt Zeilenga
468664c443 Adjust result code when entry is not found to noSuchObject 2000-10-11 18:19:26 +00:00
Mark Valence
7e1d4023b8 Removed testing mods accidentally committed with previous fix. 2000-10-11 16:41:15 +00:00
Mark Valence
8130d0e883 Added conn and op arguments to group backend callback. 2000-10-11 16:35:14 +00:00
Mark Valence
d8d9bec087 Added conn and op arguments to backend_group. 2000-10-11 16:25:28 +00:00
Kurt Zeilenga
e6dc9d1889 Update ldappasswd binddn bug, man page and error reporting 2000-10-11 04:56:08 +00:00
Kurt Zeilenga
1ba91c7fc7 Fix up logging 2000-10-10 06:34:58 +00:00
Kurt Zeilenga
a67546e640 Add more detail to "configured to hold" message 2000-10-10 01:37:07 +00:00
Kurt Zeilenga
2b643c7d0b Don't allow authPassword (yet) 2000-10-10 01:07:39 +00:00
Kurt Zeilenga
ef51582b6e slight change to chdir/chroot commit to clean up perror args 2000-10-09 23:38:30 +00:00
Kurt Zeilenga
0189c35b6a Do a chdir() to the sandbox dir to ensure CWD is within sandbox. 2000-10-09 23:35:57 +00:00
Julio Sánchez Fernández
8a8429a972 Fix misleading text in debug output. 2000-10-09 19:14:44 +00:00
Julio Sánchez Fernández
bdf3ec2fb3 Remove lint. 2000-10-09 19:11:46 +00:00
Kurt Zeilenga
c42c2847cf Fix SLAPD_SPASSWD typo which caused passwd_mutex not to be used
consistently.
2000-10-09 19:09:28 +00:00
Julio Sánchez Fernández
6777a3a41a Permit access defined by uniqueMember and not only DN-valued
attributes.  This allows using groupOfUniqueNames for
access control.
Fix small typo in MRA definition.
2000-10-09 19:09:22 +00:00
Kurt Zeilenga
27b30275a6 We need to set sasl_layers prior to returning result... 2000-10-07 02:00:54 +00:00
Kurt Zeilenga
a912e6eea0 Make sure authzid form produces a valid subject DN. Support
both u: and dn: forms.
Rework sasl-regex DN be of the form
	uid=user,cn=realm,cn=mech,cn=authz
Fix up slapd.conf(5)
2000-10-06 23:50:38 +00:00
Kurt Zeilenga
1b635156ab s/saslregex/sasl-regex/
Other minor updates
2000-10-06 21:16:36 +00:00
Kurt Zeilenga
f3d9dd0fab ITS#806: Fix DISTDIR typo 2000-10-05 17:57:41 +00:00
Kurt Zeilenga
68f1e3a55c Fix install of schema when $(INSTALL) is build/install.sh
use test, not [ ] in expressions
2000-10-04 17:00:03 +00:00
Kurt Zeilenga
cdf17386ac Fix mode of schema.default installed files 2000-10-04 12:45:55 +00:00
Kurt Zeilenga
4dadd52ce7 allow numericString match indexing 2000-10-04 02:23:42 +00:00
Kurt Zeilenga
49d9f7f1b2 Don't excite folks with index_param fails 2000-10-03 20:50:08 +00:00
Kurt Zeilenga
cdc0a66558 ITS#798: don't block on empty replog log in one-shot mode 2000-10-03 18:50:42 +00:00
Kurt Zeilenga
5c66902abb Fix typo 2000-10-02 14:10:51 +00:00
Kurt Zeilenga
492bb0263f Fix thread handling and error printing 2000-10-01 19:21:07 +00:00