Commit Graph

319 Commits

Author SHA1 Message Date
Kurt Zeilenga
c581055b54 Add skeleton ldap_extended_operation routines. 1999-05-31 21:19:07 +00:00
Kurt Zeilenga
37636eabd3 Clean up LDAP_BOOL_GET and fetching via ldap_get_option().
Modify apitest to test for non-zero instead of LDAP_OPT_ON.
1999-05-31 17:30:22 +00:00
Julio Sánchez Fernández
2b69b706de Syntaxes.
Accept X- experimental clauses.
1999-05-31 12:04:06 +00:00
Julio Sánchez Fernández
f804c46da6 Cosmetic/spelling fixes. 1999-05-31 11:23:41 +00:00
Kurt Zeilenga
5176f4e356 Free strings returned by ldap_get_option(). 1999-05-31 05:34:49 +00:00
Kurt Zeilenga
d8032bcbaa Use #error if ctime_r nargs are screwy. 1999-05-31 05:34:13 +00:00
Kurt Zeilenga
2e5a52414a Initial round 2 memory allocation changes. THIS IS A WORK IN PROGRESS.
includes single to multiple hooks changes.
ber_mem* reimplementation.
namespace glue (finally naming has not be decided upon nor implemented).
Added ldap_int_strdup to handle "internal" strdup'ing, this version uses hooks.
ldap_pvt_strdup still available for when strdup() is missing, this version
directly uses system allocators.
Updated -lldif to use ber allocators.  Items returned by ldif routines
should be ber_memfree()d as needed.
1999-05-30 23:00:52 +00:00
Julio Sánchez Fernández
be051c3fb3 Relax some rules to survive Netscape DS brokennes, more to come.
A few parse_whsp were missing.
Detect and survive null input.
1999-05-30 00:01:53 +00:00
Kurt Zeilenga
87a8abe880 old_abandon should be int* not long*. 1999-05-29 03:32:33 +00:00
Kurt Zeilenga
4839e570fb safe_free_string() should be static 1999-05-29 01:45:55 +00:00
Julio Sánchez Fernández
e6f9faa94a Fixed parsing of noidlen 1999-05-29 01:32:37 +00:00
Kurt Zeilenga
1bcec8bf6a Add LBER_ and LDAP_ memory allocators/deallocators for internal
library use:
  LBER_ macros expand to system routines.
  LDAP_ macros expand to new ber_ allocators.

Add ber_ and ldap_ memory allocators/deallocator:
  ber_ routines are wrappers of LBER_ macros.
  ldap_ routines are wrappers of ber_ routines.

Removed safe_realloc() macro from various files.  This issue
(if an issue) should be resolved across whole package.

ldapmodify.c now uses ber_ allocators to resolve ber_bvfree()
vs. WIN32 multiple heaps issue.

These changes should facilate implementation of
  ber_set_option( NULL, LBER_OPT_MEMORY_FN, ...)
and
  ldap_set_option( NULL, LDAP_OPT_MEMORY_FN, ...).
