]> git.sur5r.net Git - openldap/log
openldap
23 years agoenforces detailed search limits
Pierangelo Masarati [Fri, 3 Aug 2001 17:15:14 +0000 (17:15 +0000)]
enforces detailed search limits

23 years agoA big bunch of improvements, contributed by Sam Drake and Raj Damani.
Dmitry Kovalev [Thu, 2 Aug 2001 17:28:59 +0000 (17:28 +0000)]
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.

23 years agoFix bug introduced during TLS rework
Kurt Zeilenga [Thu, 2 Aug 2001 04:20:11 +0000 (04:20 +0000)]
Fix bug introduced during TLS rework

23 years agoAdd some addl. logging
Kurt Zeilenga [Thu, 2 Aug 2001 03:37:20 +0000 (03:37 +0000)]
Add some addl. logging

23 years agofix a couple of typos; schemacheck was duplicated
Pierangelo Masarati [Wed, 1 Aug 2001 10:47:44 +0000 (10:47 +0000)]
fix a couple of typos; schemacheck was duplicated

23 years agoadd global, per backend and per op_ndn time/size soft, hard and to-be-checked limits...
Pierangelo Masarati [Wed, 1 Aug 2001 10:09:04 +0000 (10:09 +0000)]
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

23 years agoAdd user schema I-D
Kurt Zeilenga [Wed, 1 Aug 2001 05:42:28 +0000 (05:42 +0000)]
Add user schema I-D

23 years agoReplaced with ldap-opattrs/features I-Ds
Kurt Zeilenga [Wed, 1 Aug 2001 05:41:10 +0000 (05:41 +0000)]
Replaced with ldap-opattrs/features I-Ds

23 years agoUpdate drafts to latest revs
Kurt Zeilenga [Wed, 1 Aug 2001 05:40:30 +0000 (05:40 +0000)]
Update drafts to latest revs

23 years agoUpdate to rev 04
Kurt Zeilenga [Wed, 1 Aug 2001 05:40:10 +0000 (05:40 +0000)]
Update to rev 04

23 years agoUpdates for back-bdb testing
Kurt Zeilenga [Wed, 1 Aug 2001 04:50:47 +0000 (04:50 +0000)]
Updates for back-bdb testing

23 years agofix typo; try to delete dn2id in case of late failure
Pierangelo Masarati [Tue, 31 Jul 2001 10:54:39 +0000 (10:54 +0000)]
fix typo; try to delete dn2id in case of late failure

23 years agoadded acl check for added/removed rdn attrs
Pierangelo Masarati [Tue, 31 Jul 2001 10:02:19 +0000 (10:02 +0000)]
added acl check for added/removed rdn attrs

23 years agoFix typo
Kurt Zeilenga [Tue, 31 Jul 2001 07:53:21 +0000 (07:53 +0000)]
Fix typo

23 years agoClean up
Kurt Zeilenga [Tue, 31 Jul 2001 04:55:14 +0000 (04:55 +0000)]
Clean up

23 years agoLast changes should have been #ifdef
Kurt Zeilenga [Tue, 31 Jul 2001 04:30:11 +0000 (04:30 +0000)]
Last changes should have been #ifdef

23 years agoFix basic operations
Kurt Zeilenga [Tue, 31 Jul 2001 04:24:29 +0000 (04:24 +0000)]
Fix basic operations

23 years agoFix slapadd crash when only a subset of databases have been initialized.
Kurt Zeilenga [Tue, 31 Jul 2001 00:16:44 +0000 (00:16 +0000)]
Fix slapadd crash when only a subset of databases have been initialized.
Likely should have a general solution to this.

23 years agofixes another assert in case of subtle error (schema failure while applying rdn changes)
Pierangelo Masarati [Mon, 30 Jul 2001 20:12:34 +0000 (20:12 +0000)]
fixes another assert in case of subtle error (schema failure while applying rdn changes)

23 years agofixes ITS#1261 (abort on modrdn with new dn already existing)
Pierangelo Masarati [Mon, 30 Jul 2001 14:54:02 +0000 (14:54 +0000)]
fixes ITS#1261 (abort on modrdn with new dn already existing)

23 years agoAdd no attrs clarification
Kurt Zeilenga [Mon, 30 Jul 2001 07:03:31 +0000 (07:03 +0000)]
Add no attrs clarification

