Hallvard Furuseth
984bdfa605
Remove unused variables
1999-03-06 06:33:34 +00:00
Kurt Zeilenga
588a458d78
MSVC5 cleanup...
...
lber: ifdef'ed out lber_..set_nonblock() function because it used ioctl's.
If it remains, it needs to be written to support various methods for
setting non-blocking. ioctls should probably be last choice. configure
could detect existance of fcntl(), ioctl(), etc.
bdb2:
added .dsp/.dsw files and did some basic cleanup (still needs work).
1999-03-06 00:57:25 +00:00
Juan Gomez
654f21b237
Implemented newSuperior handling.
1999-03-05 19:14:23 +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 Spanier
3f76ee7a0b
Make dbEnv a private toy of back-bdb2.
1999-03-05 10:25:55 +00:00
Juan Gomez
3ba99a75ef
Added parameter newSuperior in preparation to support
...
LDAP v3 MODDN request.
1999-03-05 03:38:12 +00:00
Juan Gomez
07a5f765bb
Added parsing of newSuperior field for requests that
...
carry it. This in preparation to support LDAP v3 MODDN
request.
1999-03-05 03:37:49 +00:00
Juan Gomez
9fc5e8a409
Rename
...
int add_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int delete_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int replace_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
to
int bdb2i_add_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int bdb2i_delete_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int bdb2i_replace_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
So that ldbm and db2 backends can coexist.
1999-03-05 01:33:32 +00:00
Juan Gomez
b41a79fe16
Renamed
...
int add_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int delete_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int replace_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
to
int bdb2i_add_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int bdb2i_delete_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
int bdb2i_replace_values LDAP_P(( Entry *e, LDAPMod *mod, char *dn ));
So that ldbm and db2 backend can coexist
1999-03-05 01:28:38 +00:00
Hallvard Furuseth
47093d0617
Protoize cnvt_str2int()
1999-03-04 13:51:14 +00:00
Hallvard Furuseth
94c6048f2f
Print entry ID with format %ld, not %d
1999-03-04 13:18:49 +00:00
Hallvard Furuseth
536aab01e4
Print tag with format %lu, not %d
1999-03-04 13:17:28 +00:00
Hallvard Furuseth
6f8c9a7890
Use HAVE_STDARG to choose between stdarg and varargs version of debug_printf.
1999-03-04 12:58:56 +00:00
Juan Gomez
34861cd15b
Added prototypes for rdn_attr_type() and rdn_attr_value(), which are
...
utility functions added to support the modrdn v3 implementation.
These parse and rdn of the form "attribute_type = attribute_value"
returning "attribute_type" and "attribute_value" respectively.
1999-03-04 00:35:45 +00:00
Juan Gomez
943cfaf41a
Added get_next_substring(), rdn_attr_type(), and rdn_attr_value() which
...
are needed in the implementation of modrdn v3.
1999-03-04 00:31:19 +00:00
Juan Gomez
68a413a601
Made add_values(), delete_values(), and replace_values() so they can be
...
used in implementing modrdn v3.
1999-03-03 22:55:28 +00:00
Juan Gomez
ddf04f5900
Made add_values(), delete_values(), and replace_values() so they can be
...
used in implementing modrdn v3.
1999-03-03 22:00:16 +00:00
Juan Gomez
98c2a61313
Made add_values(), delete_values(), replace_values() so they can be used
...
for implementing modrdn v3.
1999-03-03 21:58:51 +00:00
Hallvard Furuseth
3250aef49c
function pointers are incompatible with `void *'; remove NULL or replace with 0
1999-03-03 18:49:59 +00:00
Hallvard Furuseth
42fdd3766f
replace integer argument NULL with 0
1999-03-03 17:35:33 +00:00
Hallvard Furuseth
69a93a0582
function pointers are incompatible with `void *'; remove NULL or replace with 0
1999-03-03 17:02:10 +00:00
Kurt Zeilenga
aa38035780
Add protect against new connection descriptor being to large for
...
our connection table.
1999-03-02 21:06:42 +00:00
Kurt Zeilenga
fdc44bf313
Apply ldbm bind() change to bdb2 code.
1999-03-02 20:42:29 +00:00
Bart Hartgers
8153a4039b
The new&improved Sockbuf. This adds the infrastructure on which
...
support for TLS and SASL will be build.
Please inform me of any problems.
1999-03-02 20:23:14 +00:00
Bart Hartgers
e0fdd89432
Annoying little son of a `free' BUG fixed.
1999-03-02 20:14:11 +00:00
Kurt Zeilenga
4e160e83b6
Replace IFP() with appropriate full prototypes:
...
AVL_CMP, AVL_DUP, AVL_FREE, AVL_APPLY.
Apply casts as needed.
Change data pointer from caddr_t to void *.
1999-03-02 00:32:59 +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 Zeilenga
3984323bf9
Fix minor memory leak and remove redundant be_isroot_pw() checks.
...
Suggested by Pierangelo Masarati <pmasarati@bci.it> in post to -bugs.
1999-03-01 19:42:06 +00:00
Kurt Spanier
5d2699b7ce
Introduction of first version of transaction processing (TP) into BDB2.
1999-03-01 11:30:18 +00:00
Ben Collins
945f8e10a0
Added verclean-local-srv since veryclean was not being run in the back-* and related directories
1999-02-28 17:07:47 +00:00
Ben Collins
b14d7b35ed
Changed general debug levels too LDAP_DEBUG_SHELL
1999-02-28 05:55:48 +00:00
Hallvard Furuseth
1d8ae81a06
Fix previous change to strtok_quote
1999-02-23 15:48:47 +00:00
Hallvard Furuseth
6b40ed4882
Make strtok_quote treat the character following \ as a normal character.
1999-02-23 15:40:18 +00:00
Ben Collins
b0250a119f
Changed LDA_DEBUG_ statements to more appropriate ones
1999-02-23 03:51:33 +00:00
Hallvard Furuseth
79f7c85067
Add locale support (slapd.conf keyword "locale") to slapd if HAVE_LOCALE_H
1999-02-22 21:01:24 +00:00
Hallvard Furuseth
73db912500
Cast char' arguments to ctype.h functions to unsigned char'.
...
These functions require their arguments to be in the range of `unsigned char'.
1999-02-22 17:57:22 +00:00
Kurt Spanier
9cb23b462e
More timing for performance testing. Re-introduction of cache.c_mutex.
1999-02-22 11:22:44 +00:00
Kurt Zeilenga
aa17fdd0bd
Use ldap_pvt_strtok directly and unconditionally.
...
Implementation no longer uses strtok_r(), it may be broken
or have an odd prototype.
Update configure not to check for strtok/strtok_r nor require
strtok_r to LDAP_API_FEATURE_X_OPENLDAP_REENTRANT.
1999-02-20 20:12:03 +00:00
Hallvard Furuseth
0fe0efeeac
wrap bi_acl_group in #ifdef SLAPD_ACLGROUPS
1999-02-20 08:53:48 +00:00
Hallvard Furuseth
1fda8f9382
read_config() did not return a value
1999-02-20 08:18:07 +00:00
Ben Collins
809c6570e4
Converted strdup()'s to ch_strdup()
1999-02-19 07:55:20 +00:00
Kurt Spanier
3a9f96ec0d
Code clean-up.
1999-02-18 15:33:15 +00:00
Ben Collins
8667671d17
* Removed uneeded cvs keywords
...
* Fixed unfree'd 'char *results' in all tcl_* functions (only unfree'd in
certain cases, moved the free to the actual function) so no more mem
leaks. Tested this with over 500,000 access's for testing :)
* Miscellaneous source style and tabulation fixes
1999-02-18 02:18:39 +00:00
Kurt Spanier
ac4cb22f1c
Elimination of entry- and cache-level locking in back-bdb2.
...
Slight adaption of concurrency-test to enable even more writers/readers.
1999-02-17 11:13:22 +00:00
Ben Collins
a3c9bec0c5
Missing file
1999-02-17 02:23:18 +00:00
Ben Collins
6b09ba64d0
Style changes, added cvs keywords
1999-02-17 02:05:28 +00:00
Ben Collins
d2d5748580
Updated some items
1999-02-17 02:04:54 +00:00
Ben Collins
197e77ea8d
Completed open/close/destroy implementations
1999-02-17 02:02:11 +00:00
Ben Collins
749404b83f
Implemented the open, init functions correctly
1999-02-17 01:55:54 +00:00
Ben Collins
8c3f485d8b
Implemented all of the (db_)destroy and (db_)close functions
1999-02-17 01:55:03 +00:00
Ben Collins
78a5ebe216
Moved tcl_back_db_open() and interpreter init to tcl_init.c
1999-02-17 01:53:59 +00:00
Ben Collins
1d1e8f75b6
Added return()
1999-02-17 00:32:49 +00:00
Ben Collins
86e1568752
fixed exit()'s to be return()'s
1999-02-17 00:30:36 +00:00
Ben Collins
8a2839b672
keyword update
1999-02-17 00:26:05 +00:00
Ben Collins
24697ea2fc
$Id update
1999-02-17 00:24:40 +00:00
Kurt Zeilenga
c2b7c9e2db
Add ac/errno.h and use other generic headers when available.
1999-02-16 18:07:19 +00:00
Kurt Spanier
39f0066db4
Addition of a new Concurrency Test fro testing slapd performance and
...
correctness of locking schemas in backends.
In back-bdb2 open NEXTID during startup and close at shutdown.
1999-02-15 10:49:20 +00:00
Kurt Zeilenga
a71f328831
Import Ben Collins <bcollins@debian.org> Back-TCL for SLAPD.
1999-02-14 19:20:14 +00:00
Kurt Spanier
548942edbe
BugFix and selection in the test-suite of the bdb2 backend-specific
...
slapd server timing via a new slapd command line option '-t'.
1999-02-12 15:22:43 +00:00
Kurt Spanier
2cf83d84ee
Server timing as a private feature of the bdb2 backend.
1999-02-12 14:36:16 +00:00
Kurt Spanier
6e63b58a3e
Update of back-bdb2 to KDZ's new entry lock schema.
...
Fix of a back-bdb2 --> back-ldbm leakage (==> new bdb2-specific DB file suffix).
1999-02-12 12:13:03 +00:00
Kurt Zeilenga
75ee1d8393
Update tools to print ID's using "%ld" instead of "%lu".
1999-02-11 21:26:57 +00:00
Kurt Zeilenga
2a20131eaa
Consistently use %ld for printing IDs. %lu was used in many cases.
...
I rather have NOID printed as "-1". It it could argued that ID
should be signed.
1999-02-11 18:19:52 +00:00
Kurt Zeilenga
c2c0d9687f
Complete entry_cmp() migration (remove rename macros).
1999-02-11 17:52:28 +00:00
Kurt Zeilenga
745a10f080
Update LDBM cache so that it manages it's own state.
...
cache_set_state() and state args are no history.
Move cache_entry_cmp() and friends to slapd/entry.c to allow sharing
of functions between backends.. Renamed to entry_cmp().
1999-02-11 17:46:56 +00:00
Kurt Zeilenga
88c43a1e6e
Move LDBM-backend specific fields of Entry struct into a private struct.
...
The new e_private field can be used for any backend purpose. In LDBM,
it's used to point th the private entry info struct. The LDBM entry
info struct is only visible to the LDBM cache.
WARNING: This change has not be ported to other backends! Breakage is likely.
1999-02-10 18:28:25 +00:00
Kurt Spanier
529caeddd0
Elimination of un-used code in bdb2i_cache_open and friends.
...
Provision for a bdb2 backend-specific DB file suffix.
Fix of the double-open of backend types.
1999-02-10 13:19:11 +00:00
Kurt Zeilenga
191752c9a7
Fix modrdn bug in back-bdb2 as well. Probably should move
...
dn rewriting to frontend dn.c function.
1999-02-09 18:07:01 +00:00
Kurt Zeilenga
fc022ed0d4
Patch modrdn to remove extra space.
1999-02-09 17:58:13 +00:00
Kurt Zeilenga
eb8dcb6e21
Add a field to count the number of databases per type (bi_nDB) to
...
the backend type info structure. Use this filed to control open
and close such that backend's without databases are skipped.
1999-02-09 17:41:56 +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
36a06168c5
Fix backend_destroy to call bi_destroy instead of bi_close
1999-02-07 18:24:05 +00:00
Kurt Zeilenga
587535a310
Really fix those reader/writer lock asserts...
1999-02-07 17:57:50 +00:00
Kurt Zeilenga
7eaae29f6f
Fix cache asserts on entry writer locks.
1999-02-07 02:50:10 +00:00
Kurt Zeilenga
e6e28362a1
Move SIGNAL() calls to main so that any thread can accept async
...
signals aimed at the process.
1999-02-06 16:00:00 +00:00
Kurt Zeilenga
7f804b5c1b
Fix no backend type case in backend_init.
1999-02-06 15:56:14 +00:00
Kurt Zeilenga
dde7e3dfa6
Don't call idl_free() unless necessary.
1999-02-05 23:46:03 +00:00
Kurt Zeilenga
63f5ec8f8b
remove ;; typo
1999-02-05 17:39:38 +00:00
Kurt Spanier
d92b9d3c9e
Introduction of a new Berkeley DB version 2 (!) specific backend.
...
BEWARE: the backend will be compiled.
the backend will NOT be invoked, yet.
the backend CANNOT be invoked, yet, because it is NOT yet
integrated into the new initialization/startup environment
of the slapd server.
1999-02-05 16:23:03 +00:00
Kurt Spanier
8107ec91f0
Fix braindead signal handling in linux kernal threads.
...
First version with waiting on int to become 0; should be implemented
via conditional variable...
Fix of typos.
First anchor for new bdb2 backend.
1999-02-05 13:20:57 +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
2b8970a324
Fix forkandexec() prototype.
1999-02-04 19:01:21 +00:00
Will Ballantyne
44c5c21078
additional checks around derefAlias_r call:
...
check for alias problem
check for alias != entry
check for null entry in subsequent switch statement
1999-02-04 18:55:58 +00:00
Kurt Zeilenga
72400d11fc
Fix mutex initialization. new init function only has one argument.
1999-02-04 18:20:26 +00:00
Kurt Zeilenga
366701bdf7
Fix dbcache/entry lock deadlock. If dbcache lock is held, it's
...
okay to read and write LDBM specific fields (state, refcnt,
LRU. The id field, though is read-only once set.
cache_find_entry_dn2id(), hence, does not require any entry locks.
cache_find_entry_id() must do a entry_rdwr_trylock() and back
off if busy.
Add new rdwr lock code with trylock() functionality.
Implement entry_rdwr_trylock().
1999-02-04 18:00:50 +00:00
Kurt Zeilenga
6b05425d0f
Minor fixes to complete backout of initialization/startup changes.
1999-02-04 17:45:59 +00:00
Kurt Zeilenga
d27b2f811e
Backout recent initialization/startup changes in prep for new
...
frontend->backend interface.
1999-02-04 17:33:46 +00:00
Kurt Zeilenga
fc44d42c53
Backout startup/initialization changes in preparation for new
...
frontend->backend interface.
1999-02-04 17:28:49 +00:00
Kurt Zeilenga
c6882d4670
Remove rwlock diag messages.
1999-02-04 17:24:26 +00:00
Kurt Zeilenga
efce9cffb4
Use LDAP_ALIAS_DEREF_PROBLEM for all problem dereferencing aliases.
...
LDAP_ALIAS_PROBLEM is now only used if the alias itself is mangled.
1999-02-04 17:23:34 +00:00
Will Ballantyne
be9e28907e
inserted additional checks for null values, comments
...
fixed deadlocks
1999-02-04 00:21:57 +00:00
Kurt Zeilenga
5934367242
Another concurrency typo.
1999-02-03 18:32:25 +00:00
Kurt Zeilenga
7903584911
Use idl_fetch_one() to fetch single id_blocks instead of separate
...
ldbm_cache_fetch() codes.
1999-02-03 17:14:01 +00:00
Kurt Zeilenga
365f6bf69b
Fix double free of filter when bad.
1999-02-03 05:51:42 +00:00
Kurt Zeilenga
a3cf741ab7
Fix slapd/tool dependencies on libraries.
1999-02-03 05:25:04 +00:00
Kurt Zeilenga
368a507c9a
Plug leak of datum. Should be freed after use.
1999-02-03 05:00:41 +00:00
Kurt Zeilenga
ace9fb68c5
Fix ALLIDS bugs
...
Fix memory leaks
1999-02-03 04:45:08 +00:00
Kurt Zeilenga
16b3111ac7
Got that logic backwards...
1999-02-03 03:50:11 +00:00
Kurt Zeilenga
0c2ce661fb
first arg of ldbm_db_errcall could be a const char * instead of char *.
1999-02-02 23:15:45 +00:00
Kurt Zeilenga
40ba9bc80b
Don't try to free NULL idl. Did not cause a problem, though, as
...
idl_free() had insurance.
1999-02-02 22:46:21 +00:00
Kurt Zeilenga
92e71b459b
Hack up a quick bandaid to make things compile. Startup/Initialization
...
needs work.
1999-02-02 19:26:00 +00:00
Kurt Zeilenga
2b29521596
Fix statlog... debugging change got commit by mistake.
1999-02-02 14:06:23 +00:00
Kurt Spanier
442c7e7a7b
Added startup/shutdown routine for slapd back-ends.
1999-02-02 08:03:03 +00:00
Kurt Zeilenga
433e8ad645
Add a few comments to help detail some of these functions.
1999-02-02 03:40:19 +00:00
Kurt Zeilenga
3e48937ac8
Fix idl_firstid to return NOID when !(nids > 1) instead of when (nids == 1)
...
Fix idl_nextid not to skip an ID if ID not in list.
Both of these should not occur if used correctly, but cheap insurance
against incorrect usage is welcomed.
1999-02-02 02:46:18 +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
8981a52ed3
Rebuild configure using autoconf 1.3 (with aclocal from automake 1.4).
1999-02-01 01:36:42 +00:00
Kurt Zeilenga
59a288abb5
Rewrite IDL block code to use simple array and accessor macros
...
instead of array with overlayed struct fields. (which is inherently
non-portable).
Change maxid check in insert to be greater than or equal instead
of equal.
Use SAFEMEMCPY.
1999-01-31 07:55:53 +00:00
Kurt Zeilenga
163077ec93
Don't leak slap_op when op not in list.
...
Don't leak abandon mutex.
Use ch_malloc and friends.
1999-01-29 05:46:12 +00:00
Kurt Zeilenga
91f6792109
Add dn_rdn() function to return rdn part of dn.
1999-01-28 21:40:04 +00:00
Kurt Zeilenga
1d70b89234
Make sure e_ndn is used!
1999-01-28 17:32:59 +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
Kurt Zeilenga
4ea54855c2
Fix PHREAD typo.
1999-01-27 22:42:30 +00:00
Will Ballantyne
07f566e712
fix suffix alias compare in config.c, logic was reversed. The suffix alias
...
is now ignored if it is the same as the real suffix.
1999-01-27 04:58:02 +00:00
Kurt Zeilenga
bd6dfe333d
LDBM/back-ldbm locking reworked!
...
back-ldbm was using a cache specific lock to protect non-reentrant
database routines from being reenterred. This is inadequate.
Also, reentrant database systems calls were serialized unnecessarily.
Non-reentrant database calls must have a big_mutex. Implemented
this within -lldbm itself. library requires ldbm_initialize()
be called before any other ldbm call to initialize the big_mutex
and to do any other db specific initialization (ie: such as
required for DB2).
The dbc_mutex, dbc_cv, & dbc_readers fileds of dbcache are history.
The "reentrant_database" (REENTRANT_DATABASE) define is also axed.
1999-01-26 20:55:54 +00:00
Kurt Zeilenga
f1e934effb
Hide allocate of reentrant_database cond varible and reader count
...
behind REENTRANT_DATABASE. rename reentrant_database -> REENTRANT_DATABASE.
When REENTRANT_DATABASE is defined, the simple lock is replaced
with a simple reader/writer lock. This functionality should be removed
from back-ldbm to libldbm.
1999-01-26 17:23:50 +00:00
Kurt Zeilenga
3c67248a65
cache_set_state( cache, e, 0) cannot occur before lock on parent/root
...
is released. Some other thread may have cache locked but blocking
on parent. Must give up parent lock before acquiring cache lock.
1999-01-26 05:22:58 +00:00
Kurt Zeilenga
0181892175
Change o_private from int to void*. Use it to hold a pid_t (and hope it fits).
...
Have forkandexec() return pid_t instead of int.
1999-01-26 04:32:26 +00:00
Kurt Zeilenga
b83ae3b434
Add pidfile/argsfile options to default slapd.conf.
1999-01-24 21:20:00 +00:00
Kurt Zeilenga
a928abeb9e
incorrect args to tcpd statslog
1999-01-24 01:29:23 +00:00
Kurt Zeilenga
29b1e1f0ba
dn_parent(" ") should be NULL.
1999-01-23 19:34:02 +00:00
Kurt Zeilenga
4194c3ee85
If dn2id returns ID but id2entry returns NULL, log it.
...
Assume entry was deleted from underneath the dn2entry call, hence
processing is same as if NOID had been returned.
1999-01-23 19:33:53 +00:00
Kurt Zeilenga
4863d98084
Remove configure's wait3 test as we don't care about the rusage.
...
Rewrite all child waits to use wait4 (for consistency only).
1999-01-23 04:03:43 +00:00
Kurt Zeilenga
637c0a8301
Use strtok_r() instead of strtok(). Remove strtok mutex!
1999-01-22 04:46:54 +00:00
Kurt Zeilenga
0f17fac37d
Implement NEXTID chunking. Obtain IDs in chunks of size
...
SLAPD_NEXTID_CHUNK. Code protects NEXTID file to ensure
its equal to or greater than nextid. Updated on close
to actual nextid. next_id_save() could be called periodically
if desired. Default chunk size is 32. Define to 1 to disable
chunking.
1999-01-22 02:26:19 +00:00
Kurt Zeilenga
5389e40ba5
initialize nextid with NOID not -1.
1999-01-22 01:53:39 +00:00
Kurt Zeilenga
2318ea0fd6
Don't return nextid on failed add operations for safety.
1999-01-22 01:51:53 +00:00
Kurt Zeilenga
5bfb3ac221
nextid cleanup in preparation to disable next_id_return().
1999-01-22 01:40:39 +00:00
Kurt Zeilenga
ecdf9a354d
Entry must be locked before adding it to the cache.
...
This removes a race condition upon the entry.
1999-01-22 00:27:50 +00:00
Kurt Zeilenga
6edeeeffd4
During cleanup always unlock root_mutex if rootlock is true
...
(don't make it conditional on p == NULL)
1999-01-21 22:20:03 +00:00
Kurt Spanier
68a8798594
Definition of slapd pid and args files as slapd.conf general parameters;
...
introduction of pid/agrs parameters to the test-suite slapd.conf files;
creation of sub-directory test/var for storage of pid/args files during test;
update of the slapd and slapd.conf man pages.
(The change reduces dependency on ldapconfig.h, since SLAPD_PIDEXT
and SLAPD_ARGSEXT are deleted from the code.)
1999-01-21 15:53:54 +00:00
Kurt Zeilenga
127ec9c46c
Fix c_cdn typo. Ouch.
1999-01-21 02:25:09 +00:00
Kurt Zeilenga
09421a74db
Add c_protocol to slap_conn to track protocol version used by client.
...
Is initialized to 0 (unknown) and then set to 2 or 3 on bind. Should
also be 0->3 if a special (or any) operation occurs before the bind.
1999-01-21 02:21:39 +00:00
Kurt Zeilenga
b3d383bbf5
*** empty log message ***
1999-01-21 01:12:35 +00:00
Kurt Zeilenga
19a17982c6
suffixes need to be stored in normalized uppercase format
1999-01-20 05:43:33 +00:00
Kurt Zeilenga
f9b416ea7c
ndn & strcasecmp cleanup
1999-01-20 03:05:35 +00:00
Kurt Zeilenga
0503205c93
suffixAlias will return a normalized uppercase DN if input is normalized
...
and uppercase. (aliased_dn are stored in normalized uppercase format).
1999-01-19 19:29:11 +00:00
Kurt Zeilenga
0daa8c1f06
Recode suffixAlias to implement simple check to see if part to aliased
...
is at a DNSEPARATOR. Moved DNSEPARATOR macro from dn.c to slap.h
1999-01-19 19:26:09 +00:00
Kurt Zeilenga
029069d84a
Removed o_suffix and o_suffixalias as they were 1) leaked and 2) unused
...
(suffixAliasing only maps input dn's, not output dn).
1999-01-19 18:54:19 +00:00
Kurt Zeilenga
3efaabe560
Don't allow suffixAliases were alias and aliased dn our the same.
1999-01-19 18:39:20 +00:00
Kurt Zeilenga
47d0c970d4
use dn_normalize_case().
1999-01-19 18:25:21 +00:00
Kurt Zeilenga
a837feacc2
uppercase that ndn.
1999-01-19 18:18:53 +00:00
Kurt Zeilenga
48bdf4258c
Need to uppercase e_ndn.
1999-01-19 18:17:29 +00:00
Kurt Zeilenga
8c501c28a2
Need to upper case the new_ndn.
1999-01-19 18:16:12 +00:00
Kurt Zeilenga
0e142b42f3
Update support for dn vs ndn. Build new dn from e->e_dn not frontend
...
provided dn (which is normalized and uppercased). This preserved
the trailing portion of the dn.
1999-01-19 18:13:30 +00:00
Kurt Zeilenga
e2a15115b0
Update slap_conn to maintain client provided dn and bound dn.
...
Update slap_op to maintain dn and ndn (derived from conn->c_dn).
Update ldbm_back_bind to return actual bound dn (including rootdn)
for use in slapd_conn. Other backends use client dn.
Modify other codes to use ndn (normalized uppercase dn) most everywhere.
Aliasing, Suffixing and modrdn could use more work.
Applied suffixing to compare and modrdn.
1999-01-19 05:10:50 +00:00
Kurt Zeilenga
01a759971e
Free that unclobberred dn.
1999-01-18 20:49:07 +00:00
Kurt Zeilenga
802325542b
Don't clobber dn.
1999-01-18 20:34:17 +00:00
Kurt Zeilenga
c9242a123f
e_ndn = dn_normalize_case( e_dn )
1999-01-18 20:00:58 +00:00
Kurt Zeilenga
2805b25682
Store rootdn in normalized uppercase format.
1999-01-18 19:47:12 +00:00
Kurt Zeilenga
15fb73a473
ITS#44 fix. denied connections should not be added to connections.
1999-01-18 18:40:12 +00:00
Kurt Zeilenga
8009e591ce
Protect return of the locked entry.
...
Note: we probably can replace the dn2entry_r with dn2id as only the id
is needed unless we're holding the lock for filtercandidates or something
1999-01-18 17:41:12 +00:00
Kurt Zeilenga
818bc57319
Minor cleanup of trace output.
1999-01-18 17:33:36 +00:00
Kurt Zeilenga
77b2e2cb25
Use Entry's e_ndn instead of recomputing it.
1999-01-17 20:12:00 +00:00
Kurt Zeilenga
931a8b1cd8
Add 'should not be world readable' comment.
1999-01-16 01:51:02 +00:00
Kurt Zeilenga
55cd5ee75f
Add reference to slapd.conf(5) and recommendation to avoid cleartext passwords.
1999-01-16 01:48:26 +00:00
Bart Hartgers
3a5a86d44c
Fixed a small typo...
1999-01-15 19:57:32 +00:00
Kurt Zeilenga
3e3f0b8871
Could have no entry to return... check entry pointer before trying to
...
return cache entry.
1999-01-15 18:04:52 +00:00
Kurt Zeilenga
163bac5f04
Install slapd.conf with mode of 600.
1999-01-15 02:48:00 +00:00
Kurt Zeilenga
b7beec1663
Initial version of the experimental 'back-perl'
...
John's still working on the 'perl-test' (the perl backend test module).
1999-01-14 06:33:09 +00:00
Kurt Zeilenga
28a671d10d
Revamp build system yet again to move all external libraries to
...
end of link. Basic order is:
$LDFLAGS internal-libs external-libs $LIBS $LTHREAD_LIBS
LTHREAD_LIBS is last as -lpthread (or equiv) must be last on many systems.
LIBS is next to last as some user might have put -lpthread (or equiv)
in $LIBS.
1999-01-14 01:31:43 +00:00
Kurt Zeilenga
b39fdc0bcd
Add normalized dn to Entry structure as field e_ndn. Entry
...
creation codes to provide this field. Update cache_entrydn_cmp
to strcasecmp() the e_ndn instead of e_dn. Note: strcasecmp()
is still used as e_ndn isn't in uppercase. Maybe it should
be. Did not update other codes to use e_ndn. Hence, there
are lots of dn_normalize() calls that could be eliminated.
(The case determination of e_ndn should be made first).
1999-01-13 01:17:22 +00:00
Kurt Zeilenga
6f88096e72
Report status of failed pthread_create()
1999-01-12 23:57:21 +00:00
Kurt Zeilenga
6bd6a7cf27
Report exit status of pthread_create()
1999-01-12 23:52:50 +00:00
Kurt Zeilenga
318531a437
Use pthread_detach() to detach connection threads instead of
...
creating them detached. This hopefully will reduce problems on
draft4 pthread implementations related to creating detached
threads (which is _np under draft4) on some platforms without
causing problems with other thread implementations.
1999-01-11 19:04:34 +00:00
Kurt Zeilenga
82b94e2258
Change SLAPD shutdown to do a cond wait on active threads instead
...
of a busy wait and allow the pthread_yield within the loop to be
removed. This was the only pthread_yield which was necessary
when usng non-preemptive threads. As such, the configure.in
sched_yield/pthread_yield missing error can be removed from
configure.in. If explicit yield function is missing, just provide
a no-op replacement.
Moved declaration of various slapd globals from main.c to init.c
so they can be shared with ldbm tools.
1999-01-11 18:36:40 +00:00
Kurt Zeilenga
334768c1bb
Update build environment to fix VPATH support.
...
make depend, make tests, and make install all work when build directory
is not the $srcdir.
Also modified library handling such that -lpthread more likely to be last.
WARNING: new orderring requires use of LDFLAGS to set global loader options
such as -L/usr/local/lib. If you put this in LIBS, some libraries
may not be found a link time.
Likely broke Kerberos/LDAPD support. Don't have those in my testbed.
1999-01-10 02:25:41 +00:00
Kurt Zeilenga
d0516836b5
rename 'struct op' to 'struct slap_op'
...
rename 'struct conn' to 'struct slap_conn'
rename op_function to slap_op_func for functions add/delete/free
This change is need to avoid clashing with perl internals.
1999-01-10 02:16:48 +00:00
Kurt Zeilenga
e05e9dd955
Cleanup slapd search op deallocation.
1999-01-08 21:48:09 +00:00
Kurt Zeilenga
1d7704b28e
Fix tmp file removal.
1999-01-08 19:51:15 +00:00
Kurt Zeilenga
de8c07c62c
Updated SLAPD args/pid file codes to use DEFAULT_RUNDIR and DEFAULT_DIRSEP.
...
Removed old defines.
1999-01-07 18:16:40 +00:00
Kurt Zeilenga
033bba4ed4
Fix --disable-slurpd.
1999-01-07 17:29:39 +00:00
Kurt Zeilenga
dd351c3a17
Apply fix suggested by Ben Collins <bmc@visi.net>
...
pass STRING_UNKNOWN if !client_name
pass STRING_UNKNOWN if !client_addr
1999-01-07 05:47:25 +00:00
Kurt Zeilenga
b815f61e0d
Wrap db2 mutex with -DHAVE_BERKELEY_DB2 (should be hidden in -lldbm) ITS#35
...
Unwrap ldbm_datum_init()
1999-01-07 03:28:08 +00:00
Kurt Zeilenga
0f76c52448
Modify Add/Delete/Modrdn operations to require write perms on
...
parent's "children" attribute. Write lock parent to prevent
multiple clients making conflicting operations concurrently.
If parent doesn't exist (ie: is backend root), acquire a writer
lock (a simple mutex) on the "root."
Use -DSLAPD_CHILD_MODIFICATION_WITH_ENTRY_ACL to use the child's
"entry" acl for modrdn/delete operations.
1999-01-07 02:51:08 +00:00
Kurt Zeilenga
ed33462bdf
Use MAXARGS... we should actually check for limits.h's ARG_MAX and
...
use this everywhere... but that's for another day.
1999-01-06 20:27:27 +00:00
Kurt Spanier
9c6d384b9a
- Make install creates $(RUNDIR)/var for pid and args files of slapd.
...
- slapd's pid/args file names are based on the servers binary file names,
providing for multiple servers beeing run on one host.
- slapd supports the -l command line parameter for selection of a
syslog LOCAL user (-lLOCAL0 .. -lLOCAL7)
- db_appinit() is called during first ldbm_open() in DB 2.x to initialize
DB debugging features (good to find bugs in the DB code :-)
- a patch for a non-initialized variable in DB's 2.x db_open is provided.
1999-01-05 15:40:58 +00:00
Kurt Zeilenga
c97837277a
entry pointer 'p' must be initialized. Should fix ITS#31.
1999-01-03 22:55:43 +00:00
Kurt Zeilenga
ad8a5146a6
Wrap strtok use with mutex.
1999-01-01 20:43:29 +00:00
Kurt Zeilenga
a5e6fa0d1c
Wrap strtok use with mutex.
1999-01-01 20:22:56 +00:00
Kurt Zeilenga
22e3ddaad4
I thought the bdn was normalized already... guess not.
1998-12-30 05:21:40 +00:00
Kurt Zeilenga
64cd7d3346
Preliminary Fixes for ITS#24, ITS#26, and ldbm_back_add race condition.
...
Resolved deadlock by passing target entry to be_group and using
this if dn same as bdn. It might actually be safer to check
entry ids instead of dns.
Resolved bogus add to cache after failed acl check by deferring
cache add until after parent/acl checks have successful been
completed.
Eliminated race condition caused by concurrent adds
of same dn by adding 'li_add_mutex' around the critical section
of code (most of ldbm_back_add).
This code is preliminary and still needs significant testing.
1998-12-30 03:35:23 +00:00
Kurt Zeilenga
595bf86635
Cleanup thread handling to resolve non-exiting daemons on FreeBSD.
...
Seems that calling pthread_exit() in the main (and only active)
thread does not cause the whole process to exit. Very odd.
Anyways, as we want to whole process to exit, we should just exit
after joining with our other threads.
I've also removed dead code for detaching threads we join with.
1998-12-30 00:06:27 +00:00
Kurt Zeilenga
25f2f9dd70
Use charray_free to free alist charray
1998-12-29 23:23:21 +00:00
Kurt Zeilenga
695508813d
Fix --disable-crypt and --disable-cleartext
...
mutex declaration should be moved from slapd/main.c to slapd/init.c
so we don't have ripple changes through slapd/tools.
1998-12-29 21:45:08 +00:00
Kurt Spanier
bfb27120be
Patch for Berkeley DB 2.6.4 (beta) (DB)->cursor() call.
...
Introduction of ldbm_datum_init().
Patch for non-NULL pointer test befor call to ldbm_datum_free().
1998-12-29 17:28:45 +00:00
Kurt Zeilenga
cfa450d078
Fix schema check bug... actually charray needs to dup strings on
...
add/merge as we now free strings agressively. Improved debug
message to include name of missing required attribute and added
check for 'operational attributes'. This check should be used
everywhere we need to test for operational attributes (add/modify).
Also, enabled schema checking for tests (and fixed resulting
problems by adjusting oc.conf).
1998-12-28 23:43:04 +00:00
Kurt Zeilenga
ecc44e2292
matched needs to be initialized to NULL as we may never
...
make it to dn2entry_r().
1998-12-28 16:41:39 +00:00
Kurt Zeilenga
dacc0bfc7d
Improve readability of base output in debugging.
...
Also, output UNKNOWN_PREFIX ('?') instead of writing a nul character
when the attribute prefix is unknown.
1998-12-28 00:44:15 +00:00
Kurt Zeilenga
97f10a99cc
Plug 'matched' memory leak in dn2entry()
1998-12-28 00:39:50 +00:00
Kurt Zeilenga
bf5ecff613
Plug addtional realBase memory leaks.
1998-12-27 23:23:09 +00:00
Kurt Zeilenga
fc9e20763f
Only use the LDAP_ALLOW_NULL_SEARCH_BASE code as last resort. Moved
...
to after other suffix checks.
1998-12-27 20:57:30 +00:00
Hallvard Furuseth
19742f2e93
Remove duplicate definitions of global_schemacheck and global_oc
1998-12-27 08:59:38 +00:00
Hallvard Furuseth
d59de0c50f
Plug some memory leak
1998-12-27 04:19:57 +00:00
Hallvard Furuseth
4bb4499175
Plug some memory leaks
1998-12-27 03:55:57 +00:00
Hallvard Furuseth
0aafb7267a
Plug memory leak
1998-12-27 03:11:13 +00:00
Hallvard Furuseth
c3a692787c
Change overlapping strcpy( x, y )' to SAFEMEMCPY( x, y, strlen( y ) + 1 )'
1998-12-27 02:00:08 +00:00
Hallvard Furuseth
c89fab6acc
Reset *modtail after freeing it, so it's not freed again
1998-12-26 09:55:09 +00:00
Kurt Zeilenga
9da13f321c
Apply patch to better behave under Solaris threads (thr).
...
Could still deadlock on the close(). A surrogate parent
should be used to create the children...
1998-12-24 01:16:22 +00:00
Kurt Zeilenga
487aa911f0
Add rc=0 fix as suggested by Tobias Reber <t.reber@dkfz-heidelberg.de>
...
in ITS#17.
1998-12-22 17:04:34 +00:00
Kurt Zeilenga
4854edc6fa
Add <ac/signal.h> back in to ease pain on some platforms.
1998-12-22 01:34:31 +00:00
Kurt Zeilenga
a3ac3be6a7
Added lber_get/set_option. Removed lber_debug/ldap_debug.
...
Updated other codes as needed.
1998-12-22 01:34:01 +00:00
Kurt Zeilenga
2ffb9ae30d
ITS#12 realBase was being freed before use. The offending free()
...
call has been removed and additional code added to properly free
realBase variable. Also fixed leaking of the matched variable.
1998-12-21 17:45:47 +00:00
Kurt Zeilenga
2d15a94d16
LDAP C-API changes
...
struct friendly (Friendly) changed to ldap_friendly (LDAPFriendly)
ldap_friendly friend prefix changed to 'lf_' from 'f_'
removed mod_next field from LDAPMod (struct ldapmod)
modified slapd to use new LDAPModList (struct ldapmodlist) struct.
Added LDAPv3 result codes to ldap.h
1998-12-21 00:21:58 +00:00
Kurt Zeilenga
5c6ad6c5b1
ldif'ize ldif library (ie: everything is now in the ldif_ namespace)
1998-12-20 22:28:33 +00:00
Kurt Zeilenga
362d6cbf2a
Add configure code for setting LDAP_SYSLOG but actually use hardcoded
...
LDAP_SYSLOG in slap.h/slurp.h.
1998-12-20 21:56:44 +00:00
Kurt Zeilenga
c7d5811b78
more cleanup
1998-12-20 19:57:44 +00:00
Kurt Zeilenga
6fd2aa4e84
Clean up after last commit.
1998-12-20 19:49:22 +00:00
Kurt Zeilenga
3e390a8074
Unexpand spaces for tabs in prior commit before merging to rel_eng_1_1.
1998-12-20 19:31:21 +00:00
Kurt Zeilenga
b5973eba5d
Minor change to signal handler. Changed _shutdown flag to
...
type 'sig_atomic_t' and marked it volatile. Add detection to
configure to ensure sig_atomic_t and volatile are supported.
1998-12-20 18:16:03 +00:00
Kurt Zeilenga
4123a08af5
Fix server --without-xxx build issues...
1998-12-20 00:55:39 +00:00
Kurt Zeilenga
b5e50eff5e
Disable writing syncing when creating databases.
1998-12-18 22:21:16 +00:00
Kurt Zeilenga
5d2accea50
Patch cache_delete_entry_internal() as suggested by
...
Daniel Carroll <dan@mesa7.mesa.colorado.edu>
This patch ensures we try deleting the entry from both the
dntree and the idtree.
1998-12-18 18:06:30 +00:00
Kurt Spanier
9e97da14fb
Initialization of Datum structures to zero by memset() before first use.
...
If Berkeley DB version 2.x is used as a slapd back-end a not-initialized
Datum structure will raise an EINVAL error in (DB)->put().
1998-12-18 12:28:47 +00:00
Kurt Zeilenga
9df2f4f424
The result set of an EQUALITY search on a SYNTAX_BIN attribute may have been
...
incorrect because value_cmp() in value.c compares two attributes by
comparing the leading bytes of the two values (candidate and filter) up to
the smaller of the two lengths of the binary values. If the lengths of two
SYNTAX_BIN values differ, like SYNTAX_CES and SYNTAX_CIS, the EQUALITY
comparison should fail.
It also appears that value_ncmp() in value.c has no references anywhere in
the openLDAP source tree, save for a definition in proto-slap.h. The
following fix the bug and remove the dead code:
From: "MCGARRAHAN, KENNETH L" <km4155@momail.sbc.com>
1998-12-14 04:25:55 +00:00
Kurt Zeilenga
6c2949ed86
Change cache.c assert logic based on Hallvard's suggestion.
...
"Check that the entry has no writers before removing it from the
cache" sounds more sensible to me than "check that it *has* writers"
before removing it.
I've also changed the default cachesize for tests to 4. This
should help discover such problems.
1998-12-10 19:20:15 +00:00
Kurt Zeilenga
08134c9e16
printf("\tby") belongs on stderr.
1998-12-04 19:29:17 +00:00
Kurt Zeilenga
339c23549b
Plug a leak reported by Jorg Pietschmann <pietsch@swissline.ch>
...
Still leaks ber_scanf results here and there...
1998-12-04 02:20:39 +00:00
Kurt Zeilenga
e699a9f871
Change the default installation to use a domain component (dc) style base dn.
1998-12-03 04:52:46 +00:00
Kurt Zeilenga
c1cef27bda
Update slapd to use lutil_passwd() for both user and root passwords.
...
Remove MD5 and SHA1 options (both are now always on). Rename
functions to be lutil_ instead of ldap_.
Create --enable-cleartext option. Default is currently 'on'.
1998-12-01 03:36:37 +00:00
Kurt Zeilenga
8a884d1b9c
Add ldif2ldbm bugfix from Randy Kunkee <kunkee@pluto.ops.NeoSoft.com>
1998-11-30 22:26:11 +00:00
Kurt Zeilenga
daaf487bdd
We shouldn't detach a thread that we want to join with...
1998-11-30 20:37:48 +00:00
Kurt Zeilenga
c0366d3c3b
Even more LDAP_PORT depends.
1998-11-30 04:06:59 +00:00
Kurt Zeilenga
40cb8d54c8
More LDAP_PORT depends.
1998-11-30 04:04:00 +00:00
Kurt Zeilenga
edd464ee8f
Update build environment:
...
default sysconfdir subdirectory is openldap instead of ldap.
This removes conflicts with other ldap subsystems. Should
be configure option.
*.conf files are now preserved. A *.conf.default are always
created with the latest conf.
*.help and ldapfriendly are now placed in $(datadir)/$(ldap_subdir)
updated man pages to reflect changes.
1998-11-29 19:48:28 +00:00
Kurt Zeilenga
e2ee741ea8
Replace strdup() with ch_strdup() such that exit() will be called
...
if strdup fails. This is better than not checking, but we should
add orderly shutdown.
1998-11-27 20:21:54 +00:00
Kurt Zeilenga
9b09d42a1d
Apply preliminary patch provided by Hallvard.
...
This still needs significant review!
1998-11-27 20:02:55 +00:00
Kurt Zeilenga
30cefc46de
Add KRB_LIBS to makefiles.
1998-11-25 23:49:12 +00:00
Kurt Zeilenga
4e9f9af375
Add a couple minor safety checks.
1998-11-25 23:45:57 +00:00
Kurt Zeilenga
58f36940c5
string_expand used hardcoded size instead of bufsiz argument.
...
pointed out by Jorg Pietschmann <pietsch@swissline.ch>.
1998-11-24 02:29:53 +00:00
Kurt Zeilenga
b2ec7af331
Changed dn2entry to always returned a modified matched.
...
Modified users of this code to free matched if set.
1998-11-23 20:08:25 +00:00
Kurt Zeilenga
90debec329
plug newDN memory leak using Will Ballantyne's patch
1998-11-23 19:57:00 +00:00
Kurt Zeilenga
a8efbbeef4
Should include <ac/unistd.h> instead of <unistd.h>
1998-11-23 06:04:18 +00:00
Hallvard Furuseth
cb8b23efb2
Plug memory leaks
1998-11-23 04:35:26 +00:00
Hallvard Furuseth
17fe0f59f8
gcc -Wformat cleanup
1998-11-23 04:33:53 +00:00
Kurt Zeilenga
04d91569e1
Replaced PREEMPTIVE_THREADS with HAVE_YIELDING_SELECT to clarify
...
the exact nature of the functionality being tested. -DNO_THREADS
does NOT have a yield select, hence the macro is not defined.
The slapd/daemon code has been changed to test both no threads
and yielding select before using a timeout of NULL.
1998-11-22 20:08:14 +00:00
Hallvard Furuseth
aa9229c454
be& was passed uninitialized to read_config()
1998-11-22 09:33:30 +00:00
Kurt Zeilenga
475fd6dc45
"make veryclean" now lives up to its name.
1998-11-22 06:24:59 +00:00
Kurt Zeilenga
6f92e197dc
Add libtool support based upon patch by Bart Hartgers <Hartgers@kfm1.phys.tue.nl>
...
Updated to use libtool 1.2 (with FreeBSD3.0 a.out v. elf detection).
Updated autoconf to 1.12 with sed patch (don't use stock 1.12).
aclocal.m4 is built using automake's aclocal, v1.3.
Updated mkdep to support libtool .lo files.
Updated automake provided macros for TERMIOS, STRTOD, MKTIME, PTRDIFF_T
Autoconf now checks to ensure C compiler supports ANSI C prototypes.
Updated make files templates.
1998-11-22 04:22:28 +00:00
Hallvard Furuseth
aec88f98bd
Don't use perror after ldbm_store() failure; errno is not set then.
1998-11-20 12:15:05 +00:00
Hallvard Furuseth
e80e9c8342
The tsleep() versions had different return types
1998-11-20 11:46:59 +00:00
Kurt Zeilenga
2d876eb74e
Update comments associated with SIGUSRx -> LDAP_SIGUSRx change.
1998-11-19 01:18:24 +00:00
Kurt Zeilenga
bbdac6ebca
debug messages incorrectly said "add" instead of "remove".
1998-11-18 20:27:21 +00:00
Kurt Zeilenga
e622bc85f8
free parent's reader lock. Thanks Gary!
1998-11-18 20:20:54 +00:00
Kurt Zeilenga
3111cfa3bd
Update LinuxThread signal handling. Hide #ifdef hell in ac/signal.h.
1998-11-18 17:45:32 +00:00
Kurt Zeilenga
b5494457d8
Remove extern declarations of library functions from source.c.
...
This could cause problems on odd systems. The generic
headers should be extended as needed to include necessary
system headers or, if necessary, make explicit declarations.
Extended ac/string.h header to look for string.h/strings.h if
STDC_HEADERS is not defined. Also provide basic declarations for
str*() functions. This could cause problems on odd systems.
Extended ac/unistd.h header to define basic declaration for misc
functions that might be missing from headers. This includes
externs for getenv(), getopt(), mktemp(), tempname().
Protect fax500.h from multiple inclusion. Moved includes of
system/generic headers back to source files.
Made mail500 helper functions static.
Fixed includes of ctype.h, signal.h, etc. to use generics.
lutil/tempname.c: was including stdlib.h twice, one should stdio.h.
Wrapped <sys/resource.h> with HAVE_SYS_RESOURCE_H.
lber/io.c/ber_get_next(): Changed noctets back to signed.
Used with BerRead which expects signed int as second arg and
returns signed int.
1998-11-16 05:07:27 +00:00
Hallvard Furuseth
7e6ad5100c
Protoized, moved extern definitions to .h files, fixed related bugs.
...
Most function and variable definitions are now preceded by its extern
definition, for error checking. Retyped a number of functions, usually
to return void. Fixed a number of printf format errors.
API changes (in ldap/include):
Added avl_dup_ok, avl_prefixapply, removed ber_fatten (probably typo
for ber_flatten), retyped ldap_sort_strcasecmp, grew lutil.h.
A number of `extern' declarations are left (some added by protoize), to
be cleaned away later. Mostly strdup(), strcasecmp(), mktemp(), optind,
optarg, errno.
1998-11-15 22:40:11 +00:00
Kurt Zeilenga
1c91859e9b
Remove #ifdef sunos in lthread HAVE_LWP code.
1998-11-15 22:05:28 +00:00
Kurt Zeilenga
c32792b489
Include ldif.h to pickup declaration of str_getline()
...
Fix pointer truncation to int by including prototypes in forward declarations.
1998-11-12 20:17:01 +00:00
Kurt Zeilenga
f1fde41ff8
remove an entry from its parent's children ID list when it's deleted.
...
Provided by "Gary D. Williams" <sasgwi@unx.sas.com>
1998-11-12 18:39:33 +00:00
Hallvard Furuseth
523fd2c891
Fix most `wider type truncated to int' bugs on OSF1 due to implicit decls:
...
#include <stdlib.h> to get malloc & co various places,
#include <ac/string.h> to get strlen & co in (liblutil/setproctitle.c),
declare ch_malloc & co (slurp.h), avl_find_lin (avl.h), Malloc (ud/edit.c).
Also changed ch_malloc & co from char* to void* functions.
1998-11-11 23:37:38 +00:00
Hallvard Furuseth
f0688d71a1
Locks were not always released, in particular if something went wrong.
...
Fixed in slurpd and the slapd main dir. Slapd clients were not examined.
It also "felt right" to swap the order of closing dfp and rfp in slurpd
copy_replog(), so the last acquired lock is unlocked first.
1998-11-11 19:17:25 +00:00
Hallvard Furuseth
f165bb2b96
strlen() needed string.h.
1998-11-11 16:35:58 +00:00
Hallvard Furuseth
fc03c3f07a
Fix HAVE_PTHREAD_D4 -> HAVE_PTHREADS_D4
1998-11-11 15:53:04 +00:00
Kurt Zeilenga
e03d88fcc4
Don't include portable.h. Headers can and should assume portable.h
...
has been included.
1998-11-11 01:38:02 +00:00
Kurt Zeilenga
376e1e02ff
Update configure to handle DEC OSF1 3.2 special cases.
...
-thread & -pthread are still treated as libraries, will need
additional work to use them as CFLAGS.
Eliminated HAVE_DCE define (was redundant) and its use. Code
now relies on draft4 and function existance tests.
1998-11-11 00:24:22 +00:00
Kurt Zeilenga
1fc810bfe5
Added support for ldap.conf file. See ldap.conf(5) for details.
...
Modified clients to reduce use of ldapconfig.h.edit.
ldap_{get,set}_option support is relatively complete. Needs
to be extended to support other "features" of OpenLDAP.
1998-11-10 23:37:30 +00:00
Hallvard Furuseth
8761bbb6e9
ber_scanf() returns unsigned long, not int
1998-11-08 02:56:47 +00:00
Kurt Zeilenga
21cb9a1c5d
Fix LDBM_SYNC typo
1998-11-07 17:14:35 +00:00
Kurt Zeilenga
3f1b97481c
Make flush_writes the default. Change option to 'dbcachenowsync'.
...
Change backend struct option to li_dbcachewsync.
1998-11-07 02:25:32 +00:00
Kurt Zeilenga
c63938a187
missing newlines bugfix from Dan.
1998-11-06 20:43:19 +00:00
Kurt Zeilenga
ab37c7c8b4
j_sanchez@stl.es
1998-11-06 20:40:47 +00:00
Kurt Zeilenga
24a6a91cac
Use TOUPPER macro.
1998-11-05 22:08:43 +00:00
Kurt Zeilenga
8777f818dc
Fix datum typo.
1998-11-05 21:56:08 +00:00
Hallvard Furuseth
904afbcf6d
Some gcc -W... cleanup
1998-11-05 08:03:48 +00:00
Hallvard Furuseth
177367bdb1
Some gcc -W... cleanup
1998-11-05 07:31:40 +00:00
Hallvard Furuseth
853a1371d1
Some gcc -W... cleanup
1998-11-05 06:49:49 +00:00
Kurt Zeilenga
4646b76608
define _REENTRANT & _THREAD_SAFE to pull in reentrant/threadsafe prototypes.
...
modify apps to use TOLOWER/TOUPPER macros to ensure isupper/islower is
called when approprate.
1998-11-05 06:11:47 +00:00
Hallvard Furuseth
a4411a9944
Some gcc -W... cleanup
1998-11-05 05:47:02 +00:00
Hallvard Furuseth
6df9dcc943
Prototype vs. K&R mismatch
1998-11-05 05:06:51 +00:00
Hallvard Furuseth
0c38adcfd8
Get struct sockaddr for slap.h
1998-11-05 05:05:05 +00:00
Hallvard Furuseth
83ec12246e
Enclose debug variables in #ifdef LDAP_DEBUG
1998-11-05 05:03:12 +00:00
Kurt Zeilenga
2c644a29f1
Needed -llutil before @LUTIL_LIBS@
1998-11-05 03:06:12 +00:00
Hallvard Furuseth
c91e7dd285
Avoid f_next name conflict
1998-11-05 02:46:29 +00:00
Hallvard Furuseth
f3db3e0a8f
replace detach.c with lutil_detach()
1998-11-05 01:56:41 +00:00
Hallvard Furuseth
bc6658be46
replace detach.c with lutil_detach()
1998-11-05 01:30:02 +00:00
Kurt Zeilenga
ecc07180de
Needs LUTIL_LIBS
1998-11-05 00:37:46 +00:00
Kurt Zeilenga
d33c87fc6f
HAVE_LWP_THR was renamed HAVE_THR.
1998-11-04 22:32:18 +00:00
Hallvard Furuseth
c39d8720d9
ldapd did not compile
1998-11-04 19:45:38 +00:00
Hallvard Furuseth
48b3cd0f3f
USE_LOCKF -> HAVE_FLOCK
1998-11-04 19:43:51 +00:00
Kurt Zeilenga
8333a03346
struct ldap is now opaque to clients.
...
updated clients to use ldap_get/set_options
ld_options is renamed ld_booleans. ldap-int.h has accessor macros.
updated libldap to use new accessor macros.
1998-11-04 01:41:00 +00:00
Kurt Zeilenga
d0a843b74d
Insert #ifdef SLAPD_ACLGROUPS
1998-10-27 06:34:01 +00:00
Stuart Lynne
7c52060c67
1. extend aclgroup's to be able to specify objectClassValue and groupAttrName
...
2. update print_acl() a bit and call it during aclparse if LDAP_DEBUG_ACL
1998-10-27 02:07:12 +00:00
Kurt Zeilenga
033cf4ebe7
Fixup bugs created by merge.
1998-10-26 17:37:35 +00:00
Kurt Zeilenga
d81b77e52d
Move sizelimit check such that it limits what's returned, not what is searched.
1998-10-26 03:33:30 +00:00
Kurt Zeilenga
43f29c3cb8
More header work toward draft-ietf-ldapext-ldap-c-api-01.
1998-10-26 01:49:56 +00:00
Kurt Zeilenga
cf50d9436c
Add Ken McGarrahan's LE/GE fix.
1998-10-25 18:40:10 +00:00
Kurt Zeilenga
393a5e21b8
Fix typo
1998-10-25 01:54:37 +00:00
Kurt Zeilenga
cbb281cc4e
remove old files
1998-10-25 01:50:47 +00:00
Kurt Zeilenga
2a869f5a99
merged with autoconf branch
1998-10-25 01:41:42 +00:00
Kurt Zeilenga
708e5abb08
Fixed memory leaks.
1998-10-24 06:11:30 +00:00
Kurt Zeilenga
32d9124fed
Updated derefAlias/DN to handle Entry R/W locks.
...
New alias.c provided by Stuart Lynne.
1998-10-24 04:01:20 +00:00
Kurt Zeilenga
6772a6e130
new files for general aliasing
1998-10-24 03:49:07 +00:00
Kurt Zeilenga
bf6c1e0ad2
Added Will Ballantyne's General Aliasing code.
...
Not quite sure if the entry lock handling is correct yet.
1998-10-24 02:42:38 +00:00
Kurt Zeilenga
d4c5308b3a
Use current schema objectClass 'groupOfNames' instead of 'groupOfUniqueNames'
...
Will consider moving to groupOfUniqueNames as part of OpenLDAP 2.0.
1998-10-24 02:33:17 +00:00
Kurt Zeilenga
238f7361d6
slapd returned "partial results and referral" even when no default
...
referral has been configured in the server. Fix provided by Hallvard.
1998-10-23 22:20:45 +00:00
Kurt Zeilenga
1d0e090998
remove lint reported by Hallvard
...
This could have caused a crash.
1998-10-23 22:00:20 +00:00
Kurt Zeilenga
856c134079
Fix uninitialized pointer bug.
1998-10-23 21:51:32 +00:00
Kurt Zeilenga
1c0b433a25
very bad typo.
1998-10-23 21:49:03 +00:00
Kurt Zeilenga
9f92954dff
ifdef Y2K -> ifndef LOCALTIME
1998-10-21 19:35:30 +00:00
Kurt Zeilenga
845e0073eb
more localtime -> gmtime changes
1998-10-21 19:29:20 +00:00
Kurt Zeilenga
68a473e6af
Use gmtime() instead of localtime()
1998-10-21 19:26:49 +00:00
Kurt Zeilenga
4a5d740e2e
Merged in per cache entry reader/writer locks from OPENLDAP_DEVEL_THREAD
1998-09-20 20:22:46 +00:00
Kurt Zeilenga
d1288c2fa9
Use ldapconfig.h instead of hardcoded paths.
1998-09-17 03:38:36 +00:00
Kurt Zeilenga
c246205958
Add ldap_ prefix to md5 calls.
...
Patch submitted by Chris Smith <csmith@platform.com>
1998-09-16 19:03:22 +00:00
Kurt Zeilenga
007cbfc8f1
Insert Y2K fix (hidden behind -DLDAP_Y2K).
1998-09-16 08:33:34 +00:00
Kurt Zeilenga
b1d48b89ba
Wrap $CC with quotes.
...
Patch provided by Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
1998-09-16 04:18:42 +00:00
Kurt Zeilenga
d9170de015
Okay, this really works.
1998-09-12 04:38:19 +00:00
Kurt Zeilenga
ac989f108d
Directory rule is didn't work... use brute force
1998-09-12 04:33:13 +00:00
Kurt Zeilenga
cad8e004cb
Add missing mkdirs in make install rules
1998-09-12 04:13:26 +00:00
Kurt Zeilenga
2fb96905d2
Add Kerberos V5 support from Predrag Balorda <pele@artewisdom.com>
1998-09-08 02:26:56 +00:00
Kurt Zeilenga
bafbb80824
Add support for Gnu make
1998-09-07 23:13:46 +00:00
Kurt Zeilenga
3596dd376f
fix comment from last commit
1998-09-07 08:32:30 +00:00
Kurt Zeilenga
95b24ea482
Added greg@greg.rim.or.jp's quick hack to allow search with empty search base.
...
Must enable -DLDAP_ALLOW_NULL_SEARCH_BASE to use.
1998-09-05 20:33:22 +00:00
Kurt Zeilenga
cac3ea1e92
Import public domain sha1 routines from Steve Reid <steve@edmweb.com>.
...
Modified for OpenLDAP use by Daniel J. Gregor <djg@gregor.com>.
1998-09-03 06:25:38 +00:00
Kurt Zeilenga
2054d40b7c
Added support for SleepyCat DB2 DBI.
...
Derived from public posting to ldap@umich.edu
by Kurt Spanier <kurt.spanier@zdv.uni-tuebingen.de>
See Make-common.dist for DB2 options
1998-09-03 00:50:13 +00:00
Kurt Zeilenga
8c5868b500
Add basic support for MD5 and SHA1 passwords.
...
SHA1 support is contributed by Daniel J. Gregor <dj@gregor.com>
MD5 support is contributed by me <kurt@OpenLDAP.org>
Uses public domain MD5 routines
Uses ISC/IBM freely redistributable Base64 routines
SHA1 support requires external SHA1 routines
1998-09-02 21:31:35 +00:00
Kurt Zeilenga
e9233c923d
Fixed null termination bug in re.c. Found by vasquez@w270.de
1998-09-02 16:12:07 +00:00
Kurt Zeilenga
27496ee554
<sys/socket.h> is required if CLDAP is enabled.
1998-08-28 21:56:24 +00:00
Kurt Zeilenga
48dcea21a1
Added modify race patch from sl@fireplug.net
1998-08-28 17:42:42 +00:00
Kurt Zeilenga
7963420cde
Add NO_THREADS fix from tih@nhh.no
1998-08-27 21:44:45 +00:00
Kurt Zeilenga
2ec25ef881
Merged files from branch REGEX_REMOVAL. Despite name, this merge
...
adds POSIX RegEx (and removes BSD re_comp/re_exec) support.
* POSIX RegEx is not currently included in the distribution, however
we will probably add Henry Spencer's REGEX library soon.
* ACL Group functionality is also included in this merge!
1998-08-21 06:33:42 +00:00
Kurt Zeilenga
6ffddf154a
Fix shadowing bug created from previous change.
1998-08-20 18:40:45 +00:00
Kurt Zeilenga
0a5ab66d69
Minor cleanup
1998-08-20 08:10:06 +00:00
Kurt Zeilenga
d2ef362f99
Removed use of paths not defined in ldapconfig.h.edit.
...
Fixed Dependency Generation not to mess with Make-templates.
side effect: depends are not carried forward after "make makefiles"
1998-08-20 03:56:19 +00:00
Kurt Zeilenga
b3ac184962
Fixed ldapconfig.h.edit/Make-template to generate ldapconfig.h correctly.
...
ldif2ldbm.c defaults moved to ldapconfig.h, sed no longer needed.
Changed type of lconn_lastused to time_t.
Added include <time.h> were needed.
1998-08-20 02:18:28 +00:00
Kurt Zeilenga
c6e7dd892e
CLDAP need <sys/socket.h>
1998-08-20 00:13:01 +00:00
Kurt Zeilenga
adc2134f03
Modified build environment to correctly support bin,sbin,libexec,etc
...
and setting of variables from Make-platform with defaults in Make-common.
1998-08-19 18:19:39 +00:00
Kurt Zeilenga
079f21c3ac
Added LIBEXECDIR, SBINDIR and patched install rules and files as needed.
1998-08-19 02:38:35 +00:00
Kurt Zeilenga
7df4daffcd
Merged in LASTMOD changes from Allan Stuart.
...
Protects createtimestamp and creatorsname.
1998-08-19 01:30:57 +00:00
Kurt Zeilenga
49d40a26f8
Added ldbm flush on write code which uses slapd.conf option.
1998-08-19 00:10:02 +00:00
Kurt Zeilenga
8a3eefd111
Changed calloc to ch_malloc. Don't need clear, should use ch_ functions.
1998-08-18 20:28:54 +00:00
Kurt Zeilenga
3eb609ab21
Add patch from Gordon Good to fix copying of DNs with null bytes.
1998-08-18 19:05:33 +00:00
Kurt Zeilenga
f51765eead
Changed FD_SETSIZE checks for consistency. Added checks where needed.
1998-08-18 18:19:49 +00:00
Kurt Zeilenga
dfeabf5213
Fixes from Allan Lynne
1998-08-18 17:51:53 +00:00
Kurt Zeilenga
e4af28135d
Changes prompted by Terry's patches
1998-08-18 00:41:35 +00:00
Kurt Zeilenga
97e88afb5e
Sync the cache per Stuart Lynne <sl@poste.com>
1998-08-17 23:34:12 +00:00
Kurt Zeilenga
fa2da63ca4
Merge from LAMBERT branch
1998-08-17 23:26:25 +00:00
Kurt Zeilenga
401bd7495a
Fixed uninitialized Backend pointer.
1998-08-17 21:10:02 +00:00
Kurt Zeilenga
e66aa92102
Added support for TCP_WRAPPERS (ldapd code not tested, don't have isode here).
...
Cleaned up LDAP_CRYPT support.
1998-08-15 23:03:09 +00:00
Kurt Zeilenga
412f44afa3
Fixed "faled" typo in debug message
1998-08-15 18:39:15 +00:00
Kurt Zeilenga
cf1d3904a4
fix SIGUNUSED typo
1998-08-15 18:18:43 +00:00
Kurt Zeilenga
b58c782eeb
needs socket.h
1998-08-15 18:18:12 +00:00
Kurt Zeilenga
efc5e2d0e4
daemon -> slapd_daemon
1998-08-13 20:20:13 +00:00
Kurt Zeilenga
f3e9bc606c
integrated changed from rage.net glibc.patch
1998-08-13 19:32:43 +00:00
Kurt Zeilenga
7b115db732
RAGE: SLURPD malloc bug in st.c
1998-08-09 04:52:36 +00:00
Kurt Zeilenga
1596b380e9
RAGE: LDAPD Linux does have <sys/filio.h>
1998-08-09 04:38:40 +00:00
Kurt Zeilenga
fcbca73f90
Merged LDAPworldCurrent (P1-10,13,15,16,19-22)
...
Cleaned up old rcs keyworld subs
1998-08-09 04:13:55 +00:00
Kurt Zeilenga
ccc2797a77
LDAPworldP21: SLAPD Memory leak/error in filterentry.c
1998-08-09 03:37:22 +00:00
Kurt Zeilenga
29062d06e4
LDAPworldP20: Patch for comparing crypt()ed passwords (#ifdef LDAP_CRYPT)
1998-08-09 03:34:35 +00:00
Kurt Zeilenga
1cad5fd9b2
LDAPworld P13: LDAPv2 client referrals bug
1998-08-09 02:56:52 +00:00
Kurt Zeilenga
38c92a1151
LDAPworld P10: SLAPD Index corruption
1998-08-09 02:54:09 +00:00
Kurt Zeilenga
221db1f19a
LDAPworld P9: SLAPD crashes with filter containing zero elements
1998-08-09 02:52:09 +00:00
Kurt Zeilenga
8893be2975
LDAPworld P7: SLURPD compile problems with SYSERRLIST_IN_STDIO
1998-08-09 02:48:03 +00:00
Kurt Zeilenga
835d3ef9bd
LDAPworld P5: SLAPD Negation of Non-Indexed Search
1998-08-09 02:39:52 +00:00
Kurt Zeilenga
fbdb748a7d
LDAPworld P4: SLAPD Crash when Schema Checking
1998-08-09 02:36:33 +00:00
Kurt Zeilenga
8d5c2b41e6
LDAPworld P3: SLAPD LDBM Generation with Multiple Backends
1998-08-09 02:33:01 +00:00
Kurt Zeilenga
860038cff1
LDAPworld P1: DEC and other portability issues
1998-08-09 02:28:45 +00:00
Kurt Zeilenga
f6c2f2e6ab
Merge FreeBSD Make-templates into LDAPworld branch
1998-08-09 02:24:07 +00:00
Kurt Zeilenga
df38bf83e8
apply FreeBSD changes to main branch
1998-08-09 01:35:58 +00:00
Kurt Zeilenga
04ff180cbf
Modified make system to support CVS instead of RCS
1998-08-09 01:24:49 +00:00
Kurt Zeilenga
8b2170bcf4
Import of FreeBSD LDAP 3.3 Port
1998-08-09 01:05:15 +00:00
Kurt Zeilenga
42e0d83cb3
Initial revision
1998-08-09 00:43:13 +00:00