Commit Graph

58 Commits

Author SHA1 Message Date
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
e8ac75d22f Fix up some locking 2001-06-07 16:24:46 +00:00
Kurt Zeilenga
d773c7178f Fix typos in last commit 2001-06-07 16:15:25 +00:00
Kurt Zeilenga
486ad59260 Add a DB version check. 2001-06-07 16:11:59 +00:00
Kurt Zeilenga
fcf71ea34f clean up LDBM_{,UN}LOCK macros 2001-05-31 20:11:40 +00:00
Kurt Zeilenga
b6892b4493 big mutex needs #ifdef HAVE_BERKELEY_DB_THREAD wrapper 2001-05-28 20:16:21 +00:00
Kurt Zeilenga
94e1d48032 Misc adjustments to CBM tests 2001-05-28 20:00:17 +00:00
Kurt Zeilenga
4b8eae427f Initial CDB implementation. 2001-05-28 19:43:11 +00:00
Kurt Zeilenga
c6d9373d03 Enable ldbm_big_mutex for Berkeley DB 2/3 per comments from Sleepycat.
Can be disabled if and we implement DB_INIT_CDB + DB_INIT_MPOOL +
DB_CDB_ALLDB.
2001-05-28 19:11:29 +00:00
Kurt Zeilenga
588a518bff Don't set_cachesize for db3 2001-05-18 00:55:09 +00:00
Kurt Zeilenga
3ddb829076 change bdb errpfx 2000-09-20 00:27:47 +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
83af225383 Set DB_PRIVATE 2000-09-11 17:49:25 +00:00
Kurt Zeilenga
063691aec0 Add support for Sleepycat Berkeley DB 3.1 (ITS#649)
changes derived from Ian Logan's patch
2000-08-07 19:46:37 +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
4f4f59f333 Rework <ac/errno.h> to provide a STRERROR. Prefers errlist over
strerror() as strerror() may not be thread safe.  Likely should
be used by SLAPD.
2000-07-06 01:24:52 +00:00
Kurt Zeilenga
a56c161bdb Misc code cleanup. 2000-06-10 22:39:30 +00:00
Kurt Zeilenga
e0fc97bfa7 DB3 fixes 2000-05-26 05:47:02 +00:00
Gary Williams
780d4737af use HAVE_BERKELEY_DB and check DB_VERSION_MAJOR for differences 2000-05-25 20:41:55 +00:00
Gary Williams
862e624254 Added support for Berkeley DB3. Hidden behind
HAVE_BERKELEY_DB3.  Configuration support
hopefully coming soon.
2000-05-25 15:21:30 +00:00
Kurt Zeilenga
29d9fa20a2 Y2k copyright update 2000-05-13 02:36:07 +00:00
Kurt Zeilenga
6968ede534 ITS#450: teach LDBM/GDBM about cursors 2000-02-11 02:05:14 +00:00
Kurt Zeilenga
6b0ccd4a5d Add experimental detection of BerkeleyDB2 DB_THREAD.
If not available, LDBM uses big mutex and BDB2 is disabled.
Should add BerkeleyDB version detection...
1999-09-20 20:55:54 +00:00
Kurt Zeilenga
403f4479bc Add OpenLDAP RCSid to *.[ch] in clients, libraries, and servers.
Replace old Id as needed (back-tcl).
Leave updating of contribWare to contributors (for now).
1999-09-08 19:06:24 +00:00
Kurt Zeilenga
324903affa s/int/u_int32_t/ for db_appinit flags 1999-09-06 18:45:39 +00:00
Kurt Zeilenga
406f33eb12 This fixes dn2id delete bug... but breaks modrdn. 1999-08-26 00:48:24 +00:00
Kurt Zeilenga
e4f6d54877 New dn2id format with base/one/subtree indices (ldbm/bdb2)
New id2entry (id-less) format (ldbm/bdb2)
Removed id2children (ldbm/bdb2)
Added nextid database (ldbm)
Broke ldbmtest
Removed ldif2* tools (ldbm/bdb2)
Added slap tools (slapadd, slapcat, slapindex)
1999-08-17 19:00:59 +00:00
Kurt Zeilenga
dce3f6e5bc Add copyright notices 1999-08-04 23:57:27 +00:00
Juan Gomez
34f068f131 Drop support for alloca(). 1999-06-11 18:56:28 +00:00
Kurt Zeilenga
21c70857f1 s/<stdlib.h>/<ac/stdlib.h>/ 1999-06-03 00:37:44 +00:00
Kurt Zeilenga
4b832f1d35 Do not set db_cachesize under BerkeleyDB 2.4. 1999-05-24 21:21:09 +00:00
Kurt Zeilenga
f01a7dad53 s/HAVE_SYSLOG/LDAP_SYSLOG/g
Use <ac/syslog.h>
1999-05-19 01:58:23 +00:00
Kurt Zeilenga
df616d76ce Replace #ifndef WIN32 with #ifdef HAVE_SYSLOG 1999-05-19 01:54:33 +00:00
Kurt Zeilenga
dc07e765f2 Vienna Bulk Commit
This commit includes many changes.  All changes compile under NT but
have not been tested under UNIX.

A Summary of changes (likely incomplete):

NT changes:
	Removed lint.
	Clean up configuration support for "Debug", "Release", "SDebug",
		and "SRelease" configurations.
	Share output directories for clients, libraries,
		and slapd.  (maybe they should be combined further
		and moved to build/{,S}{Debug,Release}).
	Enable threading when _MT is defined.
	Enable debuging when _DEBUG is defined.
	Disable setting of NDEBUG under Release/SRelease.  Asserts
		are disabled in <ac/assert.h> when LDAP_DEBUG is not
		defined.
	Added 'build/main.dsp' Master project.
	Removed non-slapd projects from slapd.dsp (see main.dsp).
	Removed replaced many uses of _WIN32 macro with feature based
		macros.

ldap_cdefs.h changes
	#define LDAP_CONST const
		(see below)
	#define LDAP_F(type) LDAP_F_PRE type LDAP_F_POST
		To allow specifiers to be added before and after
		the type declaration.  (For DLL handling)

LBER/LDAP changes
	Namespace changes:
		s/lber_/ber_/ for here and there.
		s/NAME_ERROR/LDAP_NAME_ERROR/g
	Deleted NULLMSG and other NULL* macros for namespace reasons.
	"const" libraries.  Installed headers (ie: lber.h, ldap.h)
		use LDAP_CONST macro.  Normally set to 'const' when
		__STDC__.  Can be set externally to enable/disable
		'constification' of external interface.  Internal
		interface always uses 'const'.  Did not fix warnings
		in -lldif (in lieu of new LDIF parser).

	Added _ext API implementations (excepting search and bind).
		Need to implement ldap_int_get_controls() for reponses
		with controls.

	Added numberous assert() checks.

LDAP_R
	_MT defines HAVE_NT_THREADS
	Added numberous assert() checks.
	Changed ldap_pthread_t back to unsigned long.  Used cast
	to HANDLE in _join().

LDBM
	Replaced _WIN32 with HAVE_SYSLOG

ud
	Added version string if MKVERSION is not defined.  (MKVERSION
		needs to be set under UNIX).

slapd
	Made connection sockbuf field a pointer to a sockbuf.  This
		removed slap.h dependency on lber-int.h.  lber-int.h now only
		included by those files needing to mess with the sockbuf.
	Used ber_* functions/macros to access sockbuf internals whenever
		possible.
	Added version string if MKVERSION is not defined.  (MKVERSION
		needs to be set under UNIX).
	Removed FD_SET unsigned lint

slapd/tools
	Used EXEEXT to added ".exe" to routines.  Need to define EXEEXT
		under UNIX.

ldappasswd
	Added ldappasswd.dsp.  Ported to NT.  Used getpid() to seed rand().

nt_debug
	Minor cleanup.  Added "portable.h" include and used <ac/*.h> where
	appropriate.  Added const to char* format argument.
1999-05-19 01:12:33 +00:00
Julio Sánchez Fernández
bb7a0b816e Move declaration of st 1999-04-19 17:56:48 +00:00
Kurt Zeilenga
2813272234 Wrap stat() st_blksize use behind HAVE_ST_BLKSIZE 1999-04-17 03:28:20 +00:00
Gary Williams
b454005ea8 NT port 1999-04-01 16:06:08 +00:00
Juan Gomez
01d9ac9168 MDBM Support added. 1999-03-30 04:39:08 +00:00
Kurt Spanier
80400aba52 Fix ldbmcat crash problem: first use the key before deleting it! 1999-03-29 16:01:59 +00:00
Hallvard Furuseth
c35f2086d8 Fix typo .size -> .dsize in ldbm_datum_free() 1999-03-06 04:25:50 +00:00
Ben Collins
caddcf8600 Moved 'key.flags = 0;' inside of DB2 defines, it isn't available in DB1 1999-03-06 04:15:18 +00:00
Kurt Spanier
6da27229d9 1. Fix of ldbmcat segmentation fault bug (ITS#85 and #81).
2. Make ldbm_Env a failure-safe entity.
1999-03-05 11:24:42 +00:00
Kurt Zeilenga
a8a05cbe48 Update NT port with support for -lldap_r and -lldbm.
Also add initial slapd .dsw/.dsp files.  Still needs work (mainly syslog).
1999-03-01 22:37:05 +00:00
Kurt Spanier
42f6e78dd4 Integration of the BDB2 backend into the new init/startup/shutdown schema.
Integration into ./configure ( --enable-bdb2 ).
Adaptation of the test-suite ( 'make' -> ldbm; 'make bdb2-local' -> bdb2 ).
Minor fixes in slapd/libldbm.
1999-02-08 11:42:14 +00:00
Kurt Zeilenga
216049bd12 New Frontend->Backend Interface
Separates per backend type from per backend database initialization
	and startup.  Also supports per type / per backend shutdown.
New frontend startup/shutdown routines are also provided:
	slap_init() slap_startup() slap_shutdown() slap_destroy()
New frontend->backend startup/shutdown is managed by:
	backend_init() backend_startup() backend_shutdown backend_destroy
backend_init() now calls bi_init() to initial all function pointers
for the backend (excepting bi_init() which is now the only hardcoded
entry point).  New entry points are detailed in slap.h struct
backend_info.  backend_info is a per database type structure.
Besides the new startup/shutdown entry points, the new interface
also supports per backend type configuration options.  One could have:

	backend bdb2	(new Berkeley DB 2 backend)
	bdb2_home	/directory

	database bdb2
	...

	*** This code is fairly experimental ***
	*** Much cleanup and testing is still needed ***

see slap.h for details on struct backend_db and backend_info.
1999-02-05 09:03:47 +00:00
Kurt Zeilenga
463b64a94c Backout recent init/startup changes in preparation for new
frontend-backend interface.
Includes a number changes to share common routines between
database api types.
1999-02-04 17:41:19 +00:00
Kurt Zeilenga
a68daccf16 Fix DB_ENV typo. 1999-02-04 05:14:38 +00:00
Kurt Zeilenga
bbc2dfa105 gdbm_nextkey() takes two arguments not one. 1999-02-02 20:36:10 +00:00
Kurt Spanier
314f3f6ed7 Introduction of a backend startup/shutdown function to make backend-specific
initialization after reading slapd.conf, and before starting the daemon
1999-02-01 17:37:43 +00:00
Kurt Zeilenga
72ba4cfb71 Use -lldap_r instead of -lldap -lthread.
Likely broke things for non-posix threadings....

Update -lldap_r implementation to:
	remove attribute support
	hide thread detachment
	provide concurrency accessors
	provide initialization function
	fix gethostby{addr,name}_r codes (not coverred by HAVE_REENTRANT_FUNCTIONS)
Update servers/libraries to use ldap_pvt_thread_ calls.
Cleanup server codes (no #ifdef HAVE_PTHREAD_THIS or _THATs)!
Removed -llthread
1999-01-28 04:34:55 +00:00