Commit Graph

641 Commits

Author SHA1 Message Date
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
1f1993989a s/enable-unix/enable-local/
s/LDAP_PF_UNIX/LDAP_PF_LOCAL/
s/AF_UNIX/AF_LOCAL/
s/PF_UNIX/PF_LOCAL/
2000-07-09 21:49:36 +00:00
Kurt Zeilenga
fe23628faa ITS#619: TLS PRNG initialization code
based upon patch provided by Ted C. Cheng <cheng@ix.netcom.com>
2000-07-08 22:17:50 +00:00
Kurt Zeilenga
b4d5d89151 Rev the LDAP_VENDOR_VERSION 2000-07-06 19:05:11 +00:00
Kurt Zeilenga
4f4f59f333 Rework <ac/errno.h> to provide a STRERROR. Prefers errlist over
strerror() as strerror() may not be thread safe.  Likely should
be used by SLAPD.
2000-07-06 01:24:52 +00:00
Kurt Zeilenga
20e6dcec3b Improved but still broken client tools. 2000-07-04 21:49:00 +00:00
Mark Valence
d4d03e36e5 Added "threads" config to slapd.conf. 2000-07-04 19:24:13 +00:00
Kurt Zeilenga
060ee8ee88 Add Steve Sonntag's (Novell) memory debugging extensions 2000-07-04 18:47:06 +00:00
Kurt Zeilenga
8917a2d772 Remove ldap_*_dn() prototypes of #if 0 routines 2000-06-30 22:31:21 +00:00
Kurt Zeilenga
0cfe5f75f8 Clarify LDAP_ATTRCHAR 2000-06-30 19:08:40 +00:00
Kurt Zeilenga
e82d2e042b Include tab in LDAP_SPACE 2000-06-30 02:19:39 +00:00
Kurt Zeilenga
aa4a44263d Fix inclusion of <sasl.h> 2000-06-29 19:36:32 +00:00
Kurt Zeilenga
7f24a010a4 Set TMPDIR 2000-06-26 01:24:38 +00:00
Kurt Zeilenga
e2fa599482 Move old files to the Attic 2000-06-25 22:01:42 +00:00
Kurt Zeilenga
6f44bf3ed3 Add comment regarding use of LDAP_OPT_SUCCESS v. LDAP_OPT_ERROR comparisons. 2000-06-25 17:57:47 +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
2a370cc4d1 Clarify LinuxThreads USR1/USR2 issue 2000-06-24 00:46:07 +00:00
Kurt Zeilenga
4e3c32d816 Introduce LDAP_V() and friends 2000-06-20 03:53:12 +00:00
Mark Valence
463cc5479f Update some prototype macros to build on NT. 2000-06-19 22:40:42 +00:00
Kurt Zeilenga
3b42f9ce2e Make that LDAP_NEEDS_PROTOTYPES... might as well use proper English 2000-06-19 22:20:36 +00:00
Kurt Zeilenga
52569170cc NEEDS_PROTOTYPE fix 2000-06-19 22:17:47 +00:00
Kurt Zeilenga
3532ba04b2 Fix NEEDS_PROTOTYPES 2000-06-19 21:48:10 +00:00
Kurt Zeilenga
ed761bec2f Remove SCHEMA_NOT_COMPAT #ifdef 2000-06-19 21:30:48 +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
e393afaeec Kill LinuxThreads clones 2000-06-17 18:49:25 +00:00
Kurt Zeilenga
12ffb6eeb8 Change cn=schema to cn=subschema to reflect subentry contains
subschema information.  subschema, monitor, config should be
per-backend subentries.
2000-06-14 01:29:51 +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
ec426532b2 Reworked thread code to better support thread-library specific
r/w locks and thread pools.  Hide internal structures (using
pthread'ish technics).  Place common code in threads.c.  Move
no-thread code to thr_stub.c.  Move thread pool code to tpool.c.
Removed setconcurrency call from initializer, added 'concurrency'
directive to slapd.  Tested code under pthreads, pth, and no-threads.
2000-06-13 02:42:13 +00:00
Kurt Zeilenga
1ef14875db Thought I fixed these errors previously... oh well. 2000-06-10 23:06:08 +00:00
Kurt Zeilenga
1d841d49d5 Fix LDAP_END_DECL bug, add LDAP_P() to rebind proc prototype, and
other minor changes.
2000-06-10 17:31:56 +00:00
Kurt Zeilenga
55dba4395f Update PF_INET6 and PF_UNIX detection, both default to auto 2000-06-09 23:09:51 +00:00
Kurt Zeilenga
70a7656d7f Detect getaddrinfo 2000-06-09 17:01:05 +00:00
Kurt Zeilenga
dc1e5a9392 remove IA64 lint 2000-06-09 06:24:10 +00:00
Kurt Zeilenga
e68b429d45 Really disable pthread rw locks 2000-06-08 00:29:32 +00:00
Kurt Zeilenga
e8b360eefd Disable pthread rwlock use til we sort out pool issues 2000-06-08 00:26:00 +00:00
Kurt Zeilenga
22b8b60e49 Add VLV and SortList Control API and related (and other) I-Ds 2000-06-07 19:39:49 +00:00
Mark Valence
33f4955c07 Add thread pool routines. 2000-06-07 19:21:45 +00:00
Kurt Zeilenga
6ad1c45bd3 Use LDAP_VFREE and friends. Other misc code cleanup. 2000-06-07 05:17:29 +00:00
Kurt Zeilenga
107e99e302 Add Pth specific r/w lock implementation. 2000-06-07 01:34:00 +00:00
Kurt Zeilenga
e5ebc553ac Rework URI parser to provide true scheme not proto/properties.
Plus more pthread rwlock code
2000-06-07 01:09:40 +00:00
Kurt Zeilenga
f192014c1a Use pthread rwlocks, if available 2000-06-07 00:28:35 +00:00
Kurt Zeilenga
e14261edf2 Additional unifdef'ing 2000-06-06 20:00:14 +00:00
Mark Valence
72bf2552eb In preparation for thread pools 2000-06-06 19:59:34 +00:00
Kurt Zeilenga
693fb9424a unifdef -DSLAPD_SCHEMA_NOT_COMPAT -USLAPD_SCHEMA_COMPAT 2000-06-06 19:43:18 +00:00
Kurt Zeilenga
4a1f646682 Move experimental Back-BDB2 to Attic 2000-06-06 01:23:17 +00:00
Kurt Zeilenga
1af849c720 DNSSRV use res_query, not res_search
Update configure and depend --enable-dnssrv upon finding res_query
Update back-dnssrv to better handle ManageDSAit control
2000-06-05 23:56:26 +00:00
Kurt Zeilenga
1aa4b07c98 Remove support for DNS DNs (not to be confused with X.500 DN using
domainComponents (DC)).
2000-06-05 20:07:02 +00:00
Kurt Zeilenga
c1117666b1 remove old STR_TRANSLATION feature. The use of this feature
was only of limited use with LDAPv2 (worked okay if no non-T.61
values existed) but downright dangerous in the face of LDAPv3.
Any translation must be schema aware and the BER isn't.
2000-06-05 19:22:19 +00:00
Kurt Zeilenga
7dc76e7139 move --enable-dns (LDAP_API_FEATURE_X_OPENLDAP_V2_DNS) to Attic 2000-06-05 07:19:09 +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
45c6324a9d Move ldapd into the Attic, quipu tools remain for now. 2000-06-01 23:00:22 +00:00
Kurt Zeilenga
2e0912622b ITS#537: lber io rewrite from Gambor Gombas.
Copyright 2000 Gábor Gombás. All rights reserved.
This is free software. You may redistribute and use it under the same
terms as OpenLDAP itself.
2000-06-01 20:59:21 +00:00
Kurt Zeilenga
ea67f4f758 Fix up referral commit. 2000-05-31 18:01:59 +00:00
Kurt Zeilenga
a26cef7fc8 LDAPv3 referrals changes by Steve Sonntag @ Novell 2000-05-31 17:34:43 +00:00
Kurt Zeilenga
a584fe9dc0 Move -DSLAPD_SCHEMA_COMPAT to acconfig.h... 2000-05-30 21:36:27 +00:00
Kurt Zeilenga
ea68f474fc rebuild after removal of dmalloc detection 2000-05-30 20:17:10 +00:00
Kurt Zeilenga
8ff6a39d9f Mark most of RFC 1823 API as deprecated. 2000-05-29 17:42:49 +00:00
Kurt Zeilenga
64f028a6ab New schema code is now the default.
Use -DSLAPD_SCHEMA_COMPAT to use 1.x compatible schema (deprecated).
2000-05-29 16:39:16 +00:00
Julio Sánchez Fernández
3e3acf87c8 Let the caller decide how liberal the schema parsing routines will be.
Most flags do nothing yet.
2000-05-28 22:45:56 +00:00
Kurt Zeilenga
dcee0a76d4 Rework DB_VERSION kludging 2000-05-25 23:14:53 +00:00
Kurt Zeilenga
2a4d69d70e Define HAVE_BERKELEY_DB not HAVE_BERKELEY_DB2 per new detection. 2000-05-25 23:07:09 +00:00
Kurt Zeilenga
8411a5319a New Berkeley DB detection 2000-05-25 20:44:07 +00:00
Gary Williams
780d4737af use HAVE_BERKELEY_DB and check DB_VERSION_MAJOR for differences 2000-05-25 20:41:55 +00:00
Gary Williams
862e624254 Added support for Berkeley DB3. Hidden behind
HAVE_BERKELEY_DB3.  Configuration support
hopefully coming soon.
2000-05-25 15:21:30 +00:00
Julio Sánchez Fernández
f84c43a43b Parsing and printing of extensions in schema definitions. 2000-05-21 23:32:39 +00:00
Kurt Zeilenga
9c00cb1b51 before including <pth.h>:
#define PTH_SYSCALL_SOFT 1
2000-05-19 20:47:32 +00:00
Kurt Zeilenga
8045b54124 Use getpassphrase() instead of getpass() if available. 2000-05-19 18:41:26 +00:00
Kurt Zeilenga
3c227e10b4 Map getopt symbols to new names to avoid conflicts 2000-05-18 16:13:02 +00:00
Kurt Zeilenga
d408824ce8 SLAPD_SCHEMA_NOT_COMPAT: Disable cn=Monitor & cn=Config 2000-05-15 23:39:27 +00:00
Kurt Zeilenga
49f4a7026d s/CN=SCHEMA/cn=Schema/ 2000-05-15 23:37:16 +00:00
Kurt Zeilenga
e9d0b98a10 Update lber-encode/decode man pages
Add ber_get_enum() for symmetry
2000-05-13 23:08:25 +00:00
Kurt Zeilenga
0bb431d3b3 Y2k copyright update 2000-05-13 02:25:54 +00:00
Howard Chu
3dc83998c0 Moved nt_err from liblutil to liblber, renamed WSAGetErrorString to
ber_pvt_wsa_err2string.
2000-05-12 21:16:15 +00:00
Howard Chu
605832eaa5 Added support for AIX security database:
configure.in: check for AIX security library, set in AUTH_LIBS macro
  top.mk: add AUTH_LIBS macro to SECURITY_LIBS
  portable.h.in: added HAVE_AIX_SECURITY macro (via autoheader)
  passwd.c: use AIX getuserpw in chk_unix. Also fix logic in chk_unix:
  	getpwnam must always succeed for the given user. It is not a
	fatal error if getspnam returns no result for the user: On
	systems that support /etc/shadow, its usage is optional. The
	same logic applies for AIX, SCO/HP SecureWare, etc.
2000-05-11 10:10:53 +00:00
Howard Chu
65d7521be1 Added LBER_OPT_LOG_PRINT_FILE to redirect the output of ber_error_print.
Used mainly on NT since stderr doesn't exist when slapd runs as a service.
2000-05-11 09:39:33 +00:00
Kurt Zeilenga
1dc3e3c408 Add basic and EXPERIMENTAL chroot() support. 2000-05-10 23:30:52 +00:00
Kurt Zeilenga
2c2a54d6d7 Add DNS SRV backend framework (a work in progress). 2000-05-10 18:17:38 +00:00
Howard Chu
f0c4f83ea2 libldap/tls.c: change tls_verify_cb to no longer ignore verification errors.
This means a ldaps connection may drop before any LDAP protocol exchange
occurs (due to expired cert, unrecognized CAs, etc.).
  Change ldap_pvt_tls_connect to copy any TLS error string to ld_error upon
connection failure, otherwise client just sees "can't contact LDAP server."

slapd/connection.c: add flush/delay when SSL_accept fails, to allow any
TLS alerts we generated to propagate back to the client. (Which will then
be picked up by ldap_pvt_tls_connect on the client...)
2000-05-10 17:07:09 +00:00
Howard Chu
9842b8fa87 Remove MINGW32 declarations of snprintf and vsnprintf, the new mingw32
distributions define them now.
2000-05-10 16:12:38 +00:00
Howard Chu
8a3100e636 Remove declaration of strerror_r, it clashes on AIX and we never use it
anyway.
2000-05-10 16:11:38 +00:00
Kurt Zeilenga
f224e69558 Add experimental code to check simple bind passwords
against Cyrus SASLdb.  Like other cleartext mechanisms,
should be protected from eavesdropping.
2000-05-10 04:29:51 +00:00
Kurt Zeilenga
d0555fffe6 Error handling changes including separation of client v. server
SASL to LDAP translation.  plus comments and other minor changes
2000-05-03 18:59:58 +00:00
Kurt Zeilenga
802ee714e4 Framework for authpasswd. Needs work. Behind #ifdef 2000-04-25 13:28:03 +00:00
Kurt Zeilenga
274bf59441 replace ldap_dnssrv_init() with lower level calls
ldap_domain2dn()
    ldap_domain2hostlist()
and provide prototype to soon-to-be-implemented
    ldap_dn2domain().
ldap_dnssrv_init(), if needed, can easily be implemented
using ldap_create(), ldap_set_option() and the above
commands.
2000-04-25 10:38:03 +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
177279176c Chage DEFAULT_DB_PAGE_SIZE to 4096 and allow external define to
override ldbm.h setting.
2000-03-17 20:28:36 +00:00
Kurt Zeilenga
d14c7ad7c2 Depend HAVE_NT_THREADS on _WINNT 2000-03-17 19:35:20 +00:00
Kurt Zeilenga
1aae2ffb46 Remove discrete right macro (not used) 2000-03-17 01:48:44 +00:00
Dmitry Kovalev
f28e0c1967 update Win32 build environment to support back-sql 2000-03-16 19:58:36 +00:00
Kurt Zeilenga
91f292bc00 Delete SLAPD_DISCRETE_ACI 2000-03-16 19:15:21 +00:00
Kurt Zeilenga
6141b1eebe Delete (again) unneeded discrete-aci flag and regenerate... 2000-03-16 19:14:48 +00:00
Dmitry Kovalev
8dc136ddd6 update Unix build environment to support back-sql
2 more steps left: add back-sql directory itself, and update Win32 build environment.
2000-03-16 18:54:11 +00:00
Kurt Zeilenga
17527368d1 work args of ldap_negotiated_sasl_bind_s() and provide examples
with authentication id and authorization ids.  Note: this routine
doesn't actually negotiate anything.  It likely should be renamed
ldap_sasl_auth_s() or ldap_sasl_bind_multistep() or something.
2000-03-14 02:54:08 +00:00
Kurt Zeilenga
8e6ba5831a tempnam() is available in MSVC5 2000-02-25 19:30:28 +00:00
Kurt Zeilenga
0dbaf87730 Another round of changes behind -DSLAPD_SCHEMA_NOT_COMPAT
plus these changes unhidden changes:
	remove now meaning --enable-discreteaci configure option
	fix ITS#451, slapd filters
	Add ber_bvecadd() to support above
	constify ldap_pvt_find_wildcard() and misc slapd routines
	renamed some slap.h macros
	likely broken something
2000-02-14 20:57:34 +00:00
Kurt Zeilenga
6968ede534 ITS#450: teach LDBM/GDBM about cursors 2000-02-11 02:05:14 +00:00
Kurt Zeilenga
9dde98577d Move ldap_unicode_t to ldap_pvt.h, typedef to ldap_ucs2_t for now.
ldap_ucs2_t is a short.  The unicode routines may break if
sizeof(short) != 2...
2000-01-27 05:27:36 +00:00
Kurt Zeilenga
4eb13130a9 typedef ber_int_t ldap_ucs4_t 2000-01-27 01:04:17 +00:00
Kurt Zeilenga
ed9969b1c4 Make ldap_utf8_bytes() act like strlen() not sizeof() 2000-01-23 23:33:01 +00:00