1999-05-29 01:19:14 +00:00
Kurt Zeilenga
4e5ed2dffc Changed lc_conn to be a pointer to a BerElement to aid in state management.
Added validation to exposed opaque data structures (BerElement, Sockbuf,
and LDAP).  Added macros BER_VALID, SOCKBUF_VALID, LDAP_VALID.
Added ber_pvt_ber_bytes() and ber_pvt_ber_remaining() macros to hide
some ber internals.  These really should be handled by ber_get_option().
1999-05-28 19:33:05 +00:00
Julio Sánchez Fernández
06c5f96b49 safe_string_free was freeing the string value, so we have to save it. 1999-05-28 18:51:21 +00:00
Julio Sánchez Fernández
8c954245fd Add schema support 1999-05-28 14:26:25 +00:00
Howard Chu
d44ac9835a In try_read1msg, clear errno before calling ber_get_next, otherwise leftover
values will obscure EOF condition on closed sockets.
1999-05-28 05:19:18 +00:00
Kurt Zeilenga
6e0c7b95ab Death to LBER_END_SEQORSET. 1999-05-28 03:24:41 +00:00
Kurt Zeilenga
2b9a296eb4 Initial implementation of ldap_int_get_controls()... EXPERIMENTAL. 1999-05-28 02:15:57 +00:00
Kurt Zeilenga
c1501fd3a7 Use difftime() to determine cache age. 1999-05-27 22:48:14 +00:00
Kurt Zeilenga
f90277edc5 strlen returns size_t not int. 1999-05-27 22:33:12 +00:00
Kurt Zeilenga
8c793fa1c9 rename ldap_pvt_init_utils() to ldap_int_utils_init() and provide
prototype in ldap-int.h.
1999-05-27 22:25:55 +00:00
Julio Sánchez Fernández
d5509bbbe9 Incorporate #define's per Kurt's suggestion 1999-05-27 18:18:36 +00:00
Julio Sánchez Fernández
676558aa64 Provide human-readable syntax errors. 1999-05-26 19:21:55 +00:00
Julio Sánchez Fernández
fd488b3846 Fix namespace contamination, some comments added. 1999-05-26 13:52:11 +00:00
Howard Chu
967d1dcb2d For ITS#157: Added LDAP backend for slapd, which also required adding
LDAP_OPT_MATCH_STRING to ldap.h and libldap/options.c.
1999-05-26 02:35:20 +00:00
Julio Sánchez Fernández
06239ebd66 Untested support for parsing attribute type definitions 1999-05-24 12:44:48 +00:00
Julio Sánchez Fernández
b2b3581bc1 Initial incomplete and broken version. 1999-05-24 01:38:57 +00:00
Kurt Zeilenga
22d98c85c3 ldap.h:
added comments
 removed LDAP_MAX_ATTR_LEN
 removed LDAP_COMPAT* from <ldap.h> but not code.
 move LDAP_DEFAULT_REFHOPCOUNT to ldap-int.h
 added experimental options macros
 added LDAP_CONTROL_REFERRALS macros
libldap:
 Replace ld_attrbuffer with per use allocated attributed.
 ldap_first/next_attribute attributes now must be freed (as per draft).
 unifdef -DLDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS
1999-05-22 06:11:48 +00:00
Kurt Zeilenga
5654a0b231 fix url vs url_in typo. 1999-05-21 22:20:28 +00:00
Kurt Zeilenga
ca2145cccf Initial checkin of ldap_search_ext() and friends. 1999-05-21 19:20:25 +00:00
Kurt Zeilenga
3d9c49f982 Fix typo in ldap_delete_ext() which caused msgid to be incremented twice. 1999-05-21 16:11:52 +00:00
Kurt Zeilenga
9c2ebd1f42 Assert pointer args 1999-05-21 03:56:17 +00:00
Kurt Zeilenga
042898d2f0 Version.c deprecated in favor of mkversion.
Minor cleanup to lber files.
1999-05-20 19:38:03 +00:00
Kurt Zeilenga
8ef7993047 Removed lint. 1999-05-19 07:20:06 +00:00
Kurt Zeilenga
f9bbdb34c5 Add UL to more BER tags. 1999-05-19 06:27:35 +00:00
Kurt Zeilenga
6ee995f528 Add UL to LBER tags. 1999-05-19 06:13:44 +00:00
Kurt Zeilenga
3b16742eba Add LDAP_CONST to kerberos bind routines 1999-05-19 01:53:09 +00:00
Kurt Zeilenga
ddf8624abc Add LDAP_CONST to ldap_set_option() invalue 1999-05-19 01:52:46 +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
Hallvard Furuseth
bd30767a4f Fix typo EEE -> EE in LDAP_API_FEATURE_X_OPENLDAP_REEENTRANT 1999-04-30 11:48:36 +00:00
Hallvard Furuseth
fb1227a547 Remove superfluous \ at end of lines outside macros; DEC cc doesn't like them. 1999-04-30 06:39:19 +00:00
Hallvard Furuseth
786bbe4fc1 enclose macro arguments in () 1999-04-30 00:35:27 +00:00
Kurt Zeilenga
a80ff50a67 Lint removal: signed i < unsigned j 1999-04-27 05:19:32 +00:00
Hallvard Furuseth
24fd4404d2 Plug a few memory leaks 1999-04-04 05:04:48 +00:00
Gary Williams
df02a81f6c put single and multi-threaded output in different directories 1999-04-02 15:33:41 +00:00
Gary Williams
30a51ac013 create single-thread configurations 1999-04-01 21:46:48 +00:00
Kurt Zeilenga
dda1fb4ba0 Updates for NT4 (MSVC5++).
Removed external include/library paths from projects.  External paths should
be set via Tools | Options | Directories.  This allows each developer the
freedom to install external libraries where they desire.
Used libdb.lib instead of libdbs.lib to avoid thread conflicts.
Added hs_regex.lib to library input.  We require some form of regex, this
library works (and is relatively easy for the user to install).
Removed a little lint which MCVC5 detected.
Need to sort out single-threaded vs multithreaded library generation.
1999-04-01 20:26:09 +00:00
Gary Williams
3146c94e03 update project settings 1999-04-01 15:57:57 +00:00
Kurt Zeilenga
db721ca821 Add ioctl_t for arg type (Unix requires 'int', Winsock requires 'u_long'). 1999-03-29 05:28:29 +00:00
Kurt Zeilenga
ff23537bcb Rework ac/socket.h for HAVE_WINSOCK:
tcp_close -> closesocket
  ioctl -> ioctlsocket