23 years agofixed some memory allocation nonsense
Pierangelo Masarati [Sun, 29 Jul 2001 17:21:28 +0000 (17:21 +0000)]
fixed some memory allocation nonsense

23 years agoFixed a tiny typo/spelling error
Stig Venaas [Sun, 29 Jul 2001 11:46:41 +0000 (11:46 +0000)]
Fixed a tiny typo/spelling error

23 years agofix typo
Pierangelo Masarati [Sat, 28 Jul 2001 17:35:32 +0000 (17:35 +0000)]
fix typo

23 years agoregex-based per op_ndn time/size limits
Pierangelo Masarati [Sat, 28 Jul 2001 12:07:40 +0000 (12:07 +0000)]
regex-based per op_ndn time/size limits

23 years agoexploits regex-based per op_ndn time/size limits
Pierangelo Masarati [Sat, 28 Jul 2001 11:25:00 +0000 (11:25 +0000)]
exploits regex-based per op_ndn time/size limits

23 years agohandle regex-based per op_ndn time/size limits
Pierangelo Masarati [Sat, 28 Jul 2001 11:24:22 +0000 (11:24 +0000)]
handle regex-based per op_ndn time/size limits

23 years agoRemove compare root dse task, in development
Kurt Zeilenga [Sat, 28 Jul 2001 01:06:36 +0000 (01:06 +0000)]
Remove compare root dse task, in development

23 years agoRemove assert(0)
Kurt Zeilenga [Sat, 28 Jul 2001 01:06:06 +0000 (01:06 +0000)]
Remove assert(0)

23 years agoRemoved duplicate code by replacing case-Exact/Ignore-Filter/Indexer and
Stig Venaas [Fri, 27 Jul 2001 22:54:43 +0000 (22:54 +0000)]
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

23 years agoMaking the approx multistring code default. Leaving the old code for now,
Stig Venaas [Thu, 26 Jul 2001 22:33:28 +0000 (22:33 +0000)]
Making the approx multistring code default. Leaving the old code for now,
but can really be removed.

23 years agoMisc cleanup of asserts
Kurt Zeilenga [Thu, 26 Jul 2001 01:08:00 +0000 (01:08 +0000)]
Misc cleanup of asserts

23 years agoMade approxMatch/Indexer/Filter all do Unicode cannonical normalization
Stig Venaas [Wed, 25 Jul 2001 21:22:55 +0000 (21:22 +0000)]
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.

23 years agoITS#1274 fix
Kurt Zeilenga [Tue, 24 Jul 2001 19:54:04 +0000 (19:54 +0000)]
ITS#1274 fix

23 years agoTo be consistent, should assert that ld is valid.
Kurt Zeilenga [Tue, 24 Jul 2001 16:38:42 +0000 (16:38 +0000)]
To be consistent, should assert that ld is valid.

23 years agosuffix option; allows partial replication of a database
Pierangelo Masarati [Tue, 24 Jul 2001 13:39:43 +0000 (13:39 +0000)]
suffix option; allows partial replication of a database

23 years agoMisc. updates
Kurt Zeilenga [Tue, 24 Jul 2001 07:56:07 +0000 (07:56 +0000)]
Misc. updates

23 years agoMisc updates
Kurt Zeilenga [Tue, 24 Jul 2001 06:26:32 +0000 (06:26 +0000)]
Misc updates

23 years agoRework single-value check
Kurt Zeilenga [Tue, 24 Jul 2001 04:31:01 +0000 (04:31 +0000)]
Rework single-value check

23 years agoAdd an improved single value constraint check.
Kurt Zeilenga [Tue, 24 Jul 2001 03:25:17 +0000 (03:25 +0000)]
Add an improved single value constraint check.

23 years agoadded extra check to suffix param of replica entry
Pierangelo Masarati [Mon, 23 Jul 2001 14:32:59 +0000 (14:32 +0000)]
added extra check to suffix param of replica entry

23 years agomisc updates, constification, deprecation...
Kurt Zeilenga [Mon, 23 Jul 2001 05:00:39 +0000 (05:00 +0000)]
misc updates, constification, deprecation...

