Commit Graph

739 Commits

Author SHA1 Message Date
Kurt Zeilenga
f6085d3f82 Every quick mod to use a struct berval for e_dn/e_ndn. No bv_len yet. 2001-12-24 16:53:47 +00:00
Howard Chu
2f3399265c Changed sai_dn, sai_ndn to struct berval. (Affects op->o_dn,o_ndn,
conn->c_dn,c_ndn, Access->a_dn_pat)
2001-12-24 15:11:01 +00:00
Kurt Zeilenga
29d5819729 Fix up builds 2001-12-22 20:17:19 +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
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
Kurt Zeilenga
ca975216b8 Regenerate configure and fix AC header inclusion 2001-12-18 02:25:21 +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
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
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
acc2500114 Added ndn to replog args, eliminate unnecessary dn_normalize in replog. 2001-12-09 02:47:39 +00:00
Kurt Zeilenga
abd9be4def Remove lint and misc MSVC updates 2001-12-09 02:34:45 +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
Kurt Zeilenga
3f1ab56fa9 Fix reference scope. 2001-12-07 22:28:46 +00:00
Howard Chu
0552b1c53f NT updates from jon@symas.com. 2001-12-07 04:03:25 +00:00
Howard Chu
223fb11840 Fix so previous change to slapcat works. 2001-12-06 12:28:49 +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
493b415255 Rework indexing code, removing "autolang" and making
"subtypes" and "lang" default behavior.
2001-12-05 00:06:03 +00:00
Howard Chu
bf4bbcaae2 Don't maintain a DN_SUBTREE index for the backend suffix. 2001-12-04 00:10:47 +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
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
Pierangelo Masarati
6df4889f43 minor cleanup 2001-11-17 14:39:10 +00:00
Howard Chu
18ae339b0f ainfo_free no longer needed 2001-11-17 00:46:00 +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
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
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
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
Mark Adamson
8c16d30087 optimize number of calls to slap_get_time() 2001-11-13 01:38:30 +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
Kurt Zeilenga
8d74b517cd Remove lint 2001-11-07 01:24:32 +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
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
Julio Sánchez Fernández
aee598dba7 Remove bogus refusal to index ;binary attributes. Notice that I left
in a check.  This way you have to say:

	index userCertificate eq

If we remove it, we could say:

	index userCertificate;binary eq

