Commit Graph

693 Commits

Author SHA1 Message Date
Kurt Zeilenga
abf91ca1ff Initial ldapcompare(1) implementation. Adapted from patch
submitted by Jeff Costlow <j.costlow@f5.com> (ITS#1560).

Portions:
Copyright 2002, F5 Networks, Inc, All rights reserved.
This software is not subject to any license of F5 Networks.

This is free software; you can redistribute and use it
under the same terms as OpenLDAP itself.
2002-01-29 07:33:11 +00:00
Kurt Zeilenga
a8710d2105 Fix typo in last commit 2002-01-28 21:33:57 +00:00
Kurt Zeilenga
fef9741b52 Initial ldapwhoami implementation 2002-01-28 21:24:40 +00:00
Kurt Zeilenga
14662be692 Add whoami extended operation.
Add no-op control (needs backend implementation)
Updated modify password extended option API
Kludged control infrastructure to support frontend only controls
2002-01-28 20:25:30 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Kurt Zeilenga
b64374fba1 Fix typo in last commit 2001-12-20 05:27:55 +00:00
Kurt Zeilenga
a07ab15ea1 Minor cleanup 2001-12-20 03:00:53 +00:00
Kurt Zeilenga
2a24264098 Remove lint 2001-12-19 21:19:41 +00:00
Howard Chu
c0dbedca50 from jon@symas.com; include ldap_log.h for proper declarations, remove
unused variable
2001-12-17 22:37:47 +00:00
Howard Chu
63d4d0eb1e Fix ITS#1497 use strcmp instead of strncmp 2001-12-17 21:56:24 +00:00
Howard Chu
331a7bd1c5 More from jon@symas.com - argv[0] comparison must exclude EXEEXT. 2001-12-12 00:26:42 +00:00
Howard Chu
0552b1c53f NT updates from jon@symas.com. 2001-12-07 04:03:25 +00:00
Howard Chu
82eca519ae More from Jon Leichter @ Symas - platform-independent TMPDIR usage 2001-12-07 02:22:07 +00:00
Howard Chu
e6d6faf3c9 From jon@symas.com - patches for consistent use of directory separators
in pathnames.
2001-12-07 01:46:26 +00:00
Kurt Zeilenga
6ba3b26c09 Enhance error messages from Walter.Mueller@uibk.ac.at 2001-12-05 03:13:50 +00:00
Pierangelo Masarati
77dc11ba3c liberal treatment of trailing spaces in changetype and mod op lines in ldif files (needs -DLIBERAL_CHANGETYPE_MODOP) 2001-09-29 10:29:24 +00:00
Kurt Zeilenga
2c1273cd17 ITS#1328 LDIFv1 CR/LF fix 2001-09-25 18:48:48 +00:00
Kurt Zeilenga
97db0eb716 Don't ignore attribute list when -S is specified. 2001-09-04 06:06:44 +00:00
Kurt Zeilenga
0c13c5bbdd Use parens for clarity 2001-08-28 00:35:34 +00:00
Kurt Zeilenga
fe2361b855 Don't say "version: 2" 2001-06-21 20:32:04 +00:00
Kurt Zeilenga
44bef574c8 Updated pthread test and usage (avoid pthread_detach if possible)
don't use tmpnam()
2001-06-09 01:05:35 +00:00
Kurt Zeilenga
39d364c710 Fix filter printing 2001-05-18 00:27:08 +00:00
Kurt Zeilenga
383391b460 detect and use fcntl (for BSD/OS)
detect inet_ntop (for MacOSX)
2001-05-03 05:53:34 +00:00
Kurt Zeilenga
db71f0c8a7 Clean up some logic, based upon Novell patches 2001-05-02 19:52:09 +00:00
Kurt Zeilenga
3ea33ebd12 Add LDAP version to comment 2001-03-15 04:10:17 +00:00
Kurt Zeilenga
6b822b67ef Validate timelimit argument 2001-01-23 20:51:14 +00:00
Kurt Zeilenga
b873db292c Rename timelimit to timeout where it refers to the time out not the time limit. 2001-01-23 20:38:19 +00:00
Kurt Zeilenga
111dd4cc97 Move -V to -F so that -V can be used for version information 2001-01-19 04:55:38 +00:00
Kurt Zeilenga
867ed1c7c8 use "authcid" instead of "username". 2001-01-18 08:04:56 +00:00
Kurt Zeilenga
ed9bacc1a6 Change start tls warning message 2001-01-16 04:32:13 +00:00
Kurt Zeilenga
ba37cbc233 Fix passwd clearing bug 2000-11-06 15:53:02 +00:00
Kurt Zeilenga
5c9357fa81 Fix encoding of old password 2000-10-28 10:15:17 +00:00
Gary Williams
3a002e8768 enable new logging functions (behind NEW_LOGGING) 2000-10-25 15:03:22 +00:00
Kurt Zeilenga
b4368db948 Remove commented out (logging) code 2000-10-17 20:44:34 +00:00
Kurt Zeilenga
a43392cd42 return default to no logging 2000-10-17 20:43:33 +00:00
Kurt Zeilenga
9ad5246a9a Don't print bind dn, it's confusing when using SASL 2000-10-13 18:57:56 +00:00
Kurt Zeilenga
9e1458724b Use LDAP_VERSION3 instead of 3 2000-10-13 18:30:24 +00:00
Gary Williams
fd4b8ba0cd example client using new logging 2000-10-12 20:13:20 +00:00
Kurt Zeilenga
5a32ff0603 Add missing 'static'... (ITS#823,825,828)
as reported by Jeff Earickson <jaearick@colby.edu>
other suggestions to be separately reviewed
2000-10-11 23:42:53 +00:00
Kurt Zeilenga
e6dc9d1889 Update ldappasswd binddn bug, man page and error reporting 2000-10-11 04:56:08 +00:00
Kurt Zeilenga
9e450558d8 Fix add of empty value. 2000-10-03 22:05:28 +00:00
Kurt Zeilenga
3d47cb33c1 Fix spelling error 2000-09-19 20:47:22 +00:00
Ben Collins
bca61801a1 Fix fprintf\'s, missing `prog\' argument 2000-09-15 02:48:10 +00:00
Kurt Zeilenga
e366aefffc Fix ldap_init/initialize error checking 2000-09-13 21:49:31 +00:00
Kurt Zeilenga
8d2c074a80 Fix -R processing 2000-09-07 01:15:52 +00:00
Kurt Zeilenga
52d2b2ec51 user argument should be optional 2000-09-06 18:45:12 +00:00
Kurt Zeilenga
70f28f1ba4 segfault by ldappasswd -A -S (ITS#714) fix
suggested by Fumitoshi UKAI <ukai@debian.or.jp>
2000-09-06 18:28:15 +00:00
Kurt Zeilenga
fb6590f8db Add -H to usage 2000-09-05 18:52:10 +00:00
Kurt Zeilenga
0e920e9d29 Back out last change 2000-08-31 20:53:12 +00:00
Kurt Zeilenga
78f6d75586 Fix URI 2000-08-31 20:52:14 +00:00
Kurt Zeilenga
f6a1c05b68 Add missing fprintf param 2000-08-25 23:51:10 +00:00
Kurt Zeilenga
ef3fb24f39 Fix typo which escaped my obviously flawed midnight test
(I must have been dreamed that the 'make test' completed
successfully)
2000-08-25 23:46:09 +00:00
Kurt Zeilenga
e97cdfb7a9 Add support of "-H uri" 2000-08-25 05:31:29 +00:00
Randy Kunkee
45ef1d2c90 Clean up lint. 2000-08-23 22:49:44 +00:00
Kurt Zeilenga
fc6c7fefcc Fix empty AND/OR search list bug 2000-07-27 23:08:48 +00:00
Kurt Zeilenga
0f5c87a41c Clean up usage() 2000-07-17 21:54:20 +00:00
Kurt Zeilenga
6393523ffa Expose sasl flags to -lldap (so they can be quiet)
Fix interactive and automatic modes.  Quiet needs work.
2000-07-17 21:23:59 +00:00
Kurt Zeilenga
95eea5accc First cut SASL "interactive" and "quiet" modes (default is "automatic") 2000-07-17 00:56:29 +00:00
Kurt Zeilenga
6454508ec6 Update usage to note that user may not be represented by a DN 2000-07-16 00:28:57 +00:00
Kurt Zeilenga
908368a245 Fix authmethod defaulting 2000-07-16 00:23:41 +00:00
Kurt Zeilenga
2c323d2b2a Add -x (simple authentication) 2000-07-16 00:21:41 +00:00
Kurt Zeilenga
1e562b0d1f Make it all work. 2000-07-16 00:14:08 +00:00
Kurt Zeilenga
4d45c61600 Cleanup previous commit 2000-07-15 23:34:27 +00:00
Kurt Zeilenga
d2b05a3858 Rework SASL command line arguments. Default is now to authenticate
using best available mechanism.  (authzid prompting to be disabled)
To use simple bind, -x is required (implied if -P 2) with -D/-[Ww]
To use simple "anonymous" bind, just -x will do.
2000-07-15 23:25:46 +00:00
Kurt Zeilenga
5fc22599e2 Update SASL code to reuse context through life of session.
Replace 'negotiated' with 'interactive' bind
Add hooks for SASL/EXTERNAL
Disable SASL security layers
Rework SASL command line and config file parameters
2000-07-13 22:54:38 +00:00
Kurt Zeilenga
04bfb7efe4 Add missing EOL 2000-07-05 23:11:37 +00:00
Kurt Zeilenga
f6cda93bd1 Correct improper ldap_result() result checking... 2000-07-04 21:59:41 +00:00
Kurt Zeilenga
20e6dcec3b Improved but still broken client tools. 2000-07-04 21:49:00 +00:00
Kurt Zeilenga
8be1d467b8 Add reporting of LDAPv3 referrals. Should also report returned controls.
Also, as written, the code will behave better in the face of unsolicited
noticifications (such as notice of disconnect).  However, code needs to
be improved to better distinguished such from expected result response.
Delete improvements are limited to base object delete.  Should be applied
to -p[rune] option as well.
2000-07-03 19:03:22 +00:00
Kurt Zeilenga
3f6e23cb0c Add LDAPv3 rename support 2000-06-29 19:35:51 +00:00
Kurt Zeilenga
e2fa599482 Move old files to the Attic 2000-06-25 22:01:42 +00:00
Kurt Zeilenga
1a862732ee Fail if ldap_set_option fails 2000-06-25 18:17:47 +00:00
Kurt Zeilenga
bf9231ac40 Round 2 of tools work.
-R now ignored
-C added to chase.  No rebind proc yet, no checking of appropriate authentication.
complain if non-critical TLS was not started.
Fail if requested version is not supported.
ldapdelete:
  deletechildren modified to use ldap_search_ext_s()
  fixed deletechildren dn memory leak
ldapsearch:
  modified to use ldap_search_ext()
2000-06-25 18:07:15 +00:00
Kurt Zeilenga
5f20cf1ed5 Modify ldapsearch(1) significantly. Now handles LDAPv3 search
references, extended results, and extended partial results.  LDIF
extended to support these new features and reported version 2.
-L now limits output to LDIFv1 for compatibility reasons.  No
-L is now LDIFv2.  Old alternative form is no longer supported.

Use LDAP_TMPDIR (in ldap_config.h) instead of hardcoded /tmp
Use LDAP_FILE_URI_PREFIX (in ldap_config.h) instead of hardcoded
	file://tmp/
2000-06-25 00:35:17 +00:00
Kurt Zeilenga
49f4147385 Added -llber 'N' ber_printf format which inserts a NULL if
an internal flag set.  Used for SEQUENCE testing.  Flag must
be set using debugger.  Modified ber_printf to use new format
were needed for extensibility testing.

Added first cut -lldap support for extended responses.
Modified ldapsearch(1) to handle v3 search references when not
chasing.  Also added extended/unsolicited notification handling
and extended partial response handling.  Changes include a
number of LDIF enhancements.

Fixed getpassphrase() returns NULL bugs
2000-06-24 01:40:39 +00:00
Kurt Zeilenga
f48234f5bf No need to include <lber.h> 2000-06-20 17:02:19 +00:00
Kurt Zeilenga
e7791e2f93 Adjust -Z[Z] usage statements
Change ldapsearch to only produce LDIF.
2000-06-19 16:19:59 +00:00
Kurt Zeilenga
9ef1a740c2 Round one of LDAP_F() macro changes. In this round we rename
macros into our namespace and limit use to headers.  A subsequent
round will add macros to separately handle forward declarations
of variables from declaration of function prototypes.  The last
round will add additional macros for declaring actual variables and
functions.
2000-06-18 19:48:07 +00:00
Kurt Zeilenga
701cc91e8d Fix getpassword bug 2000-06-14 03:07:33 +00:00
Kurt Zeilenga
5417fdfea7 Rename ldap_start_tls() to ldap_start_tls_s() for consistency sake.
Misc other header changes.
2000-06-13 20:45:30 +00:00
Kurt Zeilenga
40b71cd8e8 undef DEFSEP before defining it 2000-06-10 07:19:07 +00:00
Kurt Zeilenga
51e619d424 Add ManageDSAit support to back-dnssrv
Fix backend critical controls crash
Move 'associatedDomain' to core.schema
2000-06-05 03:10:46 +00:00
Kurt Zeilenga
ea069cb7c2 New indexer/filter codes (test suite works) with cheats
Updated NT Project files (with Cyrus SASL library depend)
2000-06-04 22:59:38 +00:00
Kurt Zeilenga
781a8e2afc Use ldap_parse_result instead of deprecated ldap_result2error 2000-06-03 16:28:47 +00:00
Kurt Zeilenga
34edec3107 Strip installed executables
better library clean
2000-05-30 18:23:56 +00:00
Kurt Zeilenga
dfc850ceb3 Force referrals on 2000-05-29 20:43:29 +00:00
Kurt Zeilenga
8045b54124 Use getpassphrase() instead of getpass() if available. 2000-05-19 18:41:26 +00:00
Kurt Zeilenga
c923fe5401 s/bindpw/passwd/ 2000-05-16 05:08:25 +00:00
Kurt Zeilenga
9267700fb9 Fix password handling for SASL 2000-05-16 02:16:54 +00:00
Kurt Zeilenga
ebfe58344c Fix sasl passwd handling (needs to be copied to other tools) 2000-05-16 01:45:15 +00:00
Kurt Zeilenga
0bb431d3b3 Y2k copyright update 2000-05-13 02:25:54 +00:00
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
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
52ca931b70 ignore SIGPIPE 1999-01-20 22:01:14 +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
ed0ae4ef14 Don't use initializers for auto vars. 1999-01-20 01:00:12 +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
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
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 Zeilenga
9171892bd9 Should have left 'scope' alone. 1998-12-29 05:44:18 +00:00
Kurt Zeilenga
8d1523c503 Make ldap_set_option options optional. 1998-12-29 05:33:34 +00:00
Dave Storey
61b430be33 Add support for -P protocol_version. 1998-12-27 14:08:46 +00:00
Hallvard Furuseth
77edee0260 Don't use initializers for auto arrays 1998-12-27 09:04:06 +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
Dave Storey
13457efbbc Code cleanups. MD5 and SHA1 routines should be a little faster and easier to read. 1998-12-22 14:31: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
5c6ad6c5b1 ldif'ize ldif library (ie: everything is now in the ldif_ namespace) 1998-12-20 22:28:33 +00:00
Dave Storey
9697ad210a Added support for password prompting. (-W switch) 1998-12-15 02:00:09 +00:00
Dave Storey
d8090dea55 Streamlined Kerberos Code. 1998-12-14 20:39:02 +00:00
Dave Storey
10cbeba936 Added Kerberos support.
Added Password auto-generation.
Added salts for md5 and sha.
Rewrote make_salt().
Made ldap-devel conformity changes.
1998-12-14 18:36:51 +00:00
Kurt Zeilenga
65e4923d75 Backout previous changes made by Dave as they excessive reformatting,
reindentation, and use of spaces instead of tab.  Diffs will be reviewed
to identify and commit only functional changes as time permits.
Note: this is more my fault than Dave's.   I should have provided
clearer guidance.   Live and learn.
1998-12-14 10:10:41 +00:00
Dave Storey
648f2e2f12 Added support for salted passwords.
Added password auto-generation capability.
Added Kerberos code.
Updated salt generator to be much more random().
1998-12-12 06:12:03 +00:00
Dave Storey
50dbc7d03b Updated Kerberos code, added password prompting. <dave@tamos.net> 1998-12-12 06:08:59 +00:00
Dave Storey
d50231be14 Updated Kerberos code, added password prompting, more detailed usage(). <dave@tamos.net> 1998-12-12 06:08:23 +00:00
Dave Storey
f32bb04ee1 Updated Kerberos code, password prompting, added detailed usage(). <dave@tamos.net> 1998-12-12 06:07:41 +00:00
Dave Storey
84c774854f Updated Kerberos code, password prompting, detailed usage(). <dave@tamos.net> 1998-12-12 06:05:44 +00:00
Kurt Zeilenga
6d113f53a0 Apply update from Dave with password prompting. 1998-12-06 20:07:29 +00:00
Kurt Zeilenga
74394bfb2d Fix ^I to \t in usage printf 1998-12-06 19:49:14 +00:00
Kurt Zeilenga
f0a32aed71 Add ldappasswd program contributed by David E. Storey <dave@tamos.net> 1998-12-06 03:44:28 +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
30cefc46de Add KRB_LIBS to makefiles. 1998-11-25 23:49:12 +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
8111fb612e $BINDIR should be $bindir 1998-11-20 18:12:31 +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
a8f7f0b3c7 Use "generic" ac headers. 1998-11-15 06:54:30 +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
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
36378ea411 Updated MSVC5 workspaces and projects.
Added ac/stdarg.h and updated liblber encode/decode to use it.
1998-11-06 01:18:49 +00:00
Hallvard Furuseth
d171cd4f42 Some gcc -W cleanup 1998-11-04 13:15:18 +00:00
Kurt Zeilenga
500351993c Replaced #ifdef'ed ldap_lderrno() call with ldap_get_option() call. 1998-11-04 01:44:41 +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
f634a0d40f Fix install-local typo 1998-11-03 17:03:02 +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
adb49a3daf Working LDAP search on NT4! 1998-10-25 17:40:01 +00:00
Kurt Zeilenga
2a869f5a99 merged with autoconf branch 1998-10-25 01:41:42 +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
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
8d5c2b41e6 LDAPworld P3: SLAPD LDBM Generation with Multiple Backends 1998-08-09 02:33:01 +00:00
Kurt Zeilenga
42e0d83cb3 Initial revision 1998-08-09 00:43:13 +00:00