Modify codes to use tcp_close() instead of close() for sockets.
Modify ioctl codes to be compatible with WINSOCK.
1999-03-29 05:15:59 +00:00
Kurt Zeilenga
af2183c35e close ldap.conf after reading it. 1999-03-25 22:19:42 +00:00
Hallvard Furuseth
b6d85256e7 "const"ify some static arrays, and related parameters/variables 1999-03-09 08:40:36 +00:00
Hallvard Furuseth
083455be6b Bugfix: Move handling of boolean options in front of invalue==NULL error check 1999-03-09 07:49:56 +00:00
Hallvard Furuseth
26f257f40d Replace (int)LDAP_BOOL_GET(...) with LDAP_BOOL_GET(...)==LDAP_OPT_ON 1999-03-09 07:42:17 +00:00
Hallvard Furuseth
3f65f687e5 Put the ATTR_BOOL option numbers in attrs.offset instead of attrs.data,
to avoid unportable casts of integers to pointers and back.
1999-03-06 18:31:19 +00:00
Kurt Zeilenga
2c06d0da09 Change (int) invalue == (int) LDAP_OPT_ON to invalue == LDAP_OPT_ON. 1999-03-06 17:11:35 +00:00
Hallvard Furuseth
3277a27b10 Remove unused variables 1999-03-06 16:29:05 +00:00
Hallvard Furuseth
9bef1a2bc1 Obey CTIME_R_RETURNS_INT 1999-03-06 04:23:17 +00:00
Hallvard Furuseth
3b5a5b792c Remove spurious backslash-newlines 1999-03-05 01:21:44 +00:00
Hallvard Furuseth
a2ee841121 Change LDAP.ld_lberoptions to `short', to realign with BerElement.ber_options 1999-03-05 01:20:55 +00:00
Hallvard Furuseth
61174d1960 Cast char* argument to hh_to_c() to Byte* 1999-03-05 01:04:56 +00:00
Hallvard Furuseth
921158f6fc Remove LDAP_P() from prototypes with 'Byte' arguments 1999-03-05 01:03:13 +00:00
Hallvard Furuseth
ac687014ec K&R varargs branch of ldap_log_printf() was bogus 1999-03-04 12:55:59 +00:00
Juan Gomez
00558f962b Added the functions ldap_rename2() and ldap_rename2_s() to support LDAP
v3 MODDN (MODRDN) operation on the client side.
1999-03-04 03:16:29 +00:00
Hallvard Furuseth
5b83a959d2 Don't choke if gethostby{name,addr}_r's number of arguments differ
from what the current code can handle.
1999-03-03 21:34:49 +00:00
Bart Hartgers
a81ca18845 Added support in liblber and libldap for partial reads, i.e. situations in
which only part of a LDAPMessage is available on a socket.

The server-code seemed to handle this correctly already, so I didn't touch
it.

My apologies for the hack in ber_get_next :-).
1999-03-03 16:38:56 +00:00
Hallvard Furuseth
7bac8381a6 function pointers are incompatible with `void *'; remove NULL or replace with 0 1999-03-03 16:02:00 +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
Kurt Zeilenga
246a738c00 Fix typo in previous commit. 1999-03-02 03:09:04 +00:00
Kurt Zeilenga
a2aa1c38ec Fix HAVE_WINSOCK for winsock32.lib 1999-03-01 21:08:07 +00:00
Bart Hartgers
e26de67770 Patch to support to determine the number of args of the
gethostby{name,addr}_r functions.
Contributed by Juan Carlos Gomes IT#68 (apparently).