I have not tried the latter.
2001-10-23 13:42:37 +00:00
Julio Sánchez Fernández
bf5ea315b6 Compares get values in the matching rule syntax (see RFC2251, 4.1.7),
so we need to tell value_find about this.
2001-10-23 09:48:18 +00:00
Howard Chu
c981026a6c Missed a test in AttributeDescription commit 2001-10-22 14:55: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
Mark Adamson
290137a54f Serialize access to idl insert/delete key routines (ITS 1359) 2001-10-11 18:12:53 +00:00
Kurt Zeilenga
b6a3dad8f0 Delete attribute indices 2001-10-09 19:41:48 +00:00
Kurt Zeilenga
fdc0dd7d6a Fix some NEW_LOGGING errors 2001-10-05 21:49:04 +00:00
Kurt Zeilenga
3120d37951 More changes to let BDB build without LDBM. 2001-10-04 06:34:03 +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
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
2d5a817288 Remove lint 2001-09-16 22:00:53 +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
Kurt Zeilenga
ef7b181f8b Open databases using WRCREAT not READER. 2001-09-01 05:00:27 +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
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
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
c78416fdbd exploits regex-based per op_ndn time/size limits 2001-07-28 11:25:00 +00:00
Kurt Zeilenga
3a2f9e84ba Fix typo 2001-07-22 03:25:45 +00:00
Kurt Zeilenga
9207e19978 unifdef -DMULTIATTRVAL_RDN 2001-07-21 21:21:32 +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
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
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
Kurt Zeilenga
ca43453b95 Quick and dirty hack to add password modify replication. 2001-07-14 01:26:02 +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
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
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
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
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
6dd25ba1e6 Plug idl leakage 2001-06-23 05:05:08 +00:00
Kurt Zeilenga
1229cfcc3f Backout directory config option 2001-06-22 21:00:24 +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
11b6d1f284 Misc updates for NT4 2001-06-15 04:16:55 +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
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
b8788e8a75 minor cleanup 2001-05-18 17:10:03 +00:00
Kurt Zeilenga
ce8fcda8c4 Improve error message when parent is referral or not present 2001-05-16 19:19:16 +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
7537abfb06 Fix referral handling bug 2001-04-12 23:02:20 +00:00
Kurt Zeilenga
20690a532e Fix typo 2001-03-17 17:43:36 +00:00
Kurt Zeilenga
efaab64b69 Normalized user DN 2001-03-15 03:03:01 +00:00
Gary Williams
3281138bcf fix format for new logging 2001-01-17 17:01:19 +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
5630665e27 quick hack to support holding of the root naming context 2000-10-18 19:29:40 +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
e6dc9d1889 Update ldappasswd binddn bug, man page and error reporting 2000-10-11 04:56:08 +00:00
Kurt Zeilenga
49d9f7f1b2 Don't excite folks with index_param fails 2000-10-03 20:50:08 +00:00
Kurt Zeilenga
8a8ed19a44 fix typo in comment 2000-09-30 05:34:02 +00:00
Kurt Zeilenga
890a3cc3bb Update entry release to new prototype 2000-09-30 04:13:30 +00:00
Kurt Zeilenga
7c96f629ee Add connection and operation arguments to backend callbacks.
Needed for transactions.
2000-09-29 05:25:44 +00:00
Kurt Zeilenga
ce382475f0 misc cleanup 2000-09-29 02:50:34 +00:00
Kurt Zeilenga
708db94416 Clean up logging and fix ITS#771 typo 2000-09-25 06:49:27 +00:00
Kurt Zeilenga
6543336245 Fix typo in comment 2000-09-20 23:29:14 +00:00
Kurt Zeilenga
4617f2e946 Fix SPASSWD merge for real 2000-09-20 17:34:06 +00:00
Kurt Zeilenga
50714d2d48 merge changes from authPassword work which should fix SPASSWD code... 2000-09-20 00:28:57 +00:00
Kurt Zeilenga
583cbc8c25 Framework for back-bdb 2000-09-18 18:51:07 +00:00
Ben Collins
09a2e74d5a dereference 'char **text' when passing it as an arg to Debug() 2000-09-13 21:52:50 +00:00
Ben Collins
d216e32d63 declare return value of index_mask() to be slap_mask_t, also get rid of extraneous code in for() loop 2000-09-13 21:51:14 +00:00
Kurt Zeilenga
f7ba5a68c4 Catch nextid failures. 2000-09-12 21:16:03 +00:00
Kurt Zeilenga
d8c4df6f39 -lldbm now sets DB_USE_ENVIRON and support input of a DB home path.
back-ldbm needs modification to support db home directory as backend
(as oppose to database) option.
2000-09-11 18:46:34 +00:00
Kurt Zeilenga
f9690a37bb ITS#717 slapd kbind patch 2000-09-07 22:03:32 +00:00
Kurt Zeilenga
a75a024fd3 Consistently don't require "entry" access (except on search) 2000-09-05 21:48:12 +00:00
Kurt Zeilenga
08b52f80bb Fix alias deref success v. NoSuchObject bug 2000-08-27 17:53:01 +00:00
Kurt Zeilenga
02f888c563 First cut of LDBM substrings indexing. Needs testing. 2000-08-22 21:26:25 +00:00
Kurt Zeilenga
85b3f80869 Plug leaks. 2000-08-15 21:57:40 +00:00
Kurt Zeilenga
20248e7430 Move delete of last value check out of inner loop. 2000-08-15 21:57:28 +00:00
Kurt Zeilenga
6be4f4fdb2 remove assert(0) 2000-08-07 17:19:55 +00:00
Kurt Zeilenga
5b856458a2 s/SAFEMEMCPY/AC_MEMCPY/
Use AC_FMEMCPY where appropriate (-llber)
2000-07-28 01:07:07 +00:00
Kurt Zeilenga
57deefc94f Working slapindex! 2000-07-26 19:48:02 +00:00
Kurt Zeilenga
b0a01cfbc2 ITS#636, keys == NULL bug
plus plug leak when keys != NULL
2000-07-25 01:24:47 +00:00
Kurt Zeilenga
33cb84f57c Add experimental reindexer. 2000-07-21 23:24:24 +00:00
Kurt Zeilenga
ce63e21f00 New slapindex framework (no meat) 2000-07-19 02:24:08 +00:00
Kurt Zeilenga
5fc22599e2 Update SASL code to reuse context through life of session.
Replace 'negotiated' with 'interactive' bind
Add hooks for SASL/EXTERNAL
Disable SASL security layers
Rework SASL command line and config file parameters
2000-07-13 22:54:38 +00:00
Mark Valence
11ccf96104 Updated attribute routine to pass back bervals. 2000-06-28 05:26:17 +00:00
Kurt Zeilenga
3112f21612 Add attribute type/matching rule support for structuralObjectClass attribute
type.  Add type to core.schema.  Not yet populated on add nor checked on modify.
2000-06-26 05:13:41 +00:00
Kurt Zeilenga
317d04a5d9 Modify backend_attribute to return bervals and adjust ACLs
(actually, ACL here might be dangerous)
2000-06-26 01:22:32 +00:00
Kurt Zeilenga
7ced460520 Update slurpd to use LDAPv3 w/ ManageDSAit
Remove slurpd kbind support as this requires LDAPv2
Backout back-ldbm/referrals.c update_ndn hack
2000-06-25 22:45:28 +00:00
Kurt Zeilenga
acb451a031 Return unwillingToPerform for step 2 kerberos bind. 2000-06-25 20:39:34 +00:00
Kurt Zeilenga
6020fe58e8 Modified slapd to be slurpd friendly.
Slurpd incorrectly sends a separate attribute for each value of an
	attribute which caused slapd to complain.  Hacked slapd/add.c
	to merge values.
	Slurpd uses version 2 and hence cannot set ManageDSAit.  Hack
	slapd/back-ldbm/referral.c such that if update_ndn matches
	o_ndn, no referrals are returned.