23 years agoMisc cleanup
Kurt Zeilenga [Mon, 23 Jul 2001 04:31:41 +0000 (04:31 +0000)]
Misc cleanup

23 years agoMisc updates
Kurt Zeilenga [Mon, 23 Jul 2001 04:16:42 +0000 (04:16 +0000)]
Misc updates

23 years agoLDAPext I-D updates
Kurt Zeilenga [Mon, 23 Jul 2001 04:12:58 +0000 (04:12 +0000)]
LDAPext I-D updates

23 years agoFix typo
Kurt Zeilenga [Sun, 22 Jul 2001 03:25:45 +0000 (03:25 +0000)]
Fix typo

23 years agofix up UTF8MATCH
Kurt Zeilenga [Sun, 22 Jul 2001 02:45:21 +0000 (02:45 +0000)]
fix up UTF8MATCH

23 years agoUse DN normalize
Kurt Zeilenga [Sun, 22 Jul 2001 00:32:58 +0000 (00:32 +0000)]
Use DN normalize

23 years agoWe shouldn't need UTF8oncasecmp() and UTF8casechr() anymore, removing
Stig Venaas [Sun, 22 Jul 2001 00:31:04 +0000 (00:31 +0000)]
We shouldn't need UTF8oncasecmp() and UTF8casechr() anymore, removing
them.

23 years agoMinor cleanup
Kurt Zeilenga [Sun, 22 Jul 2001 00:14:42 +0000 (00:14 +0000)]
Minor cleanup

23 years agoZap old DN code
Kurt Zeilenga [Sat, 21 Jul 2001 23:45:04 +0000 (23:45 +0000)]
Zap old DN code

23 years agoMake some additional UTF8 public
Kurt Zeilenga [Sat, 21 Jul 2001 23:13:04 +0000 (23:13 +0000)]
Make some additional UTF8 public
Remove lint

23 years agoZap !UTF8MATCH code
Kurt Zeilenga [Sat, 21 Jul 2001 23:02:06 +0000 (23:02 +0000)]
Zap !UTF8MATCH code

23 years agoBack out DN changes, needs more work
Kurt Zeilenga [Sat, 21 Jul 2001 22:44:55 +0000 (22:44 +0000)]
Back out DN changes, needs more work

23 years agounifdef -DMULTIATTRVAL_RDN
Kurt Zeilenga [Sat, 21 Jul 2001 21:21:32 +0000 (21:21 +0000)]
unifdef -DMULTIATTRVAL_RDN

23 years agoAdded the suffix=<dn> parameter to replica config directive
Pierangelo Masarati [Sat, 21 Jul 2001 14:15:23 +0000 (14:15 +0000)]
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

23 years agoReworked again the caching in case of failure.
Pierangelo Masarati [Sat, 21 Jul 2001 10:53:06 +0000 (10:53 +0000)]
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