Also includes support for detecting ssleay in configure.in.
1999-02-25 13:07:27 +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 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
Kurt Zeilenga
9cc9a84527 Remaining LDAP_COMPILING_R should be LDAP_R_COMPILE. 1999-02-20 18:33:24 +00:00
Kurt Zeilenga
e4a589d99e Updates for MSVC 5.0. Fix libraries names to be ol{ber,dap,..}32.lib.
Fix library/include paths for building "Release".
Create getpass() from ud's mygetpass().
1999-02-11 21:16:03 +00:00
Kurt Zeilenga
4a19ae3567 Fix text2time to handle 4 digit years. Fix YEAR() to handle
tm_year being 100+.
1999-02-09 06:31:34 +00:00
Kurt Zeilenga
a3a576c3b9 Don't provide ldap.OpenLDAP.org and dc=OpenLDAP, dc=Org as the defaults.
Just use compiled in defaults.
1999-02-08 18:59:05 +00:00
Kurt Zeilenga
0482baa520 Need KRB_LIBS to link test programs. 1999-02-04 19:21:04 +00:00
Kurt Zeilenga
c61114a4ff Fix typo suggested by Heiko W.Rupp in ITS#63 1999-02-02 20:38:45 +00:00
Kurt Zeilenga
ba0c0e022c Fix ldap_send_initial_request() to open connection if not already
openned (by ldap_open()).  This allows ldap_init() to function
properly!
1999-01-31 01:09:00 +00:00
Kurt Zeilenga
2c4e2fbfb2 ldap_sort_entries() should try to malloc(0) when the count is zero.
should also return error in ldap_count_entries returns an error.
1999-01-29 03:56:18 +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
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
321354ecff Add lber_pvt.h with prototypes of lber_pvt_log_print{,f}.
Ripple name change through -llber & -lldap.
Update -lldif to use lber_pvt_log_printf() instead of Debug.
1999-01-26 01:21:35 +00:00
Kurt Zeilenga
7eec267436 Add lber_log_print support to libldap.
Redefine Debug macro to call ldap_log_printf(NULL, lvl, fmt, ...)
Should replace each Debug statement with direct call to ldap_log_printf
passing LDAP session if available.
1999-01-26 00:27:51 +00:00
Kurt Zeilenga
941087a09d Forgotten commit of string rearrangement. 1999-01-24 01:32:04 +00:00
Kurt Zeilenga
97a6648832 Forgot to add new string.c. 1999-01-24 01:07:52 +00:00
Kurt Zeilenga
ddb0752b8f Move libldap/strdup.c to string.c.
libldap/string.c will hold various string.h replacements.
Removed liblutil/strdup.c
Moved ldap_pvt_strtok to string.c.
Moved prototype of ldap_pvt_strtok to <ac/string.h>.
Added #define strtok_r ldap_pvt_strtok (if strtok_r doesn't exist).
1999-01-22 04:33:29 +00:00
Kurt Zeilenga
eed7408e7e Update ldap_first_attribute/ldap_next_attribute to handle
BerElement argument per latest IETF ldapext draft c api spec.
That is, caller is solely responsible for freeing the BerElement
allocated and returned by ldap_first_attribute.
Update man pages accordingly.
Update applications accordingly.
1999-01-20 20:21:38 +00:00
Kurt Zeilenga
f1c89effeb Add reference to ldap.conf(5). 1999-01-16 01:50:12 +00:00
Bart Hartgers
027d2fadc6 Updates regarding threads and names. 1999-01-15 14:49:03 +00:00
Kurt Zeilenga
d66a450344 Update init and ldap.conf(5) to handle LDAPNOINIT, LDAPCONF, LDAPRC
environment settings.
1999-01-14 23:04:08 +00:00
Bart Hartgers
f6a47058b6 Improved ldap_int_strtok. If strtok_r does not exists, it will be worked
simulated with strspn and strpbrk. If strspn or strpbrk aren't there, they
will be supplied.
In addition, the memory-handling of the ldap_int_gethostby's is better now.
1999-01-14 15:19:29 +00:00
Kurt Zeilenga
4de6a10ce2 Insert missing ')'... 1999-01-14 06:28:50 +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
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
959f370e57 Backout extraneous changes made by last commit. 1999-01-07 17:51:23 +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
114a0cd339 Update ctime_r() argument macro to cache results and to produce
one preprocessor macro instead of two.  Ran aclocal, autoconf,
autoheader to update derived files.  Modify util-int.c to use
CTIME_R_NARGS define and fallback to ctime() if not set.
Made LDAP_API_FEATURE_X_OPENLDAP_REENTRANT dependent upon result.
1999-01-02 23:40:31 +00:00
Bart Hartgers
f9d26dacd4 Teached autoconf to figure out how may arguments ctime_r expects.
Updated util-int.c to use this information.
1999-01-02 00:56:45 +00:00
Kurt Zeilenga
54fbeeb427 Set 'expected' defaults 1998-12-29 05:52:27 +00:00
Kurt Zeilenga
4d2761a6a6 Add simple copyright notice. 1998-12-28 20:53:15 +00:00
Kurt Zeilenga
ff447a31e2 Added ldap_get_entry_contols() and ldap_parse_reference(), but
have not implemented ldap_get_ber_controls() helper function yet.
1998-12-27 21:59:12 +00:00
Hallvard Furuseth
521f6cfda9 Change overlapping strcpy( x, y )' to SAFEMEMCPY( x, y, strlen( y ) + 1 )' 1998-12-27 02:15:08 +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
Kurt Zeilenga
1d718296b4 Needs ldap-int.h 1998-12-26 18:55:46 +00:00
Kurt Zeilenga
138d76ecf4 getentry.c: LDAP_RES_SEARCH_REFERENCE changes after fixing loop initializer.
references.c: fix same bug here.  need to implement parsing.
Still need to implement chasing in cldap.c/result.c
1998-12-24 06:00:53 +00:00
Kurt Zeilenga
090b7ccca0 Backout previous entry... causes runaway ldapsearch. 1998-12-24 05:39:14 +00:00
Kurt Zeilenga
a4822cf328 Initial versions of functions to step through messages and references.
Fixed entry step through functions to check specifically fore entries.
1998-12-24 04:45:54 +00:00
Kurt Zeilenga
2f5ef0d1a8 Initial version of control free/dup functions. 1998-12-23 02:31:35 +00:00
Kurt Zeilenga
52d7a2d8b2 Add client/server control free/dup functions and
ldap_set/get_option support for controls.
1998-12-23 02:30:44 +00:00
Kurt Zeilenga
60f52adc86 Fix get/set error string bugs. 1998-12-23 00:42:38 +00:00
Kurt Zeilenga
32d9cc239c Add ldap_memfree() to the mix. 1998-12-22 18:42:02 +00:00
Kurt Zeilenga
e795f9168d Update main comment and remove unneeded <ac/time.h> inclusion. 1998-12-22 18:27:14 +00:00
Kurt Zeilenga
a64c2a3954 Allow LDAP session errno and error strings to be set. 1998-12-22 04:49:56 +00:00
Kurt Zeilenga
a36412440c Update error codes based upon draft-ietf-ldapext-ldap-c-api-01
Remove ldap_get_lderrno().
1998-12-22 04:45:14 +00:00
Kurt Zeilenga
2d39f617b8 Add LDAP_OPT_API_FEATURE_INFO to obtain feature info (ie: version)
at runtime.
1998-12-22 03:17:25 +00:00
Kurt Zeilenga
811cfab91f Move LDAPServer, LDAPConn, LDAPRequest, and LDAPCache
from ldap.h to ldap-int.
1998-12-22 02:39:24 +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
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
8aba5c5059 Provide framework for ldap_r and reentrant/thread safety levels.
-lldap_r can now be implemented...
1998-12-20 00:58:55 +00:00
Kurt Zeilenga
0024cf2f4b -lldap reentrantancy improvements from Bart Hartgers <A.Hartgers@phys.tue.nl>
including use of ctime_r, gethostby*_r, etc..  Also reworked ldap_sort_entries
to be reentrant.
Need to add code to properly set LDAP_API_FEATURE_THREAD_SAFE.
1998-12-19 01:27:20 +00:00
Kurt Zeilenga
6232170a03 Commit preliminary fix for ldap.conf base usage. 1998-12-01 20:08:39 +00:00
Kurt Zeilenga
ff559f551a Remove LDAP_PORT dependencies so that ldap.conf defaults take over. 1998-11-30 03:55:49 +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
21b249ca6e Change init_w_userconf to not interpet the filename. If it's
give "/foo", then it will check $HOME/foo, $HOME/./foo, then /foo.
This might not be what the installer hand it mind... but then again
may be it is.
w_userconf and w_conf both now use NULL arguments to disable conf loading.
1998-11-23 03:03:06 +00:00
Hallvard Furuseth
7273fd47fd gcc -W cleanup 1998-11-23 01:46:32 +00:00
Hallvard Furuseth
185586f5c2 Plug memory leak 1998-11-23 01:44:24 +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
Kurt Zeilenga
d693e3015a Add strdup.c to project file. 1998-11-20 07:38:09 +00:00
Kurt Zeilenga
120b7fedae Add strdup.c from -llutil, renamed to ldap_strdup() and always used.
This will allow us to substitute malloc() at a later date.
1998-11-20 07:02:39 +00:00
Hallvard Furuseth
c24d932b02 add ldap_strdup and eliminate strdup in libldap 1998-11-19 06:18:23 +00:00
Kurt Zeilenga
cbf7c28c0a Support $LDAPRC to specify fullpath to additional rc file
Don't support ./.ldaprc...  can be spoofed to easily.
1998-11-19 03:55:56 +00:00
Kurt Zeilenga
1b51fc23f3 Check in default ldap.conf file 1998-11-19 02:10:52 +00:00
Kurt Zeilenga
86fc474a50 Make sure tblsize in initialized in ldap_new_select_info()
Regenerate configure.
1998-11-16 23:55:37 +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
Hallvard Furuseth
4ed85bbbb4 Removed space in front of #endif'; make depend' did not like it. 1998-11-13 03:06:54 +00:00
Kurt Zeilenga
a9d6d0c6a1 Move extern declarations to headers.
Update NT portable.h and features.h
1998-11-12 21:07:28 +00:00
Hallvard Furuseth
ce5dcbc522 Check if inet_addr() returns 0xffffffff as well as -1.
It returns (int)0xffffffff on OSF1 which has 64-bit long, so
`unsigned long address; ... if((address = inet_addr(str)) == -1)' fails.
1998-11-12 02:24:43 +00:00
Hallvard Furuseth
dfc9a1c2ff &deref_kv -> deref_kv; som compilers don't like &array 1998-11-11 15:42:22 +00:00
Kurt Zeilenga
d6e05ecbd7 Update NT4 port. 1998-11-11 05:50:51 +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
12b9ad0954 Removed LDAP_P in unhex' prototype; unhex(char) is incompatible with unhex(). 1998-11-10 22:18:22 +00:00
Kurt Zeilenga
120f75219d Update apitest with to toy with additional ldap options and extensions. 1998-11-10 20:27:47 +00:00
Kurt Zeilenga
e6ac1f46c3 Add support for runtime determination of API extensions. 1998-11-09 23:21:38 +00:00
Kurt Zeilenga
fd3000d5dc Initialize openldap_ldap_global_options struct (not yet used). 1998-11-09 23:02:27 +00:00
Kurt Zeilenga
a48b606a2f Initial LDAP_API_FEATURE_X_OPENLDAP commit:
configure generates ldap_features.h based from ldap_features.h.in
  LDAP_REFERRALS -> LDAP_API_FEATURE_OPENLDAP_V2_REFERRALS
  LDAP_DNS -> LDAP_API_FEATURE_OPENLDAP_V2_DNS
1998-11-09 19:41:09 +00:00
Kurt Zeilenga
5960272713 Split out ldapoptions from struct ldap to facilate global options.
Add openldap_ldap_initialize() call to ldap_init/ldap_open/ldap_get/set_options.
1998-11-09 18:40:37 +00:00
Kurt Zeilenga
435a502cbc Fix LDAP_DNS code to use LDAP_BOOL_GET 1998-11-08 01:11:09 +00:00