Fix replication tests
	ldapmodify must be made against master as no rebind proc exists
	final ldapsearch should not chase
Fix referral tests
	Use -C option as needed
2000-06-25 20:07:40 +00:00
Mark Valence
df460af05e Add attribute.c to project. 2000-06-23 20:24:13 +00:00
Mark Valence
3b7d356820 Added attribute.c 2000-06-21 17:46:15 +00:00
Mark Valence
51bd73ce7d New backend routine: back_attribute 2000-06-21 17:41:49 +00:00
Mark Valence
295f3ba0aa New backend routine: back_attribute 2000-06-21 17:23:24 +00:00
Kurt Zeilenga
9ef1a740c2 Round one of LDAP_F() macro changes. In this round we rename
macros into our namespace and limit use to headers.  A subsequent
round will add macros to separately handle forward declarations
of variables from declaration of function prototypes.  The last
round will add additional macros for declaring actual variables and
functions.
2000-06-18 19:48:07 +00:00
Kurt Zeilenga
4bfda48c20 Add referral.c 2000-06-17 20:38:07 +00:00
Kurt Zeilenga
189b738c63 Add LDBM referral handler... 2000-06-17 07:45:40 +00:00
Kurt Zeilenga
ef1664b013 Reimplement search_candidate support for scope, referrals, and aliases.
Uses auto/static storage to avoid unnecessary malloc/free calls.
2000-06-17 05:01:50 +00:00
Kurt Zeilenga
bfbe3e49ee Fix aliasing. 2000-06-17 02:00:30 +00:00
Kurt Zeilenga
152ec5c4ed Remove broken num subordinates code. 2000-06-17 01:22:55 +00:00
Kurt Zeilenga
a3414536a4 Add backend_check_referrals() framework. 2000-06-16 01:46:42 +00:00
Kurt Zeilenga
5ab454ac77 Minor adjustments to last commit 2000-06-15 22:53:18 +00:00
Kurt Zeilenga
90e4c08751 Add logic to properly (per X.500 recommendations) handle attribute
types without equality matching rules.
2000-06-15 22:06:45 +00:00
Mark Valence
93a622d5e1 Use the first empty slot in the open cache table, so scan doesn't (usu
ally) have to look through the entire table.
2000-06-15 17:48:16 +00:00
Kurt Zeilenga
1ae21d00f1 Fix alias dn_in v. dn bug 2000-06-15 17:37:02 +00:00
Kurt Zeilenga
f770dc16ab cond_*() routines: Pass pointer to Datum, not Datum. Probably
should be done for all of LDBM.
2000-06-14 23:48:13 +00:00
Kurt Zeilenga
4189b89d7a Forgot continuation key prefix 2000-06-14 23:28:52 +00:00
Mark Valence
ba044208a6 Bug fix. 2000-06-14 23:28:28 +00:00
Mark Valence
7694c22528 Fix OC check. 2000-06-14 22:21:53 +00:00
Mark Valence
89da861b89 Bug hunting -- various problems with opening caches. 2000-06-14 18:23:43 +00:00
Kurt Zeilenga
a56c161bdb Misc code cleanup. 2000-06-10 22:39:30 +00:00
Kurt Zeilenga
e5ebc553ac Rework URI parser to provide true scheme not proto/properties.
Plus more pthread rwlock code
2000-06-07 01:09:40 +00:00
Kurt Zeilenga
693fb9424a unifdef -DSLAPD_SCHEMA_NOT_COMPAT -USLAPD_SCHEMA_COMPAT 2000-06-06 19:43:18 +00:00
Kurt Zeilenga
dd00feb04d Add presense indexing 2000-06-06 19:32:15 +00:00
Kurt Zeilenga
6d542e26a5 remove init arg from attrs_index_config proto 2000-06-06 19:31:45 +00:00
Kurt Zeilenga
352b447aa4 Don't automatically index objectlclass eq, ineffective more than not 2000-06-06 19:30:49 +00:00
Kurt Zeilenga
43f3e1e9b2 Remove not to be implemented control. 2000-06-06 04:50:24 +00:00
Kurt Zeilenga
bf3c642e68 Complete group ACL impl. under new schema code 2000-06-06 02:11:27 +00:00
Kurt Zeilenga
5278e67b28 Remove lint 2000-06-06 02:11:01 +00:00
Kurt Zeilenga
4a1f646682 Move experimental Back-BDB2 to Attic 2000-06-06 01:23:17 +00:00
Mark Valence
08f8cecddc Fix broken non-schema build (var not defined). 2000-06-05 06:00:15 +00:00
Mark Valence
7401eddb02 Keep from ldbm_sync'ing a DBCache unless it has been changed. 2000-06-05 05:10:30 +00:00
Kurt Zeilenga
ea069cb7c2 New indexer/filter codes (test suite works) with cheats
Updated NT Project files (with Cyrus SASL library depend)
2000-06-04 22:59:38 +00:00
Kurt Zeilenga
4b352c57ed Raise MAXDBCACHE to 128. 2000-06-03 03:37:02 +00:00
Kurt Zeilenga
287de3517d SLAPD_SCHEMA_NOT_COMPAT: working tests 1-4! 2000-05-29 01:08:09 +00:00
Kurt Zeilenga
30c43c307c SLAPD_SCHEMA_NOT_COMPAT: working modify? need additional match
routines, such as distinguishedNameMatch, to be sure.
2000-05-28 23:51:39 +00:00
Kurt Zeilenga
13daacdbda Fix error text handling 2000-05-28 22:38:21 +00:00
Kurt Zeilenga
4d835c0532 modify ldbm_modify_internal to return error text 2000-05-28 20:44:08 +00:00
Kurt Zeilenga
7a97873274 SLAPD_SCHEMA_NOT_COMPAT: working test005-modrdn! 2000-05-28 19:54:07 +00:00
Kurt Zeilenga
9e9be9c283 SLAPD_SCHEMA_NOT_COMPAT: Mostly working modrdn 2000-05-28 17:26:30 +00:00
Kurt Zeilenga
439c0c796d SLAPD_SCHEMA_NOT_COMPAT: Mostly work modify 2000-05-28 16:36:34 +00:00
Kurt Zeilenga
5904e0013f SLAPD_SCHEMA_NOT_COMPAT: add missing AttributeDescriptions 2000-05-28 01:36:03 +00:00
Kurt Zeilenga
3d26427c02 SLAPD_SCHEMA_NOT_COMPAT: fix bind acls 2000-05-27 23:16:30 +00:00
Kurt Zeilenga
b813a5ba30 SLAPD_SCHEMA_NOT_COMPAT: prelim ACL work 2000-05-27 19:33:08 +00:00
Kurt Zeilenga
dab0793d0c Working test001 and test002. 2000-05-27 19:21:28 +00:00
Kurt Zeilenga
8dbd32687e SLAPD_SCHEMA_NOT_COMPAT: disable indexing 2000-05-27 06:23:25 +00:00
Kurt Zeilenga
5b13d847e1 Unneeded 2000-05-26 05:48:23 +00:00
Kurt Zeilenga
e0fc97bfa7 DB3 fixes 2000-05-26 05:47:02 +00:00
Kurt Zeilenga
522761dc17 SLAPD_SCHEMA_NOT_COMPAT: Fix misuse of attrs_find 2000-05-24 18:00:30 +00:00
Kurt Zeilenga
35a2912388 SLAPD_SCHEMA_NOT_COMPAT: fix add bug 2000-05-23 18:20:38 +00:00
Kurt Zeilenga
bf3a229423 SLAPD_SCHEMA_NOT_COMPAT: cleanup 2000-05-23 17:00:46 +00:00
Kurt Zeilenga
60802201e3 Const'ification
SASL mech removed from backend bind callback (as SASL is managed by frontend)
Changes to some backends are untested (as I don't have all dependent
  software install)