23 years agoReworked API of nextid; e_private gets destroyed separately from the entry in case...
Pierangelo Masarati [Fri, 20 Jul 2001 09:50:28 +0000 (09:50 +0000)]
Reworked API of nextid; e_private gets destroyed separately from the entry in case add fails (should fix ITS#1245)

23 years agoMade caseExactMatch() use Unicode normalization
Stig Venaas [Tue, 17 Jul 2001 20:09:37 +0000 (20:09 +0000)]
Made caseExactMatch() use Unicode normalization

23 years agoMade caseIgnoreSubstringsMatch and caseExactSubstringsMatch use proper
Stig Venaas [Tue, 17 Jul 2001 19:35:23 +0000 (19:35 +0000)]
Made caseIgnoreSubstringsMatch and caseExactSubstringsMatch use proper
Unicode cannonical normalization

23 years agoPrevent ldbm_sync from being called by ldbm_cache_close when the new
Randy Kunkee [Mon, 16 Jul 2001 23:21:36 +0000 (23:21 +0000)]
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.

23 years agoFixed UTF8 encoding checks for substrings assertions
Stig Venaas [Mon, 16 Jul 2001 22:48:52 +0000 (22:48 +0000)]
Fixed UTF8 encoding checks for substrings assertions

23 years agoFix ITS#1239:
Randy Kunkee [Mon, 16 Jul 2001 22:16:24 +0000 (22:16 +0000)]
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.

23 years agoFixed bug in caseExactSubstringsIndexer() and caseIgnoreSubstringsIndexer().
Stig Venaas [Sun, 15 Jul 2001 21:28:07 +0000 (21:28 +0000)]
Fixed bug in caseExactSubstringsIndexer() and caseIgnoreSubstringsIndexer().
UTF8 normalization must be done before we compute number of keys since
string length might increase.

23 years agoExtend assertion value syntax checks to some other cases. Needs to
Kurt Zeilenga [Sun, 15 Jul 2001 17:25:49 +0000 (17:25 +0000)]
Extend assertion value syntax checks to some other cases.  Needs to
be applied to substrings assertions as well.

23 years agoFix typo in disallow logging
Kurt Zeilenga [Sun, 15 Jul 2001 17:25:00 +0000 (17:25 +0000)]
Fix typo in disallow logging

23 years agoFixed segfault in caseIgnoreFilter when assertion value has bad UTF8 coding
Stig Venaas [Sun, 15 Jul 2001 16:21:36 +0000 (16:21 +0000)]
Fixed segfault in caseIgnoreFilter when assertion value has bad UTF8 coding

23 years agoreworked slapd_mods_free into mimic to avoid extra obj linking into tools
Pierangelo Masarati [Sat, 14 Jul 2001 17:48:12 +0000 (17:48 +0000)]
reworked slapd_mods_free into mimic to avoid extra obj linking into tools

23 years agoThis is the skeleton of back-monitor, the slapd monitoring backend.
Pierangelo Masarati [Sat, 14 Jul 2001 17:34:24 +0000 (17:34 +0000)]
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.

23 years agoAdd extraneous database to slapd.conf
Kurt Zeilenga [Sat, 14 Jul 2001 01:28:19 +0000 (01:28 +0000)]
Add extraneous database to slapd.conf
Remove ssf from slapd-schema.conf

23 years agoQuick and dirty hack to add password modify replication.
Kurt Zeilenga [Sat, 14 Jul 2001 01:26:02 +0000 (01:26 +0000)]
Quick and dirty hack to add password modify replication.

23 years agodn_validate/dn_normalize has been rewritten by
Pierangelo Masarati [Fri, 13 Jul 2001 08:21:14 +0000 (08:21 +0000)]
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.

23 years agohonors multiple type/value in rdn when generating ufn
Pierangelo Masarati [Wed, 11 Jul 2001 20:16:25 +0000 (20:16 +0000)]
honors multiple type/value in rdn when generating ufn

23 years agoadded function cache_find_entry_ndn2id that avoids an unnecessary call to dn_normaliz...
Pierangelo Masarati [Wed, 11 Jul 2001 08:41:42 +0000 (08:41 +0000)]
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

23 years agoChange comments to invite email from people using it, and to note that
Randy Kunkee [Tue, 10 Jul 2001 22:17:09 +0000 (22:17 +0000)]
Change comments to invite email from people using it, and to note that
OpenLDAP 2.x is supported.

23 years agoCall ldap_memfree(attributeName) for returns from ldap_first_attribute()
Randy Kunkee [Tue, 10 Jul 2001 22:11:57 +0000 (22:11 +0000)]
Call ldap_memfree(attributeName) for returns from ldap_first_attribute()
and ldap_next_attribute if using newer interface.  Current test for this
is an #if LDAP_API_VERSION >= 2004.

23 years agoreworked rdn_attrs to use ldap_explode_rdn; maybe we should remove escapes "\" from...
Pierangelo Masarati [Tue, 10 Jul 2001 18:19:22 +0000 (18:19 +0000)]
reworked rdn_attrs to use ldap_explode_rdn; maybe we should remove escapes "\" from parts directly in ldap_explode_rdn

23 years agofix bad debug message
Gary Williams [Tue, 10 Jul 2001 16:42:26 +0000 (16:42 +0000)]
fix bad debug message

23 years agoForbid empty ("") dn! (followup 5 to ITS#1173)
Pierangelo Masarati [Mon, 9 Jul 2001 10:35:43 +0000 (10:35 +0000)]
Forbid empty ("") dn! (followup 5 to ITS#1173)

23 years agoIf add to "" is allowed, also modrdn should
Pierangelo Masarati [Sat, 7 Jul 2001 15:40:25 +0000 (15:40 +0000)]
If add to "" is allowed, also modrdn should

23 years agodn2idl API changed for consistency with other dn2id* funcs
Pierangelo Masarati [Sat, 7 Jul 2001 14:49:42 +0000 (14:49 +0000)]
dn2idl API changed for consistency with other dn2id* funcs

23 years agomoved some slap_mods_* functions into mods.c, so mods.o can be included
Pierangelo Masarati [Sat, 7 Jul 2001 09:13:05 +0000 (09:13 +0000)]
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).

23 years agoclean out contrib and clients
Kurt Zeilenga [Sat, 7 Jul 2001 05:28:23 +0000 (05:28 +0000)]
clean out contrib and clients

23 years agoClarify notes a bit
Kurt Zeilenga [Sat, 7 Jul 2001 05:27:51 +0000 (05:27 +0000)]
Clarify notes a bit

23 years agoAdd 3112 ref
Kurt Zeilenga [Sat, 7 Jul 2001 05:24:19 +0000 (05:24 +0000)]
Add 3112 ref

23 years agoClean up RFC 3112 entry
Kurt Zeilenga [Sat, 7 Jul 2001 05:23:45 +0000 (05:23 +0000)]
Clean up RFC 3112 entry

23 years agoFix RFC ref
Kurt Zeilenga [Sat, 7 Jul 2001 05:23:10 +0000 (05:23 +0000)]
Fix RFC ref

23 years agoMajor clients cleanout
Kurt Zeilenga [Sat, 7 Jul 2001 05:05:38 +0000 (05:05 +0000)]
Major clients cleanout

23 years agoMore contrib cleanout
Kurt Zeilenga [Sat, 7 Jul 2001 05:01:31 +0000 (05:01 +0000)]
More contrib cleanout

23 years agoMajor cleanout of contrib
Kurt Zeilenga [Sat, 7 Jul 2001 05:00:39 +0000 (05:00 +0000)]
Major cleanout of contrib

23 years agofixed test on "" (empty) parent dn
Pierangelo Masarati [Fri, 6 Jul 2001 14:40:27 +0000 (14:40 +0000)]
fixed test on "" (empty) parent dn

23 years agohonors '+' rdn separator in adding/deleting attributes; needs -DMULTIATTRVAL_RDN...
Pierangelo Masarati [Fri, 6 Jul 2001 12:24:34 +0000 (12:24 +0000)]
honors '+' rdn separator in adding/deleting attributes; needs -DMULTIATTRVAL_RDN. Please test

23 years agoprotos and declarations for charray and rdn stuff
Pierangelo Masarati [Fri, 6 Jul 2001 12:23:22 +0000 (12:23 +0000)]
protos and declarations for charray and rdn stuff

23 years agoadded rdn_attrs: parses a rdn and returns types and values in two arrays (honors...
Pierangelo Masarati [Fri, 6 Jul 2001 12:22:01 +0000 (12:22 +0000)]
added rdn_attrs: parses a rdn and returns types and values in two arrays (honors '+' separator according to RFC 2253)

23 years agoadded misc charray utilities
Pierangelo Masarati [Fri, 6 Jul 2001 12:20:26 +0000 (12:20 +0000)]
added misc charray utilities

23 years agoCheck for critical client controls.
Kurt Zeilenga [Fri, 6 Jul 2001 03:13:42 +0000 (03:13 +0000)]
Check for critical client controls.

23 years agoMinor cleanup
Kurt Zeilenga [Fri, 6 Jul 2001 02:17:18 +0000 (02:17 +0000)]
Minor cleanup

23 years agoMove LDAPI_SOCK to LDAP_RUNDIR
Kurt Zeilenga [Fri, 6 Jul 2001 02:16:23 +0000 (02:16 +0000)]
Move LDAPI_SOCK to LDAP_RUNDIR

23 years agoFix root dse checks
Kurt Zeilenga [Fri, 6 Jul 2001 02:14:47 +0000 (02:14 +0000)]
Fix root dse checks

23 years agoCorrect X.500 reference
Kurt Zeilenga [Fri, 6 Jul 2001 02:11:17 +0000 (02:11 +0000)]
Correct X.500 reference