Commit Graph

202 Commits

Author SHA1 Message Date
Howard Chu
3ea2de7a86 Fix off-by-one in allocation of urlpre 2000-05-11 21:21:18 +00:00
Kurt Zeilenga
643864c569 Change negotiated mechanism:
If application provide one, use it.  If application doesn't
	provide one, use best of server advertised.
Fix SASL/ANONYMOUS (not normally used, but should work)
PLAIN is not currently working... might be local to me as my
Cyrus installation is a bit hosted.
2000-05-11 20:16:26 +00:00
Kurt Zeilenga
fe8be04237 Fix typos in version checking 2000-04-25 10:30:42 +00:00
Ben Collins
97493c3404 with the -t option (writing to /tmp) open files with O_CREAT|O_EXCL to overcome race conditions 2000-04-24 16:41:36 +00:00
Kurt Zeilenga
4ecf780e48 StartTLS requires LDAPv3
Set version to required protocol.
2000-04-20 14:15:39 +00:00
Kurt Zeilenga
c02d7e2cb6 ITS#503: Extend ldap tools to support SASL/TLS
Submitted by Gabor Gombas <gombasg@inf.elte.hu>
2000-04-20 09:23:51 +00:00
Kurt Zeilenga
72c0de5d95 #define LDAP_LDIF to default to LDIF input
Fix ldaphost == NULL bug
2000-04-12 01:03:51 +00:00
Kurt Zeilenga
6b4aac2678 #define LDAP_LDIF to default to LDIF output 2000-04-12 01:02:58 +00:00
Kurt Zeilenga
870dbca576 objectclass=* -> NULL 2000-04-12 01:00:48 +00:00
Kurt Zeilenga
6437785a82 Initial implementation of Kerberos password verification for
simple bind via:
	{KERBEROS}principal