2000-05-22 03:46:57 +00:00
Kurt Zeilenga
b2f56a7318 SLAPD_SCHEMA_NOT_COMPAT: framework for value_match() and value_find() 2000-05-21 22:46:51 +00:00
Kurt Zeilenga
074be5fb5a SLAPD_SCHEMA_NOT_COMPAT: numerous changes to syntax flags, mostly minor
added new value_normalize() code
	need LDAPsyntaxes X- field support
2000-05-18 17:21:42 +00:00
Kurt Zeilenga
ae7d89fa1e SLAPD_SCHEMA_NOT_COMPAT addl. filter changes (a work in progress). 2000-05-15 00:41:29 +00:00
Kurt Zeilenga
4bc786f34b Y2k copyright update 2000-05-13 02:47:56 +00:00
Howard Chu
3d5553abc2 Removed XLDFLAGS, unnecessary for modules. 2000-05-11 09:33:34 +00:00
Howard Chu
dcad3d9569 Undo slapd/add.c rev 1.54; back-bdb2 and back-ldbm were the only backends
that called entry_free() on failure. This change would cause a memory leak
from all the other backends. Instead, remove the entry_free calls in these
two backends and let the frontend take care of it for everyone.
2000-05-10 16:36:46 +00:00
Kurt Zeilenga
dcc943e528 move default "directory" 2000-05-03 19:01:29 +00:00
Kurt Zeilenga
16937cb91d remove SASL bind call. Frontend code coming. 2000-04-25 13:10:31 +00:00
Kurt Zeilenga
3bad06d52b entry_schema_check() rename 2000-04-25 13:07:14 +00:00
Kurt Zeilenga
2dc6185a92 LDAP_OPERATIONS_ERROR -> LDAP_OTHER
and other misc changes
2000-04-25 13:06:22 +00:00
Kurt Zeilenga
ebfb0b8261 Move presence index change outside of values for loop. 2000-03-20 23:38:38 +00:00
Kurt Zeilenga
abbd5ec2fa fix up comment 2000-03-17 22:57:49 +00:00
Kurt Zeilenga
3e5c381d3a Need SOFTADD fix for previous fix 2000-03-17 18:31:40 +00:00
Kurt Zeilenga
d1803fce0a Fix multivalued indices. Need to add indices of remaining
values after delete of any value.
2000-03-17 18:22:16 +00:00
Kurt Zeilenga
28c6217a12 s/userPassword/password/ (variable name) 2000-03-17 02:06:50 +00:00
Kurt Zeilenga
4710c74605 Rework error handling. Add error descriptions.
Don't use LDAP_OPERATIONS_ERROR for internal errors.  Use LDAP_OTHER
instead.  (more changes needed in this area)
2000-03-03 22:37:06 +00:00
Kurt Zeilenga
5681a79d96 StartTLS now grabs conn->c_mutex before mucking with connection.
Add comment concerning sequencing issues which need to be resolved
by reworking of connection state machine.  Add note that a race
condition exists until this rework is complete.
Rework extended operations to return pointer to static error text.
2000-03-02 20:36:53 +00:00
Kurt Zeilenga
ac7f6c2e37 Replace do_*() return -1 with return SLAPD_DISCONNECT.
Only return SLAPD_DISCONNECT with a send_ldap_disconnect()
was called.
Add initial code for support predetermined filter results
when filter is undefined (or known to be true or false).
2000-02-29 23:48:01 +00:00
Kurt Zeilenga
4091381660 Yet another round of SLAPD_SCHEMA_NOT_COMPAT changes, including:
limited subtype support, modlist handling, filter updates,
lastmod attribute handling.
2000-02-28 21:16:05 +00:00
Kurt Zeilenga
ceb6412e62 More -DSLAPD_SCHEMA_NOT_COMPAT changes
Not hidden: "<anonymous>" modifiersname
2000-02-15 18:57:07 +00:00
Kurt Zeilenga
0dbaf87730 Another round of changes behind -DSLAPD_SCHEMA_NOT_COMPAT
plus these changes unhidden changes:
	remove now meaning --enable-discreteaci configure option
	fix ITS#451, slapd filters
	Add ber_bvecadd() to support above
	constify ldap_pvt_find_wildcard() and misc slapd routines
	renamed some slap.h macros
	likely broken something
