Commit Graph

78 Commits

Author SHA1 Message Date
Kurt Zeilenga
bed6465529 Make first argument of *_get_option const (experimental).
Make _MOD_SOFTADD 0x1000 to minimize chance of conflict with legit changes
to API spec.
Fix memory leak in ldap_mods_free() and minor memory allocator issues.
1999-06-02 21:38:48 +00:00
Kurt Zeilenga
89ffbead68 Move berval routines to memory.c. 1999-06-01 18:59:27 +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
Kurt Zeilenga
4bba4a48dd Remove prototype for removed ber_clear(). 1999-05-30 21:59:45 +00:00
Kurt Zeilenga
2f969f8552 First cut at ber_set_option(NULL,LBER_OPT_MEMORY_FN, myrealloc) where
myrealloc is pointer to a realloc() wrapper.
Must be first library call or else.
1999-05-29 05:16:31 +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
6e0c7b95ab Death to LBER_END_SEQORSET. 1999-05-28 03:24:41 +00:00
Kurt Zeilenga
4c3f2c9fa9 Minor header cleanup. 1999-05-24 20:55:47 +00:00
Kurt Zeilenga
3540857e03 Disable LBER_END_SEQORSET for now. 1999-05-20 23:40:06 +00:00
Kurt Zeilenga
97e5524af9 found my lber bug... ber_buf should have been freed in ber_peek_tag. Ugh! 1999-05-20 21:53:56 +00:00
Kurt Zeilenga
c23e4fe6a7 Add EXEEXT and MKVERSION support. 1999-05-19 07:12:20 +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
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
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
d7079a10c3 Add support for LBER_OPT_LOG_PRINT_FN option. 1999-01-25 22:55:00 +00:00
Kurt Zeilenga
7fc7988b8e Add OpenLDAP Copyright to headers 1998-12-28 19:51:35 +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
3a5e383dbd Add draft-ietf-ldapext-ldap-c-api-01 routines ber_init()
and ber_flatten() to the -llber.
1998-12-18 21:08:28 +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
83ec12246e Enclose debug variables in #ifdef LDAP_DEBUG 1998-11-05 05:03:12 +00:00
Kurt Zeilenga
34c945b86d added ber_print_error() and renamed lber_bprint into ber_ namespace. 1998-10-27 07:50:07 +00:00
Kurt Zeilenga
48e53c8487 Add prototypes for LDAPv3 draft functions 1998-10-26 02:47:43 +00:00
Kurt Zeilenga
42f2a83607 rename ber_init() to ber_init_w_nullc in preparation of LDAPv3 ber_init() 1998-10-26 02:38:39 +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
702109706b update ldap/lber headers towards ldapext-ldap-c-api-01 1998-10-26 01:18:41 +00:00
Kurt Zeilenga
2a869f5a99 merged with autoconf branch 1998-10-25 01:41:42 +00:00
Kurt Zeilenga
b978170b1a More lint removal from Hallvard. 1998-10-23 23:10:49 +00:00
Kurt Zeilenga
42e0d83cb3 Initial revision 1998-08-09 00:43:13 +00:00