Code is disabled by default (for security reasons).  Use
--enable-kpasswd to enable.  Behind SLAPD_KPASSWD.
Reworked Kerberos detection and split out KBIND as independent
feature (--disable-kbind) (LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND).
KBIND depends upon detection of KRB4 (or KRB425) support.  Detection,
building with eBones (as distributed with FreeBSD 3.4) okay, but
wasn't able to test as I don't have a K4 KDC handy.
--with-kerberos has a number of detection options... most likely
don't work properly.
2000-01-08 18:42:11 +00:00
Kurt Zeilenga
cd5c29cdc4 Add checks to ensure arguments are consistent (v2 vs v3). 1999-12-12 05:05:20 +00:00
Kurt Zeilenga
fe5608c4d5 Wrap request/response bervals in a sequence. 1999-12-11 19:33:45 +00:00
Kurt Zeilenga
041c1545e8 Update usage and man page. 1999-12-10 04:59:28 +00:00
Kurt Zeilenga
431dad371c Fix slapd SASL/ExternalOps encoding
Add controls to extended ops API signatures, need impl.
Update password to support optional server side generation of
new password, verification of old password, and changing of
non-bound user's passwords.
1999-12-10 04:52:32 +00:00
Kurt Zeilenga
354d0d5b50 Modify password code such that backend end routine calls into
frontend to complete parsing of extended op reqdata.
Modify password extended operation to allow optional id (DN)
entry to change (not tested).  Also, provide room to allow
server side password generation (not implemented).  Added optional old
password field to support proxying (not implemented).
Need to implement replog() support.
1999-12-09 21:30:32 +00:00
Kurt Zeilenga
26c7d69e8c Update for new password codes for MSVC5 1999-12-08 06:44:22 +00:00
Kurt Zeilenga
d5edb4bff6 Reengineered ldappasswd(1). Uses extended operation to set
user password.  Likely to be modified to use bind control
instead.  Use of modify deprecated in favor mechanisms that
support passwords stored externally to the directory (such
as in a SASL service).
Modified slapd extended operation infrastructure to support
backend provided extended operations.
1999-12-08 04:37:59 +00:00
Kurt Zeilenga
5d5588836f Fix ldap_rename parameter order (ITS#387) 1999-12-04 17:19:11 +00:00
Gary Williams
6ec31e98ac No one complained, so here's the change to ldapdelete to add a -r switch to allow a branch of a directory tree to be removed. The DN provided is searched recursively until the leaf nodes are hit, then everything is deleted. 1999-12-03 18:29:03 +00:00
Kurt Zeilenga
14f107e9ed Changes to support NT single debug 1999-11-01 22:17:06 +00:00
Kurt Zeilenga
b7af076fee Use centralized output directories.
Update single debug/release not to use service manager nor event manager.
Likely breaks MINGW32 port.
1999-11-01 21:25:22 +00:00
Howard Chu
17e1877a12 Fix broken MSVC builds. The previous round of Mingw32 patches changed some
ifdefs to depend on _WINNT, which is bogus. Added _WIN32 back on these ifs,
and fixed some other include problems.
1999-10-31 02:26:41 +00:00
Howard Chu
e99eab787f Use new macros from configure.in to accomodate NT/Mingw32 environment.
See README 1.27 log
1999-10-28 07:31:59 +00:00
Kurt Zeilenga
f4a0699311 Add macros to compute base64 encode/decode lengths. 1999-10-25 01:44:47 +00:00
Kurt Zeilenga
a284b641b7 Move crypt(3) prototypes from <ac/unistd.h> to <ac/crypt.h> (new) to
avoid clashes with Kth Kerberos.
1999-10-01 04:48:30 +00:00
Julio Sánchez Fernández
0bd0a8d4db Fix creation of ldapadd link to ldapmodify 1999-09-23 11:13:29 +00:00
Ben Collins
53da7b6cda * build/top.mk: removed references to TMPROOT and added DESTDIR support
* all others: Added DESTDIR support
1999-09-22 21:51:30 +00:00
Kurt Zeilenga
9d6c0aa00a Allow replace with no values
dn: cn=foo
	changetype: modify
	replace: bar
	-
1999-09-10 01:55:46 +00:00
Kurt Zeilenga
403f4479bc Add OpenLDAP RCSid to *.[ch] in clients, libraries, and servers.
Replace old Id as needed (back-tcl).
Leave updating of contribWare to contributors (for now).
1999-09-08 19:06:24 +00:00
Kurt Zeilenga
ed0e5393b4 Disable REFERRALS. Should add -C/-CC/-R options (chase w/ prompting,
chase w/o prompting, disable referrals).
1999-09-05 19:20:01 +00:00
Hallvard Furuseth
33cc7d4cf1 Introduce and use LDAP_GCCATTR() = __attributes__() in gcc 1999-09-03 21:06:33 +00:00
Hallvard Furuseth
c09a2c63e7 Cleanup:
Fix printf formats, remove unused variables, add missing prototypes in slapd,
add static/const, add some return types or change to void return type.
1999-09-02 08:05:17 +00:00
Kurt Zeilenga
41e57c041f Add OpenLDAP RCS id 1999-09-02 00:52:43 +00:00
Hallvard Furuseth
553b40e6f8 Initialize rc 1999-09-01 05:14:42 +00:00
Kurt Zeilenga
c1b5068fe4 Apply Hallvard's memory leak plugs... 1999-08-20 00:55:22 +00:00
Howard Chu
2d99e86fc1 Remove extraneous newlines from non-LDIF output 1999-08-17 20:27:46 +00:00
Hallvard Furuseth
e559531407 Print "<DEFAULT>" instead of "0" when ldapport=0 in ldapsearch -v 1999-08-17 01:49:19 +00:00
Kurt Zeilenga
3f52596360 printf "ALL" to stderr. 1999-08-16 19:09:40 +00:00
Kurt Zeilenga
29274384a3 Remove temporary comment 1999-08-13 23:06:05 +00:00
Kurt Zeilenga
a3269d3625 Allow null dn. 1999-08-13 22:53:11 +00:00
Kurt Zeilenga
3c7f51b77f Fix tv.sec typo in last commit. srand(tv.tv_sec * (tv.tv_usec+1)) 1999-08-09 19:06:29 +00:00
Kurt Zeilenga
dd53a83946 Wrap prints of DN and other strings in double quotes so user can easily
determine if string contains leading/trailing whitespace.
1999-08-09 18:33:17 +00:00
Kurt Zeilenga
e0691dfbc0 create SASL_LIBS to hold -lsasl
create SECURITY_LIBS (top.mk) to order $SASL_LIBS $KRB_LIBS $TLS_LIBS
use $SECURITY_LIBS in Makefile.in's instead of $KRB_LIBS $TLS_LIBS
1999-08-05 02:25:19 +00:00
Kurt Zeilenga
58bcdbdc46 Add setup.dsp to workspace 1999-08-04 23:56:01 +00:00
Kurt Zeilenga
f846eee613 Add copyright notices. 1999-08-04 23:55:45 +00:00
Kurt Zeilenga
df8f7cbb9b s/exit(1)/exit(EXIT_FAILURE)/
s/exit(0)/exit(EXIT_SUCCESS)/
add <ac/stdlib.h> where needed and other minor header adjustments
1999-08-03 18:14:24 +00:00
Kurt Zeilenga
48d5465ab7 Add support for "foo:< http://localhost/path.
Requires FreeBSD's -lfetch...
Implementations to other URL APIs encouraged.
Probably should be moved to -llutil.
1999-07-31 03:23:26 +00:00
Kurt Zeilenga
9160692ab1 Remove "const" error... and add prototype for yet unimplemented
ldif_fetch_url().
1999-07-31 02:17:26 +00:00
Kurt Zeilenga
07b734035d Kludge ldapmodify to accept "version: 1" in LDIF input. 1999-07-31 00:35:30 +00:00
Kurt Zeilenga
b73b0c6158 Enhance LDIF handling
ldapsearch:
    use draft guidelines for determining when to use
    -t only writes binary attributes to files
    -tt writes all attributes to files
    output now lists URL instead of path to such files
    -T dir can be used to specify directory to create temp files in
    -V urlprefix can be used to change the URL prefix
    LDIF is now commented (can be disabled using -LL)
    LDIF now contains version attribute (can be disabled with -LLL)
LDIF:
    put interface changed to allow caller to specify how to encode
    put interface uses draft guidelines for determine when to base64 encode
    wrapping kludged to match old off by one bug
Tests:
    removed trailing space from some attributes (to avoid base64 encoding)
    enabled -LLL in defines.sh (should sed output to remove
        wrapping/comments/redundant separators)
Misc:
    updated codes outputting LDIF to use new put interface
TODO:
    handling of version attribute on input
    handling of URLs on input (ie: fetch URL)
1999-07-30 23:00:02 +00:00
Kurt Zeilenga
17a975b6fb Very crude LDIF changes:
add MODRDN newSuperior support
	add '#' support to ldapmodify (but not slurpd and ldbm tools)
1999-07-29 21:25:39 +00:00
Kurt Zeilenga
73276e84ae Import experimental referral implementation from OPENLDAP_DEVEL_REFERRALS.
Includes support for update referral for each replicated backend.
	Reworked replication test to use update referral.
Includes major rewrite of response encoding codes (result.c).
Includes reworked alias support and eliminates old suffix alias codes
(can be emulated using named alias).
Includes (untested) support for the Manage DSA IT control.
Works in LDAPv2 world.  Still testing in LDAPv3 world.
Added default referral (test009) test.
1999-07-16 02:45:46 +00:00
Julio Sánchez Fernández
6eae20d056 Include TLS_LIBS 1999-07-13 19:13:32 +00:00
Kurt Zeilenga
341e3681d6 s/NULL/'\0'/ where appropriate 1999-07-01 04:39:42 +00:00
Kurt Zeilenga
757631d205 Attempt to whip user password from command line. 1999-06-29 18:59:11 +00:00
Kurt Zeilenga
bf8eaf1f1e ldapmodify/add: Fix -P option
tests: use "ldapadd" instead of "ldapmodify -a"
1999-06-29 01:17:58 +00:00
Kurt Zeilenga
30d3d76758 Need to remove ldapadd$(EXEEXT). 1999-06-27 04:02:07 +00:00
Kurt Zeilenga
4dfba74846 Check for not LDAP_OPT_SUCCESS instead of LDAP_OPT_ERROR. 1999-06-22 05:47:14 +00:00
Kurt Zeilenga
21e081dc5b Separate autoconf generated values from "defaults".
ldap_defaults.h incorporates non-generated ldapconfig.h values.
	ldap_config.h.in is new template for autoconf generated defaults
		(namely directories and paths)
	ldap_config.h.nt, NT template (must be manually copied)
	s/<ldapconfig.h>/<ldap_defaults.h>/
	s/DIRSEP/LDAP_DIRSEP/ & s/DEFAULT_/LDAP_/
1999-06-17 03:54:25 +00:00
Kurt Zeilenga
81d8a939a7 Fix target directories. 1999-06-07 18:40:21 +00:00
Kurt Zeilenga
c5a684f8ed Add EXEEXT support (build only). 1999-06-06 05:32:55 +00:00
Kurt Zeilenga
9fef42d3f8 Enable browsing info in MSVC debugging configurations.
Toy with dllimport/dllexport stuff (think I'll leave the real dll work to
somebody else).
Added ldap_strdup() wrapper of ber_strdup().
1999-06-03 18:24:22 +00:00
Kurt Zeilenga
21c70857f1 s/<stdlib.h>/<ac/stdlib.h>/ 1999-06-03 00:37:44 +00:00
Kurt Zeilenga
f472d3abcf No anonymous unions. 1999-06-02 22:40:58 +00:00
Kurt Zeilenga
f61625264f Use ber_strdup() as needed. 1999-06-02 22:33:57 +00:00
Kurt Zeilenga
388d51fe2d Use ldap_mods_free() instead of local routine.
More memory handling changes.  Need to sort out how to deal with strdup().
1999-06-01 19:05:07 +00:00
Kurt Zeilenga
be3f7eadaa Update memory allocation calls. 1999-06-01 02:07:57 +00:00
Kurt Zeilenga
68e64e768b Use ber_mem* functions. 1999-06-01 00:04:36 +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
c3b1baa89f Correct minor oversights from last commit. 1999-05-29 19:08:57 +00:00
Kurt Zeilenga
16366cff99 Add warnings if ldap_set_option() fails.
Check for ldap_set_option() error using LDAP_OPT_ERROR, not -1.
(probably should check != LDAP_OPT_SUCCESS instead).
Added additional usage errors.
Used return(EXIT_FAILURE) instead of exit(1).
Used DIRSEP instead of '/' && '\\'
Moved verbose output to stderr.
1999-05-29 18:53:40 +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
40874c6d2c Add missing MSVC5 workspace/projects. 1999-05-26 19:49:10 +00:00
Kurt Zeilenga
fffc29df9b ITS#159 fix. ldaphost may be NULL when used as printf "%s" argument. 1999-05-24 20:08:32 +00:00
Kurt Zeilenga
5654a0b231 fix url vs url_in typo. 1999-05-21 22:20:28 +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
34c538fa0f s/NULLMSG/NULL/
Fix ldappasswd timeval.
1999-05-19 07:14:27 +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
786bbe4fc1 enclose macro arguments in () 1999-04-30 00:35:27 +00:00
Hallvard Furuseth
caaf24c482 Enclose CEILING/STRDUP macro args in () 1999-04-29 23:30:01 +00:00
Kurt Zeilenga
dba57a312c Add mkversion script to generate version.c files. mkversion generates
identification strings compatible with ident(1) and what(1).
Uses $(VERSION) generated from configure.in.  rm build/version
rm old version .c files
1999-04-28 05:40:17 +00:00
Kurt Zeilenga
a80ff50a67 Lint removal: signed i < unsigned j 1999-04-27 05:19:32 +00:00
Gary Williams
2948d34f0a adjust project settings 1999-04-14 17:08:31 +00:00
Hallvard Furuseth
1966222b50 Remove initialization of auto arrays 1999-04-04 22:02:20 +00:00
Hallvard Furuseth
f172f7ee9c Remove superfluous \ at end of lines outside macros; DEC cc doesn't like them. 1999-04-03 09:20:41 +00:00
Gary Williams
006c90fc92 add release configurations 1999-04-02 15:35:25 +00:00
Gary Williams
30a51ac013 create single-thread configurations 1999-04-01 21:46:48 +00:00
Ben Collins
b35e123bcb Use LN_H in order to link (or copy) ldapadd from ldapmodify 1999-03-13 19:34:09 +00:00
Hallvard Furuseth
973c830d32 Fix previous changes: //comment -> /*comment*/ 1999-03-09 22:24:50 +00:00
Hallvard Furuseth
f7b4f5e9d7 Pass LDAP_OPT_<ON/OFF> instead of (void*)flag to ldap_set_option 1999-03-09 07:19:18 +00:00
Hallvard Furuseth
95f6547963 Use free instead of ber_bvecfree to free privately malloced data, by JR Heisey 1999-03-09 05:56:13 +00:00
Hallvard Furuseth
ce9d86a278 Check for directory separator `\' in program name, by JR Heisey 1999-03-09 05:53:21 +00:00
Hallvard Furuseth
3cfa89c3d1 Improve usage message and check, by JR Heisey 1999-03-09 05:50:54 +00:00
Hallvard Furuseth
bc44910534 Remove a few typos in comments 1999-03-06 06:13:23 +00:00
Juan Gomez
728a1c6cd3 Added client-side support for MODDN request by adding a new switch to
ldapmodrdn so that it can take the newparent parameter. (Check -s option)
1999-03-04 03:12:12 +00:00
Kurt Zeilenga
66f145da21 Use ldap_memfree() instead of free(). 1999-03-01 21:17:48 +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
Hallvard Furuseth
14705241f6 cast pw_in to const unsigned char * 1999-02-20 08:13:35 +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
50fc6b18d5 Drop the _s from the ldap_perror argument to be consistent with other
ldap commands.
1999-02-08 04:07:49 +00:00