2000-02-14 20:57:34 +00:00
Kurt Zeilenga
36b0423311 Add Modification/Modifications structures for -DSLAPD_SCHEMA_NOT_COMPAT 2000-02-07 20:37:10 +00:00
Kurt Zeilenga
bc51bd5180 Yet another round of SLAPD_SCHEMA_NOT_COMPAT changes...
Changes outside of #ifdef include three value filter processing.
2000-02-06 21:09:44 +00:00
Kurt Zeilenga
f9195f9b6f Another round of SLAPD_SCHEMA_NOT_COMPAT changes including
basic structures for handing language tags and binary option
(but less actual code to actually support them).  Provided
for reference only.  Will not even compile.
2000-02-05 05:01:41 +00:00
Kurt Zeilenga
86cedc6ac7 ITS#439: Fix logic error 2000-02-04 17:49:32 +00:00
Kurt Zeilenga
3a6e906194 Replace -DSLAPD_SCHEMA_COMPAT with -USLAPD_SCHEMA_NOT_COMPAT 2000-01-31 22:14:16 +00:00
Kurt Zeilenga
d298e35514 Add SLAP_SYNTAX_BINARY flag to indicate binary storage is used for
attributes of the syntax.  Such attribute values be transferred
using binary syntax unless ber2str/str2ber routines are provided.
Used in conjunction with ";binary" attribute description option
and/or the Binary syntax.
2000-01-31 01:49:44 +00:00
Kurt Zeilenga
ad262b3ac6 Fix minor problems with proceeding commit which broken old schema compat 2000-01-28 21:20:28 +00:00
Kurt Zeilenga
ce56fbcba8 Remove ai_syntaxinfo (syntax) from AttrInfo. Call attr_syntax() directly. 2000-01-28 21:10:34 +00:00
Kurt Zeilenga
cca2bdcb40 Move INDEX_ macros from back-ldbm.h to slap.h and prefix with SLAP_
Move AttrInfo from back-ldbm.h to attr.c
2000-01-28 20:38:00 +00:00
Kurt Zeilenga
17f1024ad5 Fix -DSLAPD_SCHEMA_NOT_COMPAT syntax error in last commit 2000-01-28 20:10:25 +00:00
Kurt Zeilenga
c5da0c76ce Additional changes to migrate to new schema codes
Still not usable.
2000-01-28 20:01:00 +00:00
Kurt Zeilenga
51190984ee place old schema codes behind -DSLAPD_SCHEMA_COMPAT 2000-01-28 01:17:58 +00:00
Kurt Zeilenga
9fec129997 Second round of schema changes
Revert normalization to matching rule per discussions with Julio.
May need separate normalization routines for stored value and asserted
value. Currently rely on passed in syntax/mr to allow "special" behavior.
Reworked filters to pass struct berval * instead of char *. (needs work)
Validation, normalization and matching needed.
2000-01-25 21:13:31 +00:00
Kurt Zeilenga
6437785a82 Initial implementation of Kerberos password verification for
simple bind via:
	{KERBEROS}principal
Code is disabled by default (for security reasons).  Use
--enable-kpasswd to enable.  Behind SLAPD_KPASSWD.
Reworked Kerberos detection and split out KBIND as independent
feature (--disable-kbind) (LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND).
KBIND depends upon detection of KRB4 (or KRB425) support.  Detection,
building with eBones (as distributed with FreeBSD 3.4) okay, but
wasn't able to test as I don't have a K4 KDC handy.
--with-kerberos has a number of detection options... most likely
don't work properly.
2000-01-08 18:42:11 +00:00
Luke Howard
a1ccf169da Filled in Cyrus SASL authz/storage callbacks for all backends
(callbacks not yet implemented though).
2000-01-02 05:42:14 +00:00
Luke Howard
9b4e3b2234 Merged in preliminary support for Cyrus SASL library;
support for DCE slash-delimited, left-to-right DNs;
support for a domain socket transport (enable with
--enable-ldapi); and extensions to URL parsing to
support the latter transport.
2000-01-02 01:21:25 +00:00
Kurt Zeilenga
da93ca8c5e Remove DNS_DN experimental code. 1999-12-18 19:54:22 +00:00
Howard Chu
0fa6f1df1e Tentative fix for ITS #402. (Not tested yet.) If successful, this patch
should also be applied to back-bdb2/idl.c.
1999-12-17 10:04:31 +00:00
Kurt Zeilenga
6253e7c278 Updated sasl response to support returning of referrals.
Updates to extended operation framework to support arbitrary
referrals and extended results without OIDs.
Updated passwd extended operation to support returning update_refs
as needed.  Needs replog support.
1999-12-15 23:22:47 +00:00
Kurt Zeilenga
b1639dadd6 Remove lint
Add copyrights
1999-12-13 04:53:59 +00:00
Kurt Zeilenga
3eef87beeb Stop reducing number of substring candiadates when there is only two or
less left.  Based upon suggestion made by bert hubert <ahu@casema.net>
1999-12-12 19:59:05 +00:00
Kurt Zeilenga
01ab716e8a ITS#394: index presence bug fix 1999-12-10 18:07:24 +00:00
Kurt Zeilenga
431dad371c Fix slapd SASL/ExternalOps encoding
Add controls to extended ops API signatures, need impl.
Update password to support optional server side generation of
new password, verification of old password, and changing of
non-bound user's passwords.
1999-12-10 04:52:32 +00:00
Kurt Zeilenga
354d0d5b50 Modify password code such that backend end routine calls into
frontend to complete parsing of extended op reqdata.
Modify password extended operation to allow optional id (DN)
entry to change (not tested).  Also, provide room to allow
server side password generation (not implemented).  Added optional old
password field to support proxying (not implemented).
Need to implement replog() support.
1999-12-09 21:30:32 +00:00
Kurt Zeilenga
26c7d69e8c Update for new password codes for MSVC5 1999-12-08 06:44:22 +00:00
Kurt Zeilenga
d5edb4bff6 Reengineered ldappasswd(1). Uses extended operation to set
user password.  Likely to be modified to use bind control
instead.  Use of modify deprecated in favor mechanisms that
support passwords stored externally to the directory (such
as in a SASL service).
Modified slapd extended operation infrastructure to support
backend provided extended operations.
1999-12-08 04:37:59 +00:00
Kurt Zeilenga
831bfa760e reduce slap_passwd_check to simple form 1999-12-06 21:42:10 +00:00
Kurt Zeilenga
10649f5601 adjust to kerberos/passwd rearrangements. 1999-11-24 00:49:02 +00:00
Kurt Zeilenga
42bb3e2e85 Move userPassord and krbName authentication routines to the frontend. 1999-11-23 19:00:09 +00:00
Kurt Zeilenga
c49ee66b78 Plug memory leak. 1999-11-21 23:20:25 +00:00
Kurt Zeilenga
bbeec83869 ITS#357 (cont): Don't crash on at_cn == NULL. 1999-11-17 22:53:54 +00:00
Kurt Zeilenga
8032f5885d ITS#357: at_cn == NULL causes crash 1999-11-17 22:43:07 +00:00
Kurt Zeilenga
6f497089f5 Do not maintain a presence search on 'objectclass' as all entries
*should* have an 'objectclass' attribute present.
1999-11-02 23:13:40 +00:00
Howard Chu
bacc581531 Removed explicit include of <ac/param.h> because it must be included
after <stdlib.h>, but <stdlib.h> is included in slap.h. Moved <ac/param.h>
include into slap.h.
1999-11-02 19:39:56 +00:00
Kurt Zeilenga
14f107e9ed Changes to support NT single debug 1999-11-01 22:17:06 +00:00
Kurt Zeilenga
b7af076fee Use centralized output directories.
Update single debug/release not to use service manager nor event manager.
Likely breaks MINGW32 port.
1999-11-01 21:25:22 +00:00
Howard Chu
0db4dcecb0 Specifies the symbols that slapd must export, for Mingw32 support
See README 1.27 log
1999-10-28 07:20:07 +00:00
Howard Chu
8efb675f3e Added numsubordinates operational attribute 1999-10-28 07:09:30 +00:00
Kurt Zeilenga
3fbee54fa5 Remove lint 1999-10-27 04:40:56 +00:00
Kurt Zeilenga
f6829ee903 Initial commit of new ACL engine. Engine supports descrete access
privs, additive/substractive rules, and rule continuation.  Existing
rules that use 'defaultaccess none' should be 100% compatible.  Rules
that rely other defaultaccess settings will require addition of
explicit clauses granting the access.
Needs additional testing and tuning of logs
1999-10-21 17:53:56 +00:00
Kurt Zeilenga
5c876f85e6 bind should not return noSuchObject 1999-09-24 02:19:31 +00:00
Kurt Zeilenga
7a0b0b2bbf In preparation for adding dn_rewrite()...
s/dn_normalize/dn_validate/
s/dn_normalize_case/dn_normalize/
1999-09-24 01:46:37 +00:00