Commit graph

1703 commits

Author SHA1 Message Date
Howard Chu
a6b3a92cc5 Added ld_req_mutex and ld_res_mutex to protect ld_requests and ld_responses
queues for multithreaded access to LDAP*'s. Also used to protect writes and
reads of ld_sb, respectively. Appears to work...
2003-02-13 10:43:16 +00:00
Pierangelo Masarati
262d021ecf minor cleanup 2003-02-11 09:23:28 +00:00
Kurt Zeilenga
22215a396c Remove lint 2003-02-10 19:59:32 +00:00
Kurt Zeilenga
aa291a3492 We should be calling libtool --finish when install libraries 2003-02-09 23:10:29 +00:00
Kurt Zeilenga
4b3396f5fd unifdef -DLDAP_NOCACHE 2003-02-09 07:42:18 +00:00
Kurt Zeilenga
c34e59be35 Consistently add cancel.c to makefiles 2003-02-09 01:54:41 +00:00
Kurt Zeilenga
48d47954a6 Rework #ifdef'ing of expermental controls to ease release engineering
using LDAP_DEVEL (to indicate experimental) to enable experimental features
(true for HEAD unless LDAP_REL_ENG is defined)
2003-02-08 21:53:05 +00:00
Pierangelo Masarati
1b13edfa54 I suggest the coder(s) of the cyrus stuff to check out the prompt stuff 2003-02-07 09:58:21 +00:00
Pierangelo Masarati
6c32533d02 according to sasl documentation, prompts is filled only if SASL_INTERACT is returned 2003-02-07 09:55:00 +00:00
Jong Hyuk Choi
85b1783d5c LDAP Sync Operation (draft-zeilenga-ldup-sync) as a groundwork for an LDAP replication design 2003-02-05 07:37:02 +00:00
Pierangelo Masarati
e5a1418756 improve last commit 2003-02-04 19:27:56 +00:00
Pierangelo Masarati
c432154ad1 allow multiple URIs (need to backport to back-ldap) 2003-02-04 18:49:58 +00:00
Jong Hyuk Choi
e1bf8cc437 Intermediate Response 2003-02-03 17:28:19 +00:00
Howard Chu
18df386b43 Fix ITS#2161, the check is meaningless anyway. 2003-01-30 00:28:36 +00:00
Jong Hyuk Choi
4f64bd9402 LDAP cancel misc patch 2003-01-27 17:08:51 +00:00
Jong Hyuk Choi
0c43007e55 LDAP cancel operation 2003-01-25 00:36:50 +00:00
Kurt Zeilenga
35f673aaa5 ITS#2267: SASL empty cred fix 2003-01-21 17:31:55 +00:00
Kurt Zeilenga
fc75445270 #ifdef LDAP_PF_LOCAL needed. 2003-01-20 20:10:03 +00:00
Hallvard Furuseth
3bd76701d1 Fix printf format errors. 2003-01-19 14:07:02 +00:00
Hallvard Furuseth
120e39b533 Cast ctype.h arguments to unsigned char. 2003-01-19 14:05:23 +00:00
Hallvard Furuseth
265b7e22c6 Insert missing initializers, to silence gcc warnings. 2003-01-19 13:38:44 +00:00
Hallvard Furuseth
933121a7d9 'static' must come before 'const'. 2003-01-19 13:35:53 +00:00
Hallvard Furuseth
1fbbc11811 Fix LBER_ERROR vs. -1 confusion. 2003-01-19 13:10:17 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Kurt Zeilenga
3dea614e99 cleanup 2002-12-31 05:55:06 +00:00
Pierangelo Masarati
d758296595 silence warnings 2002-12-23 12:02:29 +00:00
Howard Chu
0c2439f5ef Added subjectAltName:IPADDR tests to ldap_pvt_tls_check_hostname() 2002-12-18 21:43:17 +00:00
Howard Chu
c102809fab Use ber_flatten2 to avoid excess mallocs 2002-12-18 19:16:31 +00:00
Howard Chu
464292b50c Remove unneeded sasl_ssf param from ldap_int_sasl_open(),
it's set by ldap_int_sasl_external().
2002-12-18 03:09:52 +00:00
Howard Chu
95a512f849 Fix typo in UDP logmsg 2002-12-16 18:17:20 +00:00
Hallvard Furuseth
3b591dd4f6 Fix const errors. 2002-12-11 08:30:29 +00:00
Kurt Zeilenga
56ebd53e51 expand authid buffer 2002-12-08 07:56:49 +00:00
Kurt Zeilenga
840e7f2c5c Include <ac/unistd.h> not <sys/types.h> and <unistd.h>
Use sizeof( string ) to determine buffer size
Put authzDN in same for as used on server
(We could, just as well, set authid to "fubar" as it matters
not what it is set to)
2002-12-07 18:32:40 +00:00
Pierangelo Masarati
58c18226e0 on my system need headers to define geteuid() and so 2002-12-07 17:32:33 +00:00
Howard Chu
cf6a9d9d0f For LDAP_PROTO_IPC set the SASL EXTERNAL authid to allow the mech to be
used by the client side. Please review.
2002-12-07 13:06:20 +00:00
Howard Chu
d7c0a19aab Added check for sendmsg(). Added hack to use BSD sendmsg()/recvmsg() to
propagate peer creds if no explicit PEERCRED facility exists. Works
on Solaris 8.
2002-12-04 16:03:02 +00:00
Kurt Zeilenga
c0f8e30d22 cleanup 2002-12-04 05:13:14 +00:00
Kurt Zeilenga
73b4170a6c Rework libldap to not attempt to set LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE 2002-12-04 04:51:55 +00:00
Kurt Zeilenga
da76c1951e First-cut proxy authorization support. 2002-12-03 06:11:32 +00:00
Kurt Zeilenga
9ba95dd027 ITS#2221: getaddrinfo(3) not thread-safe on some platforms (namely
due to res_() routines).  Change all res_() dependent routines to
share same mutex.
2002-12-03 01:15:03 +00:00
Howard Chu
4056a8c8a7 Fix ITS#2200, must send non-NULL cred even if it's zero-length. 2002-11-28 16:15:27 +00:00
Kurt Zeilenga
661541fdfc Fix error handling 2002-11-28 04:36:22 +00:00
Kurt Zeilenga
5fe7d38e1c Add whoami.c and passwd.c and other minor tweaks to control cleanups 2002-11-28 02:44:38 +00:00
Kurt Zeilenga
235973571a proxy authz control (client only)
Misc control cleanups (client only)
2002-11-28 02:26:55 +00:00
Howard Chu
e721e6bec9 Fix ITS#2187, recursively free all requests 2002-11-27 03:57:36 +00:00
Howard Chu
1702d408bf ITS#2184 maxbuf tweaks from Larry Greenfield @ CMU 2002-11-27 03:51:46 +00:00
Pierangelo Masarati
256f5bbe57 silence warnings 2002-11-10 19:57:16 +00:00
Howard Chu
6b53b4c507 Plug memleak in previous commit 2002-10-24 23:51:34 +00:00
Howard Chu
ddfb4b775b Forced commit, undo previous accidental checkin. 2002-10-24 11:40:37 +00:00
Howard Chu
4396ad3316 ITS#2153, make sure sockbuf buffer is empty before returning (-2) from
try_read1msg. Blind fix, problem was not duplicated/tested.
2002-10-24 11:39:06 +00:00
Howard Chu
e2d245e698 Fix comment garbled in 2.1.6. (Very weird, how did this happen?) 2002-10-23 02:45:44 +00:00
Kurt Zeilenga
75e1620ee4 Add copy of OPL 2.0.1 and note in files which specifically refer
to 2.0.1 as to the location to the copy.
2002-10-15 23:22:20 +00:00
Kurt Zeilenga
63e7c9e796 first cut at ditStructureRule and nameForm routines 2002-10-13 01:36:58 +00:00
Howard Chu
a9fed89e3f In sb_tls_bio_read/write, check for EAGAIN in addition to EWOULDBLOCK.
According to read(2)/write(2) EAGAIN is the only one we're interested in.
Fixes HP-UX 11.
http://www.openldap.org/lists/openldap-software/200105/msg00564.html
2002-10-11 06:22:24 +00:00
Luke Howard
a4ace0ba68 Fix crasher in ldap_domain2dn() 2002-10-10 08:59:19 +00:00
Kurt Zeilenga
cf318d2340 Add ditContentRule routines 2002-10-09 02:56:46 +00:00
Kurt Zeilenga
f833b02518 Fix realloc() bugs 2002-10-08 20:37:30 +00:00
Howard Chu
e37ccca9aa Fix ldap_int_get_controls for optional values 2002-10-07 19:58:10 +00:00
Kurt Zeilenga
491e75548c ITS #2121 submitted by Dave Steck <dsteck@novell.com> with minor changes.
Patch to allow referrals to be read on synchronous non-search operations.
Treat referrals the same way as MatchDN or ErrorString values.
Store them in the ld structure and provide an option for ldap_get_option
to retrieve them
2002-10-02 19:14:02 +00:00
Kurt Zeilenga
bbbf2f4ca7 Fix handling of non-critical controls for backends which
support no controls.
2002-09-24 18:20:59 +00:00
Howard Chu
4d8a2e2815 Remove dependencies on HAVE_VSNPRINTF, use replacement in liblutil/stdio.c
if needed. Same check for snprintf.
2002-09-06 20:54:22 +00:00
Howard Chu
ee30206bc2 Merged ldap_get_values_ber into ldap_get_attribute_ber. 2002-09-06 04:57:21 +00:00
Howard Chu
6a903bc1e5 Added new ldap_get_{dn,attribute,values}_ber functions for linearly
processing a search entry. Avoids O(n^2) ldap_get_values() behavior.
2002-09-05 11:33:32 +00:00
Howard Chu
af05dd5511 Set SSL session cache context ID 2002-09-04 07:17:31 +00:00
Howard Chu
f83d30a727 Fix previous commit - still need X509_free for peer cert.
Just not for local/my cert.
2002-09-04 02:28:42 +00:00
Kurt Zeilenga
a83cc88edd Move ldap_control_dup() to ldap_pvt.h 2002-09-04 02:14:12 +00:00
Howard Chu
5d062ef54c Don't call X509_free after SSL_get_certificate, it's not a duplicate. 2002-09-04 01:56:09 +00:00
Howard Chu
3099d89d9e Don't use sasl_set_alloc on Cyrus 2, it manages all of its memory
internally and we don't want to get in the way.
2002-09-02 22:25:26 +00:00
Howard Chu
90b1e7bd45 Fix ldap_X509dn2bv, OpenSSL gives us DN attributeTypes in EBCDIC 2002-09-02 13:46:56 +00:00
Pierangelo Masarati
c76b36254c cleanup comments 2002-08-31 10:41:49 +00:00
Howard Chu
17493164ea Fix previous commit 2002-08-31 06:23:46 +00:00
Howard Chu
e3304da727 OS/390 EBCDIC support 2002-08-31 05:14:43 +00:00
Howard Chu
d11b134709 Fix large SASL reads. Use EAGAIN instead of EWOULDBLOCK (was right the
first time after all. see read(2) and write(2)...)
2002-08-30 10:11:54 +00:00
Pierangelo Masarati
864f05497e allow different solutions to debug sasl shutdown 2002-08-29 17:45:12 +00:00
Pierangelo Masarati
c2efb8788b when shutting down a server with open connections (back-{ldap,meta}),
the backend attempts a ldap_unbind() that results in calling
ldap_pvt_sasl_mutex_lock() with a NULL argument, causing a SIGSEGV.
I added a few assert() to catch this (I wonder if this might
be related to ITS#1982 "kill -INT corrupts database").
2002-08-29 16:03:38 +00:00
Howard Chu
1dd1c375bb Fix previous commit - use EWOULDBLOCK instead of EAGAIN 2002-08-29 13:38:36 +00:00
Howard Chu
456e6c73ab Fix ITS#1983, handle writing of large requests. Only one pending request is
allowed per LDAP* handle. It works, but needs review.
2002-08-29 12:12:36 +00:00
Pierangelo Masarati
519bf9e28a cleanup logging 2002-08-29 10:42:42 +00:00
Howard Chu
010dbff2cc Fix ITS#1983, in sb_sasl_write, set errno = EAGAIN to tell upper layers to
retry partial writes
2002-08-29 10:12:35 +00:00
Howard Chu
5ec4ef6e59 Added no-op for SASL_VERSION_MAJOR < 2 2002-08-28 08:35:38 +00:00
Howard Chu
3cb7a09eb0 Added check for Cyrus SASL sasl_version() 2002-08-28 07:12:22 +00:00
Kurt Zeilenga
7dc1e069e8 Increase res_query buffers to 64k 2002-08-24 17:03:24 +00:00
Pierangelo Masarati
4046c4226e add upper/lower funcs that also compute the length of the string (not used yet) 2002-08-23 08:45:17 +00:00
Kurt Zeilenga
678d686017 make dc const 2002-08-17 19:59:35 +00:00
Kurt Zeilenga
472484725f Update dn2domain() to use str2dn() instead of explode_dn() 2002-08-17 19:42:59 +00:00
Howard Chu
771974f99d ITS#2019 Initialize utils properly 2002-08-10 23:34:55 +00:00
Kurt Zeilenga
ca5aa3b615 Some more sockaddr_in v sockaddr_storage cleanup 2002-08-10 03:48:09 +00:00
Kurt Zeilenga
b3bbe586b6 ITS#2018: use sockaddr_storage
based upon patch provided by <thorild@Update.UU.SE>
2002-08-09 22:14:43 +00:00
Kurt Zeilenga
9c28c9b361 Zap LDAPv2-only stuff 2002-08-08 03:01:14 +00:00
Kurt Zeilenga
9c9bd4d5ab Set O_EXCL 2002-08-05 19:49:27 +00:00
Howard Chu
d9eac72099 ITS#1995 return error text when ldap_pvt_tls_check_hostname fails 2002-08-01 03:23:29 +00:00
Kurt Zeilenga
dc4413349e Fix up restart code for EINTR 2002-07-28 05:30:39 +00:00
Kurt Zeilenga
89b3550f95 Clarify error messages 2002-07-26 17:35:57 +00:00
Howard Chu
1a0ca2195e Moved <stdio.h> before <ac/stdlib.h> 2002-07-26 03:16:21 +00:00
Howard Chu
5dc098dab0 Wrap get_ca_list opendir code with #if HAVE_DIRENT_H || dirent to avoid
compile errors on incompatible build platforms.
2002-07-24 19:36:03 +00:00
Kurt Zeilenga
e6460769ab Misc sprintf/snprintf cleanup 2002-07-23 18:26:33 +00:00
Stig Venaas
26b33bf614 Fixes ITS#1935 2002-07-16 02:38:14 +00:00
Stig Venaas
bf5e3a15ca Use AF_INET instead of AF_UNSPEC when IPv6 disabled 2002-07-12 15:36:33 +00:00
Julius Enarusai
6107ba67d2 Coverted LDAP_LOG macro to use subsystem ID int values instead of string values 2002-07-11 20:33:24 +00:00
Kurt Zeilenga
d13285fdd8 Fix possible under allocation of buffer 2002-07-08 18:45:53 +00:00
Howard Chu
07ffaeaac8 ITS#1924 use GENERAL_NAMES_free instead of ext_free. 2002-07-05 21:59:02 +00:00
Kurt Zeilenga
2de291ed6e Cut back on the logging... 2002-06-21 19:49:25 +00:00
Kurt Zeilenga
cdce8064e5 ITS#1898: ldap_controls_dup() writes beyond allocated memory
patch suggested by Dave Steck <dsteck@novell.com>
2002-06-21 19:14:37 +00:00
Kurt Zeilenga
0371c61073 Add monitorContext rootDSE attribute 2002-06-19 06:44:16 +00:00
Howard Chu
6f8b100f6b Finish implementation of get_ca_list() 2002-06-14 06:09:24 +00:00
Howard Chu
56cba7f97c In ldap_extended_operation_s, check for NULL retoidp and retdatap
before storing NULL.
2002-06-13 16:26:47 +00:00
Kurt Zeilenga
fe86a81e25 VLV clean 2002-06-09 06:12:24 +00:00
Howard Chu
70092b38fb Fix ITS#1843, don't deref NULL string in ldap_pvt_str2upper 2002-06-07 13:27:25 +00:00
Howard Chu
8101798791 Better SASL_MAXBUF fix 2002-06-07 03:40:16 +00:00
Howard Chu
353f627aa4 Eliminate SASL client session_callbacks. Since proc was always NULL they
never did anything anyway.
2002-06-06 01:44:38 +00:00
Kurt Zeilenga
2c7dae116b More argument handling updates
(don't check what we expect applications to check).
2002-06-06 00:26:50 +00:00
Kurt Zeilenga
1064f52dae Fix typo in last commit 2002-06-05 16:39:15 +00:00
Kurt Zeilenga
40ef77a8f8 Add error handling cleanup 2002-06-05 15:51:42 +00:00
Kurt Zeilenga
99f5983fb6 Consistently don't check for NULL session handle and other pointers.
Application is responsible for providing valid session pointers.
2002-06-05 15:46:26 +00:00
Howard Chu
7de25993f5 Fix NT_LINK_LIBS, UNIX_LINK_LIBS 2002-05-17 23:41:26 +00:00
Howard Chu
2ca4b0ebfc ITS#1806, Cyrus 1 doesn't give back our callbacks pointer, must stash it
ourselves.
2002-05-06 23:56:35 +00:00
Howard Chu
ae3a80eb09 Fix in 1.50 applies to Cyrus 1 as well as Cyrus 2. 2002-05-05 19:15:29 +00:00
Howard Chu
e8e7847175 ITS#1797 silence uninit'd var warnings 2002-05-04 10:52:05 +00:00
Howard Chu
3590877b77 Initialize authid in case ldap_pvt_tls_get_my_dn fails 2002-05-04 01:32:41 +00:00
Howard Chu
0390a171b9 Changed default tls_opt_require_cert value to LDAP_OPT_X_TLS_DEMAND; force
a fatal error when TLS server cert verification fails.

Changed ldap_pvt_tls_check_hostname to return LDAP_SUCCESS when no cert is
found: this can now only occur if tls_opt_require_cert was explicitly set
to NEVER or ALLOW.

In tls_verify_cb, added a text translation of the verification error code
to the debug message.
2002-05-04 00:05:48 +00:00
Howard Chu
6c1a786d6c Fix previous commit, wrong if condition 2002-05-03 13:07:42 +00:00
Howard Chu
ed871b997c Break up large SASL writes into units of SASL maxoutbuf size. 2002-05-03 13:04:55 +00:00
Howard Chu
931c4eb35f For Cyrus 2, cannot free session_callbacks in ldap_int_sasl_open, must
wait until ldap_int_sasl_close because SASL doesn't copy our structure,
it uses it directly.
2002-05-03 12:10:47 +00:00
Kurt Zeilenga
8c152396b9 Matched Values implementation (ITS#1776) based upon submission
form Mikhail Sahalaev <M.Sahalayev@pgr.salford.ac.uk>.
Further work needed:
	add testxxx-matchedvalues
	rework ldapsearch(1) portion of patch to generalize use of options
---
Copyright 2001, Mikhail Sahalaev, All rights reserved.
This software is not subject to any license of University Of
Salford.

Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice
is preserved.
2002-05-02 18:56:56 +00:00
Howard Chu
b732d3ec55 Fix previous commit, only zero out v3 refer_cnt if we got a SEARCH_RESULT.
If we got a SEARCH_REFERENCE, we need to keep going...
2002-05-02 12:08:19 +00:00
Kurt Zeilenga
d82d018f20 add an RFC 2849 check... but behind #if 0 as I'm now thinking this
is not appropriate.
2002-05-01 04:40:26 +00:00
Kurt Zeilenga
96483c8dcd cleanup before working on changes 2002-05-01 04:23:59 +00:00
Howard Chu
c9699c1072 Fix previous commit - must fully init newAVA 2002-04-30 14:43:05 +00:00
Howard Chu
b005540094 Added ldap_ucs_to_utf8s to convert ASN.1 T61STRING, BMPSTRING, and
UNIVERSALSTRING to UTF-8 format.

Rewrote ldap_X509dn2bv to check ASN.1 types and use above function.
2002-04-30 13:57:01 +00:00
Howard Chu
de3e81cebb Changed ldap_pvt_tls_get_my_dn and ldap_pvt_tls_get_peer_dn to store result
in dn parameter and return a result code.
2002-04-30 13:50:56 +00:00
Howard Chu
5528772f23 In ldap_int_tls_start, authid is very temporary, not const. 2002-04-19 04:35:16 +00:00
Howard Chu
202aa8c793 Fix memory leak in previous commit 2002-04-18 16:02:02 +00:00
Howard Chu
17ae956518 Added ldap_X509dn2bv()
deleted ldap_pvt_tls_get_peer()
  changed ldap_pvt_tls_get_peer_dn() to use ldap_X509dn2bv()
  added ldap_pvt_tls_get_my_dn()
2002-04-18 12:29:30 +00:00
Howard Chu
315ac06912 Fix warnings from sasl_errdetail 2002-04-18 12:20:55 +00:00
Howard Chu
98a416b584 Additional error reporting for Cyrus SASL 2. Attempt to get SASL-EXTERNAL
working ifor Cyrus 2. (Both GSSAPI and EXTERNAL are broken at the moment.)
2002-04-18 00:48:36 +00:00
Howard Chu
dc3e5fb99d ITS#818, ITS#980, ITS#1234 ldapsearch/referral hang - set refer_cnt to 0
after v3refs have been chased. They are fully processed by the time we get
back, so we should just return the current result message to the caller.
2002-04-16 12:53:13 +00:00
Kurt Zeilenga
709ce4fa6c Re: Patch: ctype functions require 'unsigned char' args (ITS#1678)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
			================

Here are fixes for more places where the argument to ctype.h functions
should be in the range of `unsigned char'.

Explanation of the last patch (to schema_init.c:bvcasechr()):
TOLOWER() and TOUPPER() return values in the range of `unsigned char',
but bvcasechr() then compares those values with a plain `char'.  So I
convert the return values from TOLOWER()/TOUPPER() to `char' first.

Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
2002-04-15 20:42:42 +00:00
Howard Chu
bb17493d31 ITS#1732 signed/unsigned fixes 2002-04-11 08:47:37 +00:00
Pierangelo Masarati
4a2b9b2195 ITS#1730 2002-04-08 18:39:23 +00:00
Pierangelo Masarati
8de44663f7 ITS#1730 and completion of ITS#1701 2002-04-08 10:34:04 +00:00
Pierangelo Masarati
4a8ab5dbf2 Mostly based on patches provided by Hallvard B. Furuseth
ITS#1677 - cast away const warnings
ITS#1678 - unsigned char args to ctype funcs
ITS#1682 - don't redefine ldap_debug
ITS#1683 - uninitialized vars
ITS#1703 - ldo_debug initialization
ITS#1705 - unsigned testing
ITS#1706 - socklen_t args
ITS#1719 - back-tcl update (other cleanups/fixes/improvements; yet untested)
ITS#1724 - integerNormalize/integerFilter/integerIndexer bugs
ITS#1725 - libdes not required

Implement back-null (/dev/null style backend)
Cleanup some misc warnings ("%lu" format, unused/uninitialized vars,
        ambiguous operator precedence)

Kurt, please regenerate configure
2002-04-08 09:43:22 +00:00
Howard Chu
5c70106657 ITS#1708 ldap_pvt_tls_sb_ctx() et al 2002-04-05 06:48:03 +00:00
Kurt Zeilenga
b0b8546f05 Patch: More format bugs (ITS#1702)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
2002-04-02 18:56:26 +00:00
Kurt Zeilenga
26b99bc35d ITS#1701. Fix ber_scanf() return tag handling.
Based upon patch submitted by Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>.
2002-04-02 18:40:04 +00:00
Julius Enarusai
b082ed9355 Added LDAP_LOG Messages 2002-04-02 00:22:57 +00:00
Julius Enarusai
e86782aab9 Added LDAP_LOG messages 2002-04-01 23:39:36 +00:00
Julius Enarusai
fff5d3de60 Added LDAP_LOG messages 2002-04-01 22:31:44 +00:00
Julius Enarusai
e30c52dfb7 Added LDAP_LOG Messages 2002-04-01 22:28:02 +00:00
Julius Enarusai
70c73da22c Added LDAP_LOG messages 2002-04-01 22:08:32 +00:00
Kurt Zeilenga
111b464642 move ldap_int_put_filter to ldap_pvt_put_filter
and other cleanup
2002-03-30 00:42:40 +00:00
Julius Enarusai
b7bd4368d9 Added LDAP_LOG messages 2002-03-29 17:46:28 +00:00
Julius Enarusai
ae31411a0d Added LDAP_LOG messages 2002-03-27 22:35:35 +00:00
Julius Enarusai
688f45dd06 Added LDAP_LOG messages 2002-03-27 22:23:24 +00:00
Julius Enarusai
171281f3ec Added LDAP_LOG messages 2002-03-27 22:03:35 +00:00
Julius Enarusai
3921e1b0c2 Added LDAP_LOG messages 2002-03-27 21:38:32 +00:00
Julius Enarusai
c0325aed88 Added LDAP_LOG messages 2002-03-27 21:16:36 +00:00
Julius Enarusai
3654b0d4c0 Added LDAP_LOG messages 2002-03-27 19:51:13 +00:00
Julius Enarusai
9c90811315 Added LDAP_LOG messages 2002-03-27 19:43:07 +00:00
Julius Enarusai
a299e74d21 Added LDAP_LOG messages 2002-03-27 19:37:50 +00:00
Julius Enarusai
b4243bc119 Added LDAP_LOG messages 2002-03-27 19:28:43 +00:00
Julius Enarusai
150aa3fc7b Added LDAP_LOG messages 2002-03-27 19:18:11 +00:00
Julius Enarusai
3ab1ea7300 Added LDAP_LOG messages 2002-03-27 19:12:18 +00:00
Julius Enarusai
e4f2c9425a Added LDAP_LOG messages 2002-03-27 18:50:45 +00:00
Julius Enarusai
d88bc7a8b5 Added LDAP_LOG messages 2002-03-27 18:20:08 +00:00
Kurt Zeilenga
fcf9f451a5 Copyright 2001, Adrian Thurston, All rights reserved.
This software is not subject to any license of
Xandros Corporation.

This is free software; you can redistribute and use it under the same
terms as OpenLDAP itself.

 -------------------------------------------------------------------
This patch adds an option to ldap_get_option which can be called after
ldap_start_tls in order to obtain the pointer to the SSL object used
2002-03-11 03:39:08 +00:00
Kurt Zeilenga
d50eb2e959 C translator portability changes (ITS#1609) 2002-02-23 23:47:37 +00:00
Kurt Zeilenga
3d9cf98dad If port is zero, use default. 2002-02-21 15:39:35 +00:00
Pierangelo Masarati
c31596eb78 not-so-easy-to-spot bug in filter writing 2002-02-14 18:01:15 +00:00
Pierangelo Masarati
32e48d9e4d disallow unescaped NULs in UTF-8 string values 2002-02-13 22:49:03 +00:00
Kurt Zeilenga
427478a753 Use memchr, not strlen, to look for embedded NULs. 2002-02-13 17:48:39 +00:00
Kurt Zeilenga
dd12660a14 Add embedded NUL check. This is one case where we don't want to
be liberal in what we accept.
2002-02-13 17:23:33 +00:00
Kurt Zeilenga
ee6d1a4d40 Check for NULs in DNs. 2002-02-13 16:41:41 +00:00
Pierangelo Masarati
6913aadcdf minor cleanup 2002-02-13 14:44:08 +00:00
Pierangelo Masarati
33d5f0f8f8 honor the ber_len field to allow to exploit ldap_bv2[r]dn to handle DNs embedded in longer strings ... 2002-02-13 12:09:36 +00:00
Pierangelo Masarati
a117c5eee7 use ldap_bv2[r]dn and turn ldap_str2[r]dn into wrappers 2002-02-13 11:46:33 +00:00
Pierangelo Masarati
959edd88c0 prepare for ldap_bv2dn() 2002-02-13 10:05:22 +00:00
Kurt Zeilenga
f1cc2b7ab2 #if 0 RDN debugging 2002-02-13 08:00:31 +00:00
Kurt Zeilenga
275f3be363 Misc. DN fixes and cleanups, namely don't muck with AVA_BINARY values
Also, pass empty_bv when bv_val is NULL.
2002-02-13 06:35:27 +00:00
Kurt Zeilenga
defed68e82 Fix typo 2002-02-11 18:18:34 +00:00
Howard Chu
a916535a27 Fix #include of sasl.h 2002-02-11 09:39:15 +00:00
Kurt Zeilenga
d23c559646 Don't use 'shtool mkln' as ln(1) replacement.
Allow both <sasl/sasl.h> and <sasl.h>
2002-02-11 08:28:51 +00:00
Kurt Zeilenga
ce07fb958e Update libtool usage
s/-L.../libraries -lldap/.../libraries/libldap/libldap.la/
2002-02-10 22:42:51 +00:00
Kurt Zeilenga
b315d8af34 Update Cyrus SASL detection to always look for <sasl.h> regardless
of version and then try -lsasl2 and -lsasl.  Make SASL code
conditional on SASL_VERSION_MAJOR, not HAVE_CYRUS_SASL.
2002-02-10 17:51:19 +00:00
Howard Chu
8a4e92b259 Support for Cyrus SASLv2. Untested. 2002-02-10 14:27:23 +00:00
Howard Chu
ffa4b26343 Slightly better fix for library cleanup. Requires GCC. 2002-02-09 01:09:23 +00:00
Howard Chu
1fba3a5c13 Fix flag initialization 2002-02-08 21:53:04 +00:00
Howard Chu
7d41a446cb Added conversion from UTF-8 to T.61. 2002-02-01 03:13:04 +00:00
Howard Chu
cb88cae005 First pass at T.61 <-> UTF-8 translation. Only does T.61 to UTF-8.
Feel free to inspect, not yet ready for use.
2002-01-31 13:42:06 +00:00
Howard Chu
63a4a19732 Send a warning to the client if we try to use a bad cert. 2002-01-27 03:48:08 +00:00
Howard Chu
c3c85b4062 Extended TLS_REQCERT/TLSVerifyClient syntax to 4 states: never,allow,try,
and hard/demand.
2002-01-27 02:56:18 +00:00
Howard Chu
c81d2bb855 Fix, errno was incorrect after SSL_read returned 0 bytes, caused slapd to
close the connection prematurely.
2002-01-26 13:43:22 +00:00
Howard Chu
25cd89b443 Use ber_scanf 'm' format for ignored UDP string 2002-01-17 23:30:05 +00:00
Kurt Zeilenga
7f0289a390 Move most of the new ber_*cmp routines to lber_pvt.h to keep them private,
rework them slightly to avoid computations which might result in underflow.
Rename them for consistency with other berval routines.
Remove some utf8 lint.
2002-01-16 18:16:15 +00:00
Pierangelo Masarati
5c1d9b4fce fix assertion 2002-01-16 10:58:04 +00:00
Pierangelo Masarati
6c5be3006d don't auto-detect DCE form; assert the UTF-8 charlen is legal 2002-01-16 09:57:20 +00:00
Howard Chu
40542984cd Added some reference comments for ldap_utf8_charlen2 2002-01-15 09:01:44 +00:00
Howard Chu
2d51ad52b3 Added LDAP_UTF8_CHARLEN2() to validate shortest possible encoding
of UTF8 string. (Returns charlen if valid, 0 if not.)
2002-01-15 08:07:46 +00:00
Howard Chu
19f3ba216f Fix ldap_utf8_lentab to detect illegal two-byte sequences. 2002-01-15 03:31:37 +00:00
Pierangelo Masarati
bde71e45f9 fix format 2002-01-14 19:48:09 +00:00
Pierangelo Masarati
36f6a1169a make temporary RDN and AVA arrays rescalable if needed 2002-01-14 19:44:04 +00:00
Pierangelo Masarati
9d6ebd822e fix typo 2002-01-14 19:42:59 +00:00
Pierangelo Masarati
2ee2e7a145 quick fix that in pretty mode escapes with hexpair the specials ',', '+' and '\' 2002-01-14 19:33:13 +00:00
Pierangelo Masarati
7887ef7e92 revert previous commit: do accept '\00' 2002-01-14 11:09:14 +00:00
Pierangelo Masarati
3a6676a082 accept '\<special>' anywhere in the string 2002-01-14 10:50:02 +00:00
Pierangelo Masarati
c4164193ad fix behavior on improperly escaped illegal hexpair; do not accept '\00' 2002-01-14 09:56:54 +00:00
Howard Chu
923e64156d More cleanup in ldap_pvt_tls_destroy() 2002-01-12 02:31:41 +00:00
Howard Chu
07119f7342 Fix ldap_start_tls_s, don't check for TLS present on a non-existent sockbuf 2002-01-12 02:25:22 +00:00
Kurt Zeilenga
dffb050d81 Remove lint 2002-01-10 05:30:23 +00:00
Howard Chu
627d354b98 For Windows, use getsockopt() to retrieve error if connect() fails.
Don't use ldap_pvt_is_socket_ready() at all on Windows, it is
totally unneeded and getpeername() misbehaves on W2K.
2002-01-10 05:12:11 +00:00
Kurt Zeilenga
f80b4ad53e Minor const'ification cleanup 2002-01-08 20:24:56 +00:00
Kurt Zeilenga
962e351271 Minor cleanup 2002-01-07 21:22:38 +00:00
Kurt Zeilenga
c4902e88d5 Don't unlock if we've never locked. 2002-01-07 20:18:38 +00:00
Pierangelo Masarati
e5f503c24a Passes last test (empty value); also passes many of the invalid DN tests if liberal parsing is allowed 2002-01-07 15:23:23 +00:00
Pierangelo Masarati
e15aa7b682 fix non-printable flag detection; improve dn test (passes all but last in http://www.openldap.org/ietf/ldapbis/dn.txt) 2002-01-07 15:10:50 +00:00
Pierangelo Masarati
23cd7e837a fix domain generation for UFN 2002-01-07 13:16:53 +00:00
Kurt Zeilenga
0c36372134 Some memory allocation cleanup. 2002-01-06 02:18:37 +00:00
Kurt Zeilenga
c36352c173 Misc allocator cleanup 2002-01-05 19:38:54 +00:00
Howard Chu
bbee3551b8 Fix for Windows, don't call gethostbyname until WSAStartup has occurred. 2002-01-04 23:10:48 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Kurt Zeilenga
72eb26180f Another minor filter fix (unescaped *) 2002-01-04 20:36:41 +00:00
Kurt Zeilenga
96138a8424 Fix ) in value handling 2002-01-04 05:37:19 +00:00
Kurt Zeilenga
6c80cfb2e8 Use LDAP_FREE not free 2002-01-04 03:53:13 +00:00
Kurt Zeilenga
11175ed95e Some misc cleanup 2002-01-04 03:50:54 +00:00
Kurt Zeilenga
6fc8c3ff4e Fix attribute description checks 2002-01-04 00:45:05 +00:00
Howard Chu
da00e5dac1 Use LDAP_FREE instead of free 2002-01-03 23:30:45 +00:00
Kurt Zeilenga
1d4e2342d2 Add LBER DN format flag (no code yet).
Return API result codes, not protocol result codes.
2002-01-03 20:06:29 +00:00
Kurt Zeilenga
789b81aa75 Misc cleanup 2002-01-03 20:05:29 +00:00
Kurt Zeilenga
fdb62b5650 Even larger TMP_SLOTS 2002-01-03 19:45:34 +00:00
Kurt Zeilenga
dedc7588c9 We'll need queue macros in -llber... 2002-01-03 00:49:52 +00:00
Kurt Zeilenga
73b2d62bcd Fix queue.h include 2002-01-03 00:39:09 +00:00
Kurt Zeilenga
81d2a0f289 fix empty substrings any bug 2002-01-02 23:03:37 +00:00
Howard Chu
fca5613e98 Hide (make static) sb_bio_method and tls_sbio structures. They're
already completely hidden by accessor functions.
2002-01-02 22:29:11 +00:00
Howard Chu
cc60686c0d Renamed parse_numericoid to ldap_int_parse_numericoid since it is
no longer static. Moved declaration to ldap-int.h and removed extern
from getdn.c
2002-01-02 21:59:26 +00:00
Kurt Zeilenga
ccc4d0d5ae Fix extensible filters 2002-01-02 20:31:21 +00:00
Kurt Zeilenga
490ac259f4 Fix escape bug 2002-01-02 20:05:48 +00:00
Kurt Zeilenga
2931cec6c0 Fix stupid bug in last commit 2002-01-02 18:16:09 +00:00
Pierangelo Masarati
1f49164725 fix missing trailing ')' 2002-01-02 17:38:46 +00:00
Kurt Zeilenga
772b7760b8 New filter code 2002-01-02 17:10:21 +00:00
Kurt Zeilenga
3ecc6b8b2c Add filter.c 2002-01-02 17:08:42 +00:00
Kurt Zeilenga
763c0de59b Rework filter code
Misc cleanup / lint removal
2002-01-02 17:06:56 +00:00
Howard Chu
81e9e86861 Fix ldap_str2rdn, make sure to update progress pointer; don't
free attrType since we never allocate it
2002-01-02 09:59:37 +00:00
Howard Chu
b92710e3a5 Minor cleanup 2001-12-31 06:44:36 +00:00
Howard Chu
b7be022824 Minor fix for LDAP_DN_IS_RDN_DC macro 2001-12-30 23:10:31 +00:00
Howard Chu
776ce133e9 More str2rdn tweaks 2001-12-30 09:42:58 +00:00
Howard Chu
5d28b4555e Reorganize LDAPAVA allocation layout 2001-12-30 06:56:57 +00:00
Pierangelo Masarati
754470162d remove useless function 2001-12-29 12:13:11 +00:00
Howard Chu
a191392e2e Changed LDAP_AVA struct berval * to struct berval. 2001-12-29 10:35:24 +00:00
Howard Chu
60510c5e39 Fix memory leak in ldap_explode_dn 2001-12-29 06:37:20 +00:00
Howard Chu
729fe56698 Made LDAP_UTF8_CHARLEN/ldap_utf8_charlen table-driven. 2001-12-29 02:57:32 +00:00
Pierangelo Masarati
2f3f7c6765 ldap_str2rdn() can parse without allocating a LDAPRDN* (not very clean, though); used by dn_rdnlen 2001-12-28 12:50:48 +00:00
Howard Chu
4d7e904404 Added ldap_dn2bv and ldap_rdn2bv 2001-12-28 10:03:39 +00:00
Howard Chu
06b350c04c Moved WSAStartup/WSACleanup to libldap/init.c. Cleanup occurs in the
internal atexit handler.
2001-12-28 06:12:17 +00:00
Kurt Zeilenga
c214a13a59 Works... now to test our filter parser! 2001-12-28 04:33:57 +00:00
Kurt Zeilenga
bf5fc54473 Add ftest (filter test) to the mix, needs work.
Misc cleanup of other tests.
Add *.dsp files for tests
2001-12-28 03:39:05 +00:00
Kurt Zeilenga
52a354f753 Mark more stuff as deprecated and remove some unused deprecated
routines.
2001-12-27 23:01:17 +00:00
Pierangelo Masarati
1f8e4d3884 cleanup 2001-12-27 13:54:22 +00:00
Kurt Zeilenga
cddf7e0e00 More struct berval DN changes
decrease dependency on dn_validate/dn_normalize
2001-12-27 07:13:13 +00:00
Kurt Zeilenga
a553a03586 More struct berval DNs changes 2001-12-26 23:43:28 +00:00
Howard Chu
a1460e74ce Added ldap_xxx2bv schema functions 2001-12-26 12:31:44 +00:00
Pierangelo Masarati
5f28673792 hex escape everything requires escape (uncomment #define PRETTY_ESCAPE to revert to previous behavior) 2001-12-24 19:17:10 +00:00
Pierangelo Masarati
4d981f7cc5 better rdn exploding 2001-12-24 15:47:06 +00:00
Pierangelo Masarati
65fad45129 bug in explode dn (caused most test failures when requesting client-side sorted results) 2001-12-24 10:31:11 +00:00
Kurt Zeilenga
450e0d6803 Some minor bugs for dntest "" 2001-12-24 07:22:25 +00:00
Kurt Zeilenga
a2c6a98427 cannot assert la_private == NULL on free 2001-12-24 07:03:14 +00:00
Kurt Zeilenga
883196d348 Clean up some symbol scoping 2001-12-24 06:36:44 +00:00
Kurt Zeilenga
04ea760a91 Delete USE_LDAP_DN_PARSING 2001-12-24 06:02:59 +00:00
Kurt Zeilenga
d0abe6f59f Misc DN cleanup, no functional changes 2001-12-24 06:00:02 +00:00
Kurt Zeilenga
25b5aaf262 Delete ldap_build_filter(), it's broke.
Clean up headers.
2001-12-24 03:49:54 +00:00
Kurt Zeilenga
9d56c59d1b Minor cleanup, rename ldapava_free_*() routines and
don't expose symbols of ava helper routines
2001-12-23 22:46:37 +00:00
Pierangelo Masarati
dcc062dce5 least escaping in dnPretty (hope my wife doesn't catch me in front of the laptop :) 2001-12-23 09:26:44 +00:00
Pierangelo Masarati
6620bbff16 small bug exploited by malformed DCE format 2001-12-23 09:04:44 +00:00
Kurt Zeilenga
80649933bd Zap tmplout 2001-12-21 03:28:48 +00:00
Kurt Zeilenga
6ca3ed1b1e Fix cache debugging (ITS#1501) based upon patch provided by
Will Day <willday@rom.oit.gatech.edu>.
2001-12-20 20:11:03 +00:00
Kurt Zeilenga
ae6b840350 Remove ttest 2001-12-20 07:29:33 +00:00
Kurt Zeilenga
c9afb5e8a3 misc cleanup 2001-12-20 01:43:03 +00:00
Kurt Zeilenga
c90b4fc878 Back out last change 2001-12-19 21:55:52 +00:00
Kurt Zeilenga
1f8cba688d dsparse still needed by filter templates (which are used by ud(1)). 2001-12-19 21:53:30 +00:00
Kurt Zeilenga
b3b17ca4e7 Remove srchpref and disptmpl stuff. 2001-12-19 21:46:34 +00:00
Kurt Zeilenga
9ce6d07b61 More cleanup 2001-12-19 21:37:41 +00:00
Kurt Zeilenga
266d8f5fc0 misc cleanup 2001-12-19 21:23:11 +00:00
Howard Chu
dfba82c441 minor cleanup from jon@symas.com 2001-12-18 05:17:06 +00:00
Kurt Zeilenga
c1a257a83f stdlib.h should be included as <ac/stdlib.h> 2001-12-18 01:24:31 +00:00
Howard Chu
b917625a85 Revert previous commit. 2001-12-18 00:20:58 +00:00
Howard Chu
6456e5f559 from jon@symas.com - misc cleanup 2001-12-18 00:16:15 +00:00
Kurt Zeilenga
943800a534 We "understand" localhost to be same as the local hostname as
returned by gethostname().
2001-12-17 23:56:16 +00:00
Howard Chu
e5eb270e6c from jon@symas.com - misc Windows cleanup 2001-12-17 22:42:55 +00:00
Howard Chu
320d6742b7 Added atexit handler to free global_opts->ldo_defludp. 2001-12-15 13:43:49 +00:00
Howard Chu
2b0819c4a9 Don't copy and leak user; it's an env var so just use it directly. 2001-12-15 12:07:40 +00:00
Kurt Zeilenga
4e79e82972 Treat (!) and (!(x=a)(y=b)) as filter errors... 2001-12-12 06:23:02 +00:00
Pierangelo Masarati
f4b21cc7b5 reworked internal stuff 2001-12-10 09:43:31 +00:00
Kurt Zeilenga
abd9be4def Remove lint and misc MSVC updates 2001-12-09 02:34:45 +00:00
Howard Chu
0552b1c53f NT updates from jon@symas.com. 2001-12-07 04:03:25 +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
Pierangelo Masarati
67ed3982fb now dnValidate loops thru each value; added private member to LDAPAVA to hold the attribute description 2001-12-06 11:50:17 +00:00
Pierangelo Masarati
9260b22dec liberally accept many LDAPv2/LDAPv3 stuff in DN (quoted parts, ';' as rdn separator and so); enforce exact case match of normalized dn in dnMatch (let's see what happens ...); fix a ldapava_free_rdn bug 2001-12-06 10:01:25 +00:00
Pierangelo Masarati
9004262d95 reimplement dn_validate/normalize/(match) using the ldap_str2dn/dn2str stuff; need to #define USE_LDAP_DN_PARSING 2001-12-04 20:22:26 +00:00
Kurt Zeilenga
8b4bae1fe3 Friendly name removal 2001-12-03 20:04:31 +00:00
Kurt Zeilenga
95b3e2a97d Minor cleanup 2001-12-03 20:04:08 +00:00
Pierangelo Masarati
598d6e7859 small improvements and fixes; now honors ';' as rdn separator in LDAPv2 mode 2001-12-03 07:55:25 +00:00
Howard Chu
88e3454654 Add #include <openssl/safestack.h> to fix ITS#1412 2001-11-30 02:37:39 +00:00
Kurt Zeilenga
bfe4dc289a ITS#1429 url search fix 2001-11-28 16:49:46 +00:00
Pierangelo Masarati
ea54a1a8e8 fix bug in previous commit 2001-11-12 08:47:09 +00:00
Pierangelo Masarati
6400698d17 struct berval * instead of char * in ldap_ava struct; minor cleanup 2001-11-12 08:10:12 +00:00
Steve Sonntag
367c5e81ba Compile error if Cyrus Sasl is not present. Put ifdefs in
unbind call around free of sasl data.
2001-11-08 20:08:36 +00:00
Howard Chu
33ace5610c Added ldap_pvt_tls_destroy() to cleanup TLS library on shutdown 2001-11-06 20:52:59 +00:00
Kurt Zeilenga
ac3e6c8dc5 Plug leaks (ITS#1116)
Patch provided by John Morrissey <jwm@horde.net>
2001-11-06 17:05:51 +00:00
Pierangelo Masarati
a2eec74fc1 moved rdn parsing in a dedicated routine, ldap_str2rdn(), that can be used directly; now ldap_rdn2str() handles all the formats 2001-10-30 10:04:24 +00:00
Pierangelo Masarati
64c7e39aa8 More compliant version of str2dn/dn2str;
may need optimization;
uncomment #define USE_LDAP_DN_PARSING in libraries/libldap/getdn.c
to enable its use.
The ava/rdn/dn handling routines (append, insert, free and so) must
be made available thru declaration in some header.
2001-10-29 08:05:23 +00:00
Pierangelo Masarati
0ba03b18e7 enhanced dn parsing; see libraries/libldap/dntest for a 'demo'. Need to define USE_LDAP_DN_PARSING to override usual ldap_dn2ufn and so, and PARSE_UTF8 to parse attribute values as utf-8 2001-10-26 18:10:05 +00:00
Kurt Zeilenga
f3f72c5d2a Add nul termination 2001-10-26 02:01:42 +00:00
Pierangelo Masarati
192f83540c missing leading quote 2001-10-25 18:56:06 +00:00
Kurt Zeilenga
187f190fb6 Don't pass NULL string pointers to Debug 2001-10-25 18:32:59 +00:00
Pierangelo Masarati
5b4b535617 handle lead/trail escape chars in LDAPv2/LDAPv3; change misleading name of AVA type modifier 2001-10-22 19:23:37 +00:00
Pierangelo Masarati
fefc29786c skeleton of ldap_str2nd/dn2str; works with most of the simple cases, but there's much to do with unicode, I think 2001-10-18 19:00:07 +00:00
Kurt Zeilenga
e2cca72bdc Fix ntohs/htons issues 2001-10-07 02:40:16 +00:00
Kurt Zeilenga
75c7331743 Added the easy part of NLS support, behind an #ifdef. 2001-10-04 18:06:08 +00:00
Howard Chu
693a81e1db More CLDAP tweaks, to differentiate between real LDAPv2 CLDAP and "other"
LDAP/UDP messages. Slapd marks received CLDAP messages as LDAP_VERSION2.
The client library can generate CLDAP queries if -Protocol 2 is chosen,
otherwise not. LDAPv2 CLDAP cannot query the slapd rootDSE, gets no reply.
2001-10-02 01:02:23 +00:00
Kurt Zeilenga
44146a1cb7 Rework DB_THREAD support. CDB support needs reimplementation. 2001-10-01 06:08:46 +00:00
Kurt Zeilenga
712295ef4b Rework getaddrinfo/inet_ntop not to segfault with ai_addr is (bogusly) NULL 2001-09-29 06:32:58 +00:00
Howard Chu
e80b5d4040 Clean up CLDAP stuff 2001-09-28 22:19:51 +00:00
Kurt Zeilenga
d397f6aa2f Fix #undef LDAP_CONNECTIONLESS builds 2001-09-28 20:09:49 +00:00
Howard Chu
647b5f84ee Resurrection/rewrite of CLDAP (RFC1798 Connectionless LDAP).
Compile with -DLDAP_CONNECTIONLESS to use this code.
For slapd, use "-h cldap://" to listen on UDP.
For ldapsearch, use "-H cldap://" to query on UDP.
Client-side support is very minimal:
  no automatic timeout/retries
  no basedn wildcard expansion on results
  no support for specifying multiple servers at once.
2001-09-28 00:18:40 +00:00
Kurt Zeilenga
790a18cb86 chasing multi-level referrals core dumps (ITS#1346) bug fix
from Zachary Amsden <zach@mirapoint.com>.
2001-09-24 18:50:44 +00:00
Kurt Zeilenga
afd665034a Add ldap_url_desc2str(). 2001-09-24 18:30:57 +00:00
Kurt Zeilenga
7a4b9e3c32 Minor cleanup 2001-09-18 17:35:47 +00:00
Howard Chu
384cbde4f5 Fix for ITS#1258 - even if we're accepting various malformed definitions,
don't allow OIDs that are a mix of numeric and non-numeric fields.
2001-09-18 12:21:33 +00:00
Howard Chu
84e4b860e1 Fix previous patch, didn't take handle syntax/noidlen properly 2001-09-18 12:03:20 +00:00
Howard Chu
6b9b0660c9 Fix ITS#1213, OID macro parsing in attributetypes 2001-09-18 11:30:00 +00:00
Howard Chu
e4d8a87ddc Silence some typecast warnings 2001-09-18 05:22:53 +00:00
Howard Chu
966616b274 Don't pass NULL hostname to ldap_pvt_tls_check_hostname, use "localhost" 2001-09-18 05:19:55 +00:00
Howard Chu
6a59465686 Fix declaration mismatch when CYRUS is not present 2001-09-18 00:37:56 +00:00
Kurt Zeilenga
241d6a558e Remove dead code 2001-09-09 04:47:03 +00:00
Kurt Zeilenga
553d80cedd Blindly fix TLS/SASL external interaction. 2001-09-09 03:42:26 +00:00
Kurt Zeilenga
3c844f0225 Minor cleanup of ldap_perror() 2001-09-09 03:02:54 +00:00
Kurt Zeilenga
05c9d4bfda Fix TLS ldap.conf issues 2001-09-05 21:22:41 +00:00
Howard Chu
f3501cbf50 Fix ldap_int_tls_start to set its error codes in ld->ld_errno. 2001-09-02 12:06:41 +00:00
Howard Chu
b10e0029a5 Full implementation of server identity checking per RFC2830 section 3.6 2001-09-02 11:23:28 +00:00
Kurt Zeilenga
d3cb8a357f Move Cyrus SASL initializing forward 2001-08-31 00:14:04 +00:00
Howard Chu
44a3160fec Remove redundant call of SSL_set_info_callback, to allow users
to override it in the SSL_CTX.
2001-08-29 20:28:08 +00:00
Kurt Zeilenga
05960887bb Fix -H ldaps:// crashes due to rework of TLS code 2001-08-27 20:22:28 +00:00
Kurt Zeilenga
16fa8c4a21 Fix bug introduced during TLS rework 2001-08-02 04:20:11 +00:00
Kurt Zeilenga
2ad03e6041 To be consistent, should assert that ld is valid. 2001-07-24 16:38:42 +00:00
Kurt Zeilenga
2b7727882d misc updates, constification, deprecation... 2001-07-23 05:00:39 +00:00
Kurt Zeilenga
978e417699 Make some additional UTF8 public
Remove lint
2001-07-21 23:13:04 +00:00
Pierangelo Masarati
93923d4345 honors multiple type/value in rdn when generating ufn 2001-07-11 20:16:25 +00:00
Kurt Zeilenga
f61152ccbd Check for critical client controls. 2001-07-06 03:13:42 +00:00
Kurt Zeilenga
803e84fcdd TLS doesn't need ldap_host_connected_to() 2001-06-25 21:44:41 +00:00
Kurt Zeilenga
c731288dc6 Replace ATTR_URIS with ATTR_OPTION (more general solution) 2001-06-25 21:39:14 +00:00
Kurt Zeilenga
77f776dfd1 Another round of TLS updates to support secure referral chasing 2001-06-25 19:17:42 +00:00
Kurt Zeilenga
350ffe6d15 Rework tls check
Needs to be connection specific
2001-06-25 18:20:14 +00:00
Kurt Zeilenga
c4f5497ac6 move TLS ctx to lconn struct in prep for supporting TLS with referrals
need to rework cert check to use per lconn host name
2001-06-25 07:33:42 +00:00
Kurt Zeilenga
903940014c Sync with 2.x 2001-06-23 01:25:21 +00:00
Kurt Zeilenga
4a23c08678 Fix up error handling 2001-06-22 21:01:04 +00:00
Kurt Zeilenga
55755fea2a Rebind cleanup 2001-06-15 04:49:38 +00:00
Kurt Zeilenga
11b6d1f284 Misc updates for NT4 2001-06-15 04:16:55 +00:00
Kurt Zeilenga
5f25c10980 new rebind proc
new SASL locking
2001-06-15 00:14:56 +00:00
Kurt Zeilenga
86acd7eb20 unifdef -ULDAP_UFN 2001-06-11 21:08:49 +00:00
Kurt Zeilenga
4edc93c807 EOL 2001-06-09 02:35:44 +00:00
Kurt Zeilenga
52067f461e Fix wrapping separators (no functional change) 2001-05-28 19:42:22 +00:00
Kurt Zeilenga
deb9644a8a Should not be using reverse lookup names to check certificates. 2001-05-19 23:07:46 +00:00
Kurt Zeilenga
7522d3fcab Add HAVE_INET_NTOP 2001-05-09 23:41:38 +00:00
Kurt Zeilenga
8684be0278 Fix logic error in param check 2001-04-12 23:05:19 +00:00
Kurt Zeilenga
66fdd720f4 Fix off by one bug 2001-04-12 23:05:02 +00:00
Kurt Zeilenga
0a8b2f1381 Trim last of CLDAP cruft 2001-03-15 03:15:15 +00:00
Kurt Zeilenga
5fe2190603 libldap/cyrus.c's ldap_pvt_sasl_install fix
from Mei-Hui Su <mei@ISI.EDU>
2001-03-15 03:14:34 +00:00
Kurt Zeilenga
bd4c6b84ea Bug in chkResponseList loop (ITS#1047) from David @ Novell 2001-03-15 03:11:52 +00:00
Kurt Zeilenga
12e9ed8e12 Fix memory leak 2001-02-03 01:49:12 +00:00
Kurt Zeilenga
9e8743215c Fix another typo 2001-01-22 21:25:06 +00:00
Kurt Zeilenga
1ae1061858 Fix typo 2001-01-22 20:50:07 +00:00
Kurt Zeilenga
ec87e9e30f Default objectClass kind should be STRUCTURAL 2001-01-22 08:06:48 +00:00
Kurt Zeilenga
b08f7e8bce Fix typo 2001-01-22 07:42:13 +00:00
Kurt Zeilenga
1cabc6931d Add a little whitespace for readability 2001-01-20 01:17:15 +00:00
Kurt Zeilenga
a4f4d8be59 Don't use ntohl().
Add min/max bufsize check
2001-01-19 04:53:21 +00:00
Kurt Zeilenga
599a610164 Update SASL bufsize checks 2001-01-18 22:18:41 +00:00
Kurt Zeilenga
c0a06f25c2 Add ldap_pvt_tls_get_peer_dn() routine. Returns peer as an LDAP DN. 2001-01-18 00:40:58 +00:00
Kurt Zeilenga
a0828d6135 Rework scope defaulting to only default scope for references.
Might break LDAPv2 partial results
2001-01-10 23:48:24 +00:00
Kurt Zeilenga
1d1c1edf44 update rand file after use 2001-01-10 21:14:13 +00:00
Ben Collins
4391e6654a s/UTF8_CHARLEN/LDAP_UTF8_CHARLEN/ 2001-01-03 21:38:32 +00:00
Kurt Zeilenga
5082731e24 Add UTF-8 wc/mb conversion routines contributed by Novell.
/******************************************************************************
 * Copyright (C) 1999, 2000 Novell, Inc. All Rights Reserved.
 *
 * THIS WORK IS SUBJECT TO U.S. AND INTERNATIONAL COPYRIGHT LAWS AND
 * TREATIES. USE, MODIFICATION, AND REDISTRIBUTION OF THIS WORK IS SUBJECT
 * TO VERSION 2.0.1 OF THE OPENLDAP PUBLIC LICENSE, A COPY OF WHICH IS
 * AVAILABLE AT HTTP://WWW.OPENLDAP.ORG/LICENSE.HTML OR IN THE FILE "LICENSE"
 * IN THE TOP-LEVEL DIRECTORY OF THE DISTRIBUTION. ANY USE OR EXPLOITATION
 * OF THIS WORK OTHER THAN AS AUTHORIZED IN VERSION 2.0.1 OF THE OPENLDAP
 * PUBLIC LICENSE, OR OTHER PRIOR WRITTEN CONSENT FROM NOVELL, COULD SUBJECT
 * THE PERPETRATOR TO CRIMINAL AND CIVIL LIABILITY.
 ******************************************************************************/
2000-12-28 02:20:37 +00:00
Kurt Zeilenga
b7607bf237 ITS#884: GSSAPI interoperabity with ActiveDirectory
Improve interoperability when of scred is present but empty.
2000-12-27 19:42:09 +00:00
Kurt Zeilenga
d8292a62da Fix referral scope logic 2000-12-08 19:45:04 +00:00
Kurt Zeilenga
a09139465a Update URL parsing and LDAP referral/reference chasing to handle
search scope defaulting.
2000-11-28 19:56:55 +00:00
Kurt Zeilenga
c0f9ec5458 ITS#889 fix 2000-11-22 20:27:30 +00:00
Kurt Zeilenga
6053ed1058 ITS#903: validate hostname in server cert from Norbert Klasen
adapted as needed.
2000-11-22 20:23:38 +00:00
Kurt Zeilenga
5941625eb7 ITS#889: quick fix 2000-11-20 18:59:42 +00:00
Kurt Zeilenga
511a84bc31 First cut of SASL/EXTERNAL 2000-10-31 23:00:35 +00:00
Kurt Zeilenga
907cd90607 Fix UTF-8 5-octet sequences 2000-10-27 21:32:46 +00:00
Kurt Zeilenga
7b9886e909 Add LDAP URL critical extension counter support. lud_crit_exts
is the number of critical extensions contained in lud_exts.
As we currently do not support any extension, this flag is
useful for determining whether or not we should attempt to
use the URL.  Added check of this counter to ldap_url_search
and LDAPv3 chase referrals.
2000-10-26 06:17:14 +00:00
Kurt Zeilenga
2504f29a0c Fix IS ASCII checks. Should be < 0x80 (0100), not < 0x100. 2000-10-23 18:04:45 +00:00
Julio Sánchez Fernández
47fd4fbad3 A little bit of Matching Rule Use. 2000-10-23 12:25:43 +00:00
Kurt Zeilenga
9e7accb034 This patch replaces gai_strerror with AC_GAI_STRERROR in daemon.c and also
uses AC_GAI_STRERROR to report getaddrinfo failures in os-ip.c
-- Stig Venass
2000-10-19 18:05:11 +00:00
Kurt Zeilenga
9f0d190739 Add ldap_pvt_gai_strerror().
Calls to gai_strerror() should be replaced with calls AC_GAI_STRERROR().
2000-10-18 17:25:30 +00:00
Kurt Zeilenga
3498151f99 Validate session handle 2000-10-18 16:32:57 +00:00
Kurt Zeilenga
ffe1320bf5 fix SOCKET_ERROR typos 2000-10-18 03:24:50 +00:00
Kurt Zeilenga
ce373d3800 Use SOCKET_ERROR instead of -1 2000-10-18 00:27:31 +00:00
Kurt Zeilenga
d491ac55de Update handling of partial responses
Update comments
Update log messages
rename symbols per conventions
2000-10-18 00:26:53 +00:00
Kurt Zeilenga
6442964059 Handle *lud_host == '\0'
(likely should modify parsers and other codes to disallow such)
2000-10-17 20:30:14 +00:00
Kurt Zeilenga
174c6abfe2 ldap_url_search should use hostport of URL. 2000-10-17 19:26:04 +00:00
Kurt Zeilenga
66818be637 Don't attempt to send abandon unless connection exists.
If connection doesn't exist, return LDAP_SERVER_DOWN.
2000-10-16 23:11:41 +00:00
Kurt Zeilenga
edef4b2970 ITS#821: TLS data ready fix from <mattc@chartist.com> 2000-10-16 20:26:56 +00:00
Julio Sánchez Fernández
5d899f0c00 Better processing of extensible filters. Needs testing, but the prior
version was not encoding properly the filter.
2000-10-15 19:17:06 +00:00
Kurt Zeilenga
3d57f2ae67 Rework control create/dup routines to distinguish not
present value from empty value.
2000-10-14 02:13:53 +00:00
Kurt Zeilenga
93d9fde132 Label sb debugging as "ldap_"... 2000-10-13 01:00:55 +00:00
Kurt Zeilenga
2a6f092422 Add sasl i/o debugging 2000-10-12 23:50:58 +00:00
Gary Williams
3e0cc38404 remove LDAP_Debug macro 2000-10-12 21:16:18 +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
f8e5ed25e9 Revised ITS#799 fix from Steve Sonntag <vtag@novell.com>
The problem is that the current code checks the queue inside
 the test for correct connecction state, so sometimes the queue
 doesn't get checked. This change moves the test outside
 the connection check.
2000-10-11 21:11:34 +00:00
Kurt Zeilenga
8e6062eb82 References with empty dn (ITS#817) 2000-10-11 04:23:23 +00:00
Kurt Zeilenga
b7b9148c7f Return more appropriate result codes than LDAP_UNAVAILABLE
upon failures.
2000-10-09 22:11:34 +00:00
Kurt Zeilenga
2cdbfd069b Add missing newlines 2000-10-05 18:30:06 +00:00
Kurt Zeilenga
6712936ef8 ITS#799: chasing multiple referrals bug
Patch provided by Steve Sonntag <vtag@novell.com>
2000-10-05 01:40:36 +00:00
Kurt Zeilenga
005a2f7aec Don't assert on null 2000-10-03 18:51:30 +00:00
Kurt Zeilenga
778b665242 Fix up some free'ing. 2000-10-02 17:43:39 +00:00
Kurt Zeilenga
003a293e2b Don't specify LDFLAGS when using LTLINK to avoid duplicate
specfication of flags.
2000-10-01 08:10:37 +00:00
Kurt Zeilenga
74b048a5a4 Fix ldap_first/next_attribute to return NULL without error when
nothing is left.
2000-09-30 06:57:23 +00:00
Kurt Zeilenga
1890b720b4 cleanup getattr bailout code 2000-09-30 05:35:44 +00:00
Kurt Zeilenga
f8d9bffb98 Don't touch (unescape) URL handed to rebind proc. 2000-09-30 02:37:05 +00:00
Kurt Zeilenga
dd733e163a ITS#791: fix SASL ctx close 2000-09-29 18:27:06 +00:00
Kurt Zeilenga
2b82d4f486 remove lint
update bdb codes
2000-09-22 01:40:57 +00:00
Kurt Zeilenga
90d557402b Should modify code to bail on initialization errors...
For now, just (void) the return
2000-09-21 19:56:04 +00:00
Mark Adamson
bf1ee530ea Implementation of SASL authorization. 2000-09-21 17:32:54 +00:00
Kurt Zeilenga
e1b73eda93 cleanup 2000-09-16 22:46:04 +00:00
Kurt Zeilenga
f42966f9e1 Fix #undef LDAP_UFN 2000-09-16 06:24:17 +00:00
Kurt Zeilenga
efe39c999f modify ldap_dn2ufn() to return completely typeless UFNs
hide rest of UFN code behind #ifdef LDAP_UFN in preparation
for eventual removal.
2000-09-16 04:33:52 +00:00
Kurt Zeilenga
f4f093054a overrun protection doesn't work... hmmm.... 2000-09-16 01:05:14 +00:00
Kurt Zeilenga
b611ec4b87 consistently use ber_pvt_ber_*() routines 2000-09-15 05:56:37 +00:00
Ben Collins
aaf59e2a2b don't define NEED_COPY_HOSTENT in the decleration 2000-09-15 03:33:05 +00:00
Ben Collins
621babf51d fix compiler warnings by including ac/unistd.h and only declaring copy_hostent() when we actually need to use it 2000-09-15 03:06:18 +00:00
Ben Collins
718a6bfca4 initialize Sockbuf * to NULL 2000-09-15 03:05:27 +00:00
Ben Collins
3635cbdbe1 remove unused vars 2000-09-15 03:04:46 +00:00
Ben Collins
9946e999c8 move some vars to where they are actually used to avoid compiler warnings 2000-09-15 03:04:04 +00:00
Ben Collins
81d26d3ac0 fix call to ldap_connect_to_path() 2000-09-15 03:02:57 +00:00
Ben Collins
b2866ff162 s/LDAP_PF_UNIX/LDAP_PF_LOCAL/ so that we actually declare ldap_connect_to_path(). Also fix the decleration to match the function 2000-09-15 02:55:54 +00:00
Ben Collins
5df2c83b38 remove unused var, 'dn' 2000-09-15 02:54:28 +00:00
Ben Collins
960041de8a include ac/ctype.h and initialize some variables to avoid compiler warnings 2000-09-15 02:53:55 +00:00
Kurt Zeilenga
b641615c53 Keep ldap_first/next_attribute from running past end of attributes.
Likely other sequences need this attention.
2000-09-15 01:16:09 +00:00
Kurt Zeilenga
b4c9287f45 Don't send optional cred if empty 2000-09-15 00:09:24 +00:00
Kurt Zeilenga
fbfe0f0ac7 Fix typo in Kbind code 2000-09-14 19:58:55 +00:00
Kurt Zeilenga
ed68c977d9 Zap LDAP_LIBUI 2000-09-14 07:22:01 +00:00
Ben Collins
5a33b7509b Fix error in if() statement (==, not =) 2000-09-13 21:47:12 +00:00
Ben Collins
07ce0a9935 s/got_max_ssf/got_min_ssf/ thinko fix when checking for minssf. In this case, minssf was never set, and would cause maxssh to be set in error 2000-09-13 21:46:11 +00:00
Randy Kunkee
ab3be5d76d Include <ac/param.h> to pick up MAXPATHLEN. 2000-09-13 07:26:55 +00:00
Kurt Zeilenga
92c55c4454 Clean up 2000-09-13 01:12:47 +00:00
Kurt Zeilenga
d554a31b58 Move ldap_pvt_tls_init call to ldap_pvt_tls_start
Relax user-only options on TLS_RANDFILE and TLS_REQCERT
2000-09-13 00:54:45 +00:00
Kurt Zeilenga
2c30c90876 Rework TLS code (only supports default connection) 2000-09-12 00:30:05 +00:00
Kurt Zeilenga
102a88659b ITS#717 kbind fixes 2000-09-06 21:32:45 +00:00
Kurt Zeilenga
d59a62e236 Clarify perms 2000-09-04 21:57:01 +00:00
Kurt Zeilenga
cee040a321 Bring UCdata infrastructure. 2000-09-03 23:48:35 +00:00
Kurt Zeilenga
b99299219f Fix typo 2000-09-03 19:33:26 +00:00
Kurt Zeilenga
5518aefda0 Change default to SSL_PEER_NONE (don't require peer certificate). 2000-09-01 23:24:17 +00:00
Kurt Zeilenga
57ed8f6458 Fix port defaulting 2000-09-01 23:03:17 +00:00
Kurt Zeilenga
8983f7cb8b Fix ldap_pvt_tls_start() return value check. 2000-09-01 01:04:18 +00:00
Kurt Zeilenga
3844db4404 Use example.com, not openldap.org, in examples 2000-08-25 02:17:40 +00:00
Kurt Zeilenga
a2afb207be Move ldap_start_tls_s() to tls.c 2000-08-25 02:16:15 +00:00
Kurt Zeilenga
57936dc93c Zap CLDAP 2000-08-19 00:07:30 +00:00
Kurt Zeilenga
25a9f7427d Remove CLDAP cruft 2000-08-18 04:25:00 +00:00
Howard Chu
0f8047b95e Implemented ldap_pvt_tls_get_peer() for use with SASL/EXTERNAL.
Added ldap_pvt_tls_get_strength() - return encryption strength, for
use as a SASL session security factor.
2000-08-16 23:27:41 +00:00
Kurt Zeilenga
2ae410bd1b Treat INADDR_LOOPBACK (as well as INADDR_ANY) as local host. 2000-08-15 02:13:00 +00:00
Kurt Zeilenga
3b03b64b77 Add char* ldap_pvt_get_fqdn(char*) which returns the FQDN of the
input.  In input==NULL, returns FQDN of local host.
Fixed copy_hostent() uninitialized pointer bug.
Replaced gethostname calls with ldap_pvt_get_fqdn( NULL ) calls.
2000-08-15 01:55:43 +00:00
Kurt Zeilenga
0f5a264dc3 hostbuf should be static 2000-08-15 00:58:56 +00:00
Kurt Zeilenga
f22250baaa Fix a minor leak. 2000-08-14 18:39:43 +00:00
Kurt Zeilenga
b33f8b75d3 ITS#647 from Paul R. Turgyan <pturgyan@umich.edu>
When calling ldap_search looking for "supportedSASLMechanisms",
a NULL string should be passed to ldap_search and not a NULL pointer.
2000-08-06 05:25:10 +00:00
Kurt Zeilenga
5b856458a2 s/SAFEMEMCPY/AC_MEMCPY/
Use AC_FMEMCPY where appropriate (-llber)
2000-07-28 01:07:07 +00:00
Kurt Zeilenga
a50f391bb3 Working SASL security layers! 2000-07-28 00:04:07 +00:00
Kurt Zeilenga
33fb0e055b From: vtag@novell.com
Subject: Bug in ldap_parse_result function (ITS#643)

If a user is using ldap result to obtain search results one message
at a time and calls ldap_parse_result on one of those messages, i.e.
the message chain does not have an LDAP_RES_SEARCH_RESULT message
in the chain, ldap_parse_result returns a LDAP_DECODING_ERROR
instead of LDAP_NO_RESULTS_RETURNED.
2000-07-27 23:44:44 +00:00
Kurt Zeilenga
ecbb4e55b1 Expose ldap_create_control
Conform schema routines to ldap naming conventions
2000-07-22 17:29:54 +00:00
Kurt Zeilenga
b800a28c1e Plug leak of syn_names 2000-07-21 02:23:27 +00:00
Kurt Zeilenga
804100b431 Fix sasl end game processing. 2000-07-20 18:39:40 +00:00
Kurt Zeilenga
5c10406b9e Fix up SASL interact error checking 2000-07-19 22:53:22 +00:00
Randy Kunkee
f42e510e03 Fix prototype for dummy ldap_int_sasl_bind. 2000-07-19 07:44:06 +00:00
Kurt Zeilenga
9fb680d527 Fix SASL automatic/quiet modes... 2000-07-17 21:36:30 +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
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
bab26b3142 Move some noise about 2000-07-15 01:28:16 +00:00
Kurt Zeilenga
c8ca70f3ae Fix callbacks. 2000-07-14 22:00:16 +00:00
Kurt Zeilenga
36fb2d9d78 rework SASL callbacks 2000-07-14 20:56:30 +00:00
Kurt Zeilenga
95df143c33 *ssf > 1 should be *ssf > 0 2000-07-14 04:35:13 +00:00
Kurt Zeilenga
a42351c40f Fix an interaction error on multiple step binds.
Add additional notices.  Likely need to add a quiet mode.
2000-07-14 00:54:08 +00:00
Kurt Zeilenga
85c2a7a2a8 Update NT build to include recently added SASL sources. 2000-07-13 23:43:24 +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
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
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
Kurt Zeilenga
9d1e2ef7e2 Rename local variable 'sun' to 'sa' to avoid clash on Sun computers... 2000-07-04 17:57:21 +00:00
Kurt Zeilenga
8917a2d772 Remove ldap_*_dn() prototypes of #if 0 routines 2000-06-30 22:31:21 +00:00
Kurt Zeilenga
49d73e12a7 Avoid locale specific ctype routines. 2000-06-29 19:38:03 +00:00
Kurt Zeilenga
5d552f6051 Minor cleanup 2000-06-26 01:26:53 +00:00
Kurt Zeilenga
5d281b968d Disallow kbind over LDAPv3 2000-06-26 01:25:36 +00:00
Kurt Zeilenga
e2fa599482 Move old files to the Attic 2000-06-25 22:01:42 +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
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
ccbd048fb2 Use URI, not HOST 2000-06-18 19:35:52 +00:00
Kurt Zeilenga
8da110a9e7 Extern URI code to support literal IPv6 addresses
Copyright 2000 Stig Venaas, UNINETT
All rights reserved.

Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice is
preserved. The name of UNINETT may not be used to endorse or promote
products derived from this software without specific prior written
permission. This software is provided ``as is'' without express or
implied warranty.
2000-06-18 15:54:21 +00:00
Kurt Zeilenga
ddcb56546d Fix mod_values v mod_bvalues typo 2000-06-16 20:39:13 +00:00
Kurt Zeilenga
ae61f3dcaf Memory leak in referral code (ITS#596)
Apply patch from Steve Sonntag <vtag@novell.com>
2000-06-16 20:00:21 +00:00
Kurt Zeilenga
0c484042a0 Fix typo in last commit 2000-06-16 19:40:49 +00:00
Kurt Zeilenga
ac659e20d3 Add 1st libldap IPv6 patch (ITS#594) from Stig Venass.
Copyright 2000 Stig Venaas, UNINETT
All rights reserved.

Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice is
preserved. The name of UNINETT may not be used to endorse or promote
products derived from this software without specific prior written
permission. This software is provided ``as is'' without express or
implied warranty.
2000-06-16 19:15:08 +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
8665618210 Fix Novell URL kludge 2000-06-13 05:50:23 +00:00
Kurt Zeilenga
a56c161bdb Misc code cleanup. 2000-06-10 22:39:30 +00:00
Kurt Zeilenga
77df7c6098 Add ldap_unbind_ext_s 2000-06-10 17:29:10 +00:00
Kurt Zeilenga
89d7b86178 Add sort/vlv controls 2000-06-10 17:28:09 +00:00
Kurt Zeilenga
55dba4395f Update PF_INET6 and PF_UNIX detection, both default to auto 2000-06-09 23:09:51 +00:00
Mark Valence
f5101f8274 Fix operator precedence bug. 2000-06-09 06:48:43 +00:00
Mark Valence
0715e29ae5 Fix uninitialized var bug. 2000-06-09 06:45:14 +00:00
Kurt Zeilenga
77b235fba5 Apply Novell's IN_KERNEL support (ITS#576) 2000-06-08 17:11:57 +00:00
Kurt Zeilenga
0eb19657fa Add missing -DNO_THREADS trylock and make minor change to TLS
in attempt to get it work with GNU PTH.
2000-06-07 23:58:16 +00:00
Kurt Zeilenga
c6e4ad6c12 Add VLV/Sort controls (from Novell) 2000-06-07 23:43:56 +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
Kurt Zeilenga
6ad1c45bd3 Use LDAP_VFREE and friends. Other misc code cleanup. 2000-06-07 05:17:29 +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
c1002301d5 Don't include files moved to attic 2000-06-06 02:12:58 +00:00
Kurt Zeilenga
252ccfddbc (very) incomplete Digest-MD5 impl to Attic (until someone steps up
to the plate)
2000-06-06 00:27:49 +00:00
Kurt Zeilenga
7573a81efe getbyname/getbyaddr should share mutex per ITS#563.
Patch provided by Steve @ Novell, thanks!
2000-06-06 00:23:50 +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
921d24cf3a Fix up makefiles after removal of getdxname.c 2000-06-05 07:48:57 +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
743598b3d0 This is a one-liner Steve missed in the referral patch. Make sure the
ldo_rebindproc value has a sane value.
2000-06-02 23:51:31 +00:00
Kurt Zeilenga
c23536faa9 remove lint 2000-06-01 22:01:00 +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
81d2747247 A couple of minor fixes to LDAPv3 referral chasing 2000-05-31 17:47:33 +00:00
Kurt Zeilenga
a26cef7fc8 LDAPv3 referrals changes by Steve Sonntag @ Novell 2000-05-31 17:34:43 +00:00
Kurt Zeilenga
b66567f1f8 Minor fix to last commit 2000-05-30 19:07:07 +00:00
Kurt Zeilenga
875610cfcc Referral hack 2000-05-30 18:32:10 +00:00
Kurt Zeilenga
a43ef5bac4 Preset error just in case 2000-05-29 19:47:48 +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
1bc5314d62 Fix DNSSRV initialization bug 2000-05-26 18:05:27 +00:00
Kurt Zeilenga
63de8a6ea5 s/0/LDAP_MSG_ONE/ per Steve's patch (ITS#542) 2000-05-26 01:11:18 +00:00
Kurt Zeilenga
51fb094701 ITS#541: fix log check bug 2000-05-23 00:32:50 +00:00
Julio Sánchez Fernández
001061daf9 Added extensions to syntaxes, matching rules and object classes. 2000-05-22 10:43:01 +00:00
Kurt Zeilenga
bcf8f7eeb7 Remove lint 2000-05-22 06:19:49 +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
6c49fe7d1b Fix typo in last commit 2000-05-16 18:32:45 +00:00
Kurt Zeilenga
88411f5c27 Modify dn2domain code such that domains produced are rooted.
That is, they end with '.'.
2000-05-16 18:31:35 +00:00
Kurt Zeilenga
4e5992c190 Fix unsigned * vs unsigned long * bugs 2000-05-16 04:52:37 +00:00
Kurt Zeilenga
29d9fa20a2 Y2k copyright update 2000-05-13 02:36:07 +00:00
Kurt Zeilenga
8c15a05b2e Make sure we don't overallocate callbacks 2000-05-12 19:41:18 +00:00
Howard Chu
878466d375 Fix previous patch, zero out lud_next on new urldesc 2000-05-12 10:48:27 +00:00
Howard Chu
7d402a5562 Fix ldaps / TLS processing...
open.c: open_ldap_connection was not honoring the TLS config option.
  url.c: ldap_url_dup was not copying the properties.
2000-05-12 10:43:20 +00:00
Howard Chu
36eddf715a Exit loop after matching command is found in openldap_ldap_init_w_conf 2000-05-12 10:40:29 +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
Howard Chu
b0faccce56 Added debuglevel parameter to ldap_int_initialize(). 2000-05-11 09:48:40 +00:00
Howard Chu
d706765e56 Fix error detection for NT 2000-05-11 09:47:55 +00:00
Howard Chu
dddf399090 Fix dynamic link dependencies for NT and Unix 2000-05-11 09:47:15 +00:00
Kurt Zeilenga
0d6e1a4cbe Fix cred passing. 2000-05-11 01:40:02 +00:00
Kurt Zeilenga
f9411ca154 Fix another bug... seems to be working... ldap://root.openldap.org/ 2000-05-11 01:12:48 +00:00
Kurt Zeilenga
560fe7ade0 Fix == typo 2000-05-11 00:50:14 +00:00
Kurt Zeilenga
fbb58dec53 Fix minor bugs... 2000-05-10 22:21:57 +00:00
Kurt Zeilenga
e87e01b9c5 DNS SRV meat (a work in progress) 2000-05-10 21:48:18 +00:00
Howard Chu
7a586d4e49 Add ld parameter to ldap_pvt_tls_start invocations. See tls.c... 2000-05-10 21:02:46 +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
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
014afae269 setting UFN prefix to NULL should clear prefix not cause crash. 2000-05-03 10:45:36 +00:00
Kurt Zeilenga
95092681dd Clarify error string, add comment 2000-04-26 09:17:54 +00:00
Kurt Zeilenga
5043287a4c Fix NULL filter bug 2000-04-25 13:52:44 +00:00
Kurt Zeilenga
1973c664cc Fix NULL pointer deref bugs 2000-04-25 10:43:15 +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
21431725fc fix = vs == bug 2000-04-12 01:06:58 +00:00
Kurt Zeilenga
870dbca576 objectclass=* -> NULL 2000-04-12 01:00:48 +00:00
Kurt Zeilenga
4035b05232 ITS#441: unhex escape referrals. Needs review before being
applied to RE 1.2.
2000-03-20 22:00:16 +00:00
Kurt Zeilenga
1a348f9fbe Return okay after setting LDAP_OPT_X_TLS_CERT (ITS#447) 2000-03-18 23:55:51 +00:00
Kurt Zeilenga
535cc1dbbc Add missing ; 2000-03-14 04:27:00 +00:00
Kurt Zeilenga
72c6446ef6 Mark statically allocated BerElement as valid. 2000-03-14 04:25:49 +00:00
Kurt Zeilenga
117b6a91d0 More fixes and comments 2000-03-14 04:08:12 +00:00
Kurt Zeilenga
c43fec53f5 Cyrus SASL uses screwy terms. 2000-03-14 03:08:46 +00:00
Kurt Zeilenga
5701fec1b5 correct callback numbering 2000-03-14 02:59:53 +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
db662b516f Fix NT builds and remove lint 2000-03-13 19:30:14 +00:00
Julio Sánchez Fernández
50dafec453 Fixed an irritating problem with nss_ldap and pam_ldap. Since these
modules are dynamically loaded, they summon libldap when needed.
However, depending on the security libraries available when the
shared libldap was built, the latter brings up other dependencies.
On some platforms, it seems that no solution is available: no
indirect dynamic dependencies.  But for some platforms where this
is supported (in particular, Linux), the shared libldap must
contain info on what other dynamic libraries it needs.  We were
failing to put this info into the shared library.  This patch
seems to fix it.
2000-03-13 17:55:41 +00:00
Julio Sánchez Fernández
b9fb4c442c Useronly logic was inverted, we were ignoring the whole ldap.conf,
except where we should.
2000-03-13 12:31:35 +00:00
Kurt Zeilenga
6e5d2eea4e Add missing parens so that last commit behaves as desired. 2000-03-10 18:16:22 +00:00
Kurt Zeilenga
5b5b43a9e0 ITS#471: fix handling of delete referrals. 2000-03-08 18:56:22 +00:00
Kurt Zeilenga
655c0bda41 Ignore space in filter: ( !(foo=bar)) 2000-02-21 20:57:48 +00:00
Kurt Zeilenga
6cb60f381a Eliminate second session protocol version field. 2000-02-18 19:57:38 +00:00
Kurt Zeilenga
b8c8f6ef6f Fix ldap_set_option( NULL, LDAP_OPT_PROTOCOL_VERSION, &v ) as
suggested by Steve Sonntag.
2000-02-16 22:59:15 +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
d0d80a633a Put *free(NULL) asserts behind LDAP_MEMORY_DEBUG 2000-02-11 21:11:44 +00:00
Kurt Zeilenga
2549654bb5 Add comment about leaked on exit values.... we likely should
implement an at_exit() handler.
2000-02-02 21:26:36 +00:00
Luke Howard
30522f7437 Changed (!strcmp(...)==0) to (strcmp(...)==0); obviously
wrong. Fix from adamson@andrew.cmu.edu.
2000-02-01 23:34:16 +00:00
Kurt Zeilenga
0919e503cd Use LDAP_CONST, not const, in public function declarations. 2000-02-01 01:11:26 +00:00
Kurt Zeilenga
4eb13130a9 typedef ber_int_t ldap_ucs4_t 2000-01-27 01:04:17 +00:00
Kurt Zeilenga
f3cb97e973 Add utf-8 to MSVC projects and remove lint. 2000-01-25 20:22:17 +00:00
Kurt Zeilenga
ed9969b1c4 Make ldap_utf8_bytes() act like strlen() not sizeof() 2000-01-23 23:33:01 +00:00
Kurt Zeilenga
42cc5e5333 Fix bugs in UTF-8 code. Apply to getdn and charray. 2000-01-23 23:07:24 +00:00
Kurt Zeilenga
61b509d881 Add some robustness to UTF-8 routines. 2000-01-23 18:43:30 +00:00
Kurt Zeilenga
16c903909c Add comments to UTF-8 declarations.
Add US ASCII optimizations macros.
#ifdef out unused routines
Ready to hack getdn.c and others to support UTF-8
2000-01-23 05:35:38 +00:00
Kurt Zeilenga
4e0964e8b4 Add comments. 2000-01-23 02:39:55 +00:00
Kurt Zeilenga
22ba55371e Move ldap_utf8_*() declarations from ldap-int.h to ldap_pvt.h.
We may likely want to expose the routines at a later date (ldap_utf8.h?).
2000-01-22 21:09:24 +00:00
Kurt Zeilenga
aa934d0666 We'll need ldap_utf8_strpbrk() as well. 2000-01-22 21:03:21 +00:00
Kurt Zeilenga
4e3c4d8c6d Add initial (untested) implementations of ldap_utf8_strtok,
ldap_utf8_strcspn, ldap_utf8_strtok.
2000-01-22 20:55:43 +00:00
Kurt Zeilenga
3eca68a5d2 Add additional UTF-8 routines 2000-01-22 18:48:37 +00:00
Kurt Zeilenga
14210f5e34 Fix charlen and add getc 2000-01-22 03:40:54 +00:00
Kurt Zeilenga
23afcd5c6e Initial UTF-8 routines. 2000-01-22 01:55:34 +00:00
Luke Howard
6a06fb7fba In ldap_pvt_sasl_init() treat subsequent invocations as no-ops, not error. 2000-01-16 01:29:15 +00:00
Howard Chu
80f85e972d In ldap_pvt_tls_init() treat subsequent invocations as no-ops, not error.
In tls_verify_cb() use CRYPTO_free instead of free (necessary on NT due to
use of different heaps).
Changed update_flags to use SSL_get_error() to check success/status. This
fixes the problem of sb->sb_trans_needs_read getting set on dead sockets.
2000-01-15 19:03:16 +00:00
Kurt Zeilenga
9ac0eab126 remove UNSPECIFIED_TLS... HOST implies ldap:// 2000-01-14 01:08:15 +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
Luke Howard
5a0bbd7eed Imported <ldap.h> in <ldap_pvt.h> so ldap_pvt_sasl_bind() has necessary
types. Changed const sasl_callback_t * to LDAP_CONST sasl_callback_t *.
2000-01-05 12:56:17 +00:00
Luke Howard
a466a64318 Added support for connecting to LDAP servers located using DNS
SRV records. Added lock around resolver library which is shared
by the DNS SRV code and the getdxbyname() code.
2000-01-03 02:33:22 +00:00
Luke Howard
57b62dc7d4 Added ldap_pvt_sasl_bind() prototype to ldap_pvt.h. This
required importing sasl.h into ldap_pvt.h, thus that import
was removed from ldap-int.h.
2000-01-03 00:15:30 +00:00
Luke Howard
736b8d0a24 Braced ldap_connect_to_path() in #ifdef LDAP_PF_LOCAL so as to compile
without PF_LOCAL support.
2000-01-02 01:56:01 +00:00
Luke Howard
9b4e3b2234 Merged in preliminary support for Cyrus SASL library;
support for DCE slash-delimited, left-to-right DNs;
support for a domain socket transport (enable with
--enable-ldapi); and extensions to URL parsing to
support the latter transport.
2000-01-02 01:21:25 +00:00
Howard Chu
d92d403a76 NT requires $(SECURITY_LIBS) at link time. 1999-12-26 00:11:14 +00:00
Kurt Zeilenga
ab7c490960 Add BINDDN user-only directive to .ldaprc
Used only for simple bind when dn == NULL and password != NULL.
1999-12-17 03:27:16 +00:00
Kurt Zeilenga
30ffb54064 ITS#399: timelimit/timeout handling
ITS#400: LDAP_TIMEOUT handling
1999-12-16 00:41:18 +00:00
Kurt Zeilenga
096dcdc580 Add support for useronly configuration attributes. 1999-12-14 02:26:37 +00:00
Kurt Zeilenga
d331d4c1f3 Remove lint. 1999-12-12 05:07:17 +00:00
Kurt Zeilenga
18fad04e69 Fix == != typo 1999-12-12 05:02:03 +00:00
Kurt Zeilenga
c1a31ac9a2 Fix decoding of sasl bind and extended operation responses. 1999-12-12 03:16:46 +00:00
Mark Valence
7ee49bc676 Fix mem leak in ldap_start_tls(), treat empty host name as localhost when opening a connection. 1999-12-11 03:50:33 +00:00
Mark Valence
c0faf75a90 Unescape host:port when parsing a host list. 1999-12-11 03:46:07 +00:00
Mark Valence
a76c9f18a9 Start TLS extension: check that TLS was inited successfully, return default referral on failure as appropriate. 1999-12-10 19:18:33 +00:00
Mark Valence
e0e7e9842e client/server controls added to ldap_start_tls(). 1999-12-10 18:26:12 +00:00
Mark Valence
268dd9beaf Condition ldap_start_tls on HAVE_TLS. 1999-12-10 17:18:59 +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
Mark Valence
454284f1ea Adds for Start TLS functionality on slapd and LDAP C API. 1999-12-09 22:33:22 +00:00
Mark Valence
ccb9e1e9e3 Changed URL to URI for conf/env setting. 1999-12-09 22:17:08 +00:00
Howard Chu
6a26e68a02 Backout fix in r1.38 1999-12-08 23:50:59 +00:00
Howard Chu
3c5848a71e Fix ldap_chase_referrals to treat "ldap://host/" referrals the same as
"ldap://host".
1999-12-08 21:37:55 +00:00
Kurt Zeilenga
26c7d69e8c Update for new password codes for MSVC5 1999-12-08 06:44:22 +00:00
Mark Valence
601c1530a8 Changes for URI spport: New routines ldap_initialize and ldap_create; LDAPURLDesc replaces LDAPServer, LDAPURLDesc list used instead of ldo_defhost. 1999-12-07 19:47:00 +00:00
Mark Valence
83e2f38543 Changes for URI spport: New routines ldap_initialize and ldap_create; LDAPURLDesc replaces LDAPServer, LDAPURLDesc list used instead of ldo_defhost. 1999-12-07 18:52:05 +00:00
Mark Valence
5f86e47aa8 Changes for URI spport: New routines ldap_initialize and ldap_create; LDAPURLDesc replaces LDAPServer, LDAPURLDesc list used instead of ldo_defhost. 1999-12-07 18:42:25 +00:00
Mark Valence
15c83bef9d Changed ldap_pvt_tls_init_def_ctx() to not fail if there is no cacertfile/dir specified. This lets LDAP_OPT_X_TLS_REQUIRE_CERT=0 work. If LDAP_OPT_X_TLS_REQUIRE_CERT=1, connection will fail as appropriate since there is no CA list. 1999-12-06 04:44:22 +00:00
Mark Valence
aa8c95a24a Bug fix. == NULL changed to != NULL before freeing mem. 1999-12-05 22:22:37 +00:00
Mark Valence
7d98b59dfa Removed unused local var. 1999-12-05 22:19:08 +00:00
Kurt Zeilenga
5d5588836f Fix ldap_rename parameter order (ITS#387) 1999-12-04 17:19:11 +00:00
Howard Chu
ed05ed8025 Fix memory losses, ITS#379 1999-12-03 00:21:32 +00:00
Howard Chu
568e25a7a9 ldap_result was losing messages when multiple msgids were queued,
and results were being returned one-at-a-time. Ugh, this cost me two
days, loss of hair, sleep, etc.....!
1999-11-30 13:32:06 +00:00
Howard Chu
eaaea51b53 Fixes for NT dynamic linking. 1999-11-27 23:40:08 +00:00
Kurt Zeilenga
53ee6b01b9 Fix typo in ldap_compare_ext. Found by dspeck@novell.com. 1999-11-19 02:01:50 +00:00
Mark Valence
84be63096b Minor bug fix in ldap_parse_extended_result. 1999-11-08 18:47:47 +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
Kurt Zeilenga
4cc712db53 Add <ac/param.h> to wrap <sys/param.h> 1999-11-01 17:21:24 +00:00
Mark Valence
e20d6dfb8b bug fixes for ldap_msgtype and ldap_msgid 1999-10-30 18:33:37 +00:00
Kurt Zeilenga
baa34f752b Do not attempt to obtain sizeof(sin_addr.s_addr) or &sin_addr.s_addr
as s_addr member of in_addr may be a bitfield.
1999-10-30 04:58:06 +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
Howard Chu
5438e045af Fixed use of LDAP_F macro
See README 1.27 log
1999-10-28 07:29:25 +00:00
Howard Chu
74d93ac2f8 Fix Winsock-related warning and/or bugs.
See README 1.27 log
1999-10-28 07:17:08 +00:00
Mark Valence
a50cd075db Changes to make TLS work on Windows 1999-10-27 22:40:05 +00:00
Kurt Zeilenga
a5ac8f57f8 Complain if setsockopt TCP_NODELAY fails 1999-10-19 19:07:24 +00:00
Kurt Zeilenga
7ef67830af Minor adjustments based upon initial read of draft-ietf-ldapext-ldap-c-api-04.txt. 1999-10-19 18:57:38 +00:00
Kurt Zeilenga
60d00d4649 Force sd close. Suggested by rajk@home.com 1999-10-12 18:51:36 +00:00
Howard Chu
70f31490a8 Always return ld->ld_errno thru *errcodep if given to ldap_parse_result 1999-10-08 00:51:35 +00:00
Kurt Zeilenga
e7e4800d44 Remove lint. 1999-09-25 23:13:15 +00:00
Mark Valence
b221e4ad4b Fixed "typos" in TLS code. TLS is ATTR_TLS, not ATTR_BOOL.
ldap_pvt_tls_config() was missing first param.
1999-09-25 03:57:25 +00:00
Mark Valence
9e7243015c fixed LDAP_OPT_X_TLS case of ldap_pvt_tls_config().
ldap_pvt_tls_set_option() expects int* as third param.
1999-09-25 03:53:17 +00:00
Randy Kunkee
24c81ea599 Back out my change to ldap_sort_strcasecmp. My mistake from not reading
manpage carefully.  One should pass strcasecmp to ldap_sort_entries, not
ldap_sort_strcasecmp.  Ldap_sort_strcasecmp is for ldap_sort_values, NOT
ldap_sort_entries.
1999-09-24 18:16:41 +00:00
Randy Kunkee
b133aa528b Change call to strcasecmp in ldap_sort_strcasecmp, which makes
ldap_sort_entries work with ldap_sort_strcasecmp as the comparison
function.  Pointers were being dereferenced, and should only have been
casted.
1999-09-24 08:02:54 +00:00
Kurt Zeilenga
a68825e6df Howard convinced me that this version is slightly better.
back out previous commit.
1999-09-24 00:16:16 +00:00
Kurt Zeilenga
a93ac070b5 I believe ldap_result2error should return the value returned
by ldap_parse_result unless that value is SUCCESS.
1999-09-23 22:57:05 +00:00
Howard Chu
91e24173d0 Update ld->ld_errno if LDAP_DECODING_ERROR... 1999-09-23 22:35:58 +00:00
Howard Chu
fa62e37667 Fix ldap_parse_result and ldap_result2error to return correct results. 1999-09-23 22:10:22 +00:00
Kurt Zeilenga
deafd4e274 experimental ITS#109 fix: make kbind open default connection if necessary.
implemented ldap_open_defconn() to centralize default connection
opening in open.c.  Used by ldap_open, kbind, and send_initial_request().
1999-09-23 04:08:33 +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
86813f2b4b Fix typo in last commit. 1999-09-17 22:11:08 +00:00
Kurt Zeilenga
c35d53d6e0 Apply y2k fix based upon Howard Young's (ITS#294) suggestion 1999-09-17 22:05:51 +00:00
Kurt Zeilenga
7b0753afb2 Add OpenLDAP RCSid to conf files 1999-09-09 04:43:30 +00:00
Kurt Zeilenga
e642a1b9cd Add OpenLDAP RCSid 1999-09-08 22:52:19 +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
Hallvard Furuseth
f3880e5633 Remove lint 1999-09-06 04:42:20 +00:00
Hallvard Furuseth
4a5e2febed Some constification & lint removal 1999-09-04 21:15:49 +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
f5c2ba7c3e Fix last commit. Should not have deleted assignment to p away. 1999-09-01 05:28:29 +00:00
Hallvard Furuseth
6632e41ee8 Export ldap_pvt_<find_wildcard,filter_value_unescape>() from libldap.
Use them in slapd/str2filter.c.
1999-08-31 00:44:49 +00:00
Kurt Zeilenga
878d489ea9 Do not overwrite charray argument if charray_add realloc fails.
Caller is required to call ldap_charray_free as needed.
1999-08-30 01:24:33 +00:00
Hallvard Furuseth
66704f67b9 Catch \ at end of filter 1999-08-28 22:15:16 +00:00
Hallvard Furuseth
4d94092995 Remove 'cast away const' 1999-08-28 22:14:21 +00:00
Hallvard Furuseth
635a666359 Fix typo in filter_value_unescape() 1999-08-28 22:06:52 +00:00
Kurt Zeilenga
cc3615314b Defer addition until we have some basic UTF-8 routines 1999-08-25 21:27:39 +00:00
Kurt Zeilenga
af17a9f7ad Add dn.c 1999-08-25 06:52:28 +00:00
Kurt Zeilenga
5c63fd55b5 Implement ldap_dn_normalize and friends. Should be used by clients
to validate input dn's BEFORE sending dn's to server.
Also fixed getfilter to use REG_EXTENDED|REG_NOSUB.  (and fixed one
case where REG_BASIC was still used).
s/strdup/LDAP_STRDUP/
Added ldap_pvt_str2lower/upper
1999-08-25 06:44:08 +00:00
Gary Williams
f8a3a664fc LDAP_P is only for prototypes, remove from function def 1999-08-24 18:42:11 +00:00
Kurt Zeilenga
2d2719123d Rename filter entry's strcpy_special() to strcpy_regex() to better
reflect its purpose.  Modify switch to support REG_EXTENDED expressions.
Use REG_EXTENDED instead of REG_BASIC everywhere.
Modify <ac/regex.h> to support <gnuregex.h> for testing purposes.
Requires: env CPPFLAGS="-DHAVE_GNUREGEX_H=1" LIBS=-lgnuregex ./configure
1999-08-24 01:13:30 +00:00
Kurt Zeilenga
b8a3a153bb Axe <varargs.h> support. Assume STDC C translator is available
to build OpenLDAP.
1999-08-24 00:27:53 +00:00
Hallvard Furuseth
2ae08eecad Fix printf formats: print msgtype as %lu, remove spurious sval arg in apitest 1999-08-17 21:14:03 +00:00
Hallvard Furuseth
fa4c4448c4 Add const, to fix "cast away from const" warnings 1999-08-17 21:09:26 +00:00
Hallvard Furuseth
6147119dc8 Add ldap_*2name() in <include,libldap>/schema, use them in slapd/schema 1999-08-16 02:59:11 +00:00
Hallvard Furuseth
e5e91d94aa Add missing newline and EOF 1999-08-16 02:40:00 +00:00
Kurt Zeilenga
83abd65d49 Add extensible filter support to -lldap. Need to implement server
side (which most is dependent upon having matching rule support).
1999-08-07 18:54:49 +00:00
Kurt Zeilenga
0fe5da0f9a Fix filter escapes. ITS#247 1999-08-07 04:48:16 +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
3820b35870 Use -llber set_nonblock implementation.
Use ldap_int_tblsize instead of s+1 in select.
Need to eliminate all to read(2).
1999-08-04 18:32:38 +00:00
Kurt Zeilenga
b3ce9d497c non-blocking connect needs special handling under Winsock. 1999-08-04 00:40:03 +00:00
Kurt Zeilenga
2b79ff2c48 Initial inet_aton() detection. 1999-08-03 20:02:44 +00:00
Kurt Zeilenga
1b41dfbce0 LDAP_OPT_NETWORK_TIMEOUT feature (ITS#239) from Lars Uffmann.
Needs a bit more work.
	- global net/api timeouts are not inherited on session creation.
	- need configure check for inet_aton() (coming soon)
	- ioctl/fcntl portability issues (should share implementation
		with lber routines)
1999-08-03 19:27:22 +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
97683ac5fd ldap_perror: don't print matched DN or error text if length is zero. 1999-08-02 20:03:50 +00:00
Kurt Zeilenga
c73f17fd6e Add -dn as a synonym for -dnt. 1999-08-02 17:19:05 +00:00
Kurt Zeilenga
236be7f5a7 Fix --enable-dns compilation problems. 1999-08-02 07:41:29 +00:00
Hallvard Furuseth
8a9b9292de Change unsigned long cast of offset to size_t in ldap_build_filter() 1999-08-02 05:51:04 +00:00
Hallvard Furuseth
576956ceb0 Finish s/lber_bprint/ber_bprint/ renaming 1999-08-02 01:20:48 +00:00
Hallvard Furuseth
67ff28bf52 Include <ac/stdlib.h> instead of <stdlib.h> 1999-08-01 22:42:34 +00:00
Hallvard Furuseth
894b74d730 Use ber_set_option() instead of setting lber_debug 1999-08-01 20:22:26 +00:00
Kurt Zeilenga
b217a4fc51 Remove lint, remove YEAR_PEDANTIC macro, update comment. 1999-07-27 00:36:33 +00:00
Kurt Zeilenga
de67e6d327 Fix leak of default filter. 1999-07-23 22:02:57 +00:00
Kurt Zeilenga
eb4c486b90 Update RFC comments 1999-07-23 21:56:21 +00:00
Kurt Zeilenga
5fea91c3ec Accept ldap://foo:port (ie: no trailing '/') 1999-07-23 21:54:18 +00:00
Julio Sánchez Fernández
9cdd2c2037 ldap_url_parse was fundamentally broken. It would quit before
time, skipping the filter, for instance.  Also, we were parsing
twice the scope and the filter.  I think this change is right,
but could use more eyeballs...
1999-07-23 20:36:11 +00:00
Randy Kunkee
6bef298437 Remove extra code (non-functional change, just produces warning on OSF4.0e). 1999-07-23 00:56:56 +00:00
Kurt Zeilenga
d147e609d2 Implement TCP_NODELAY on both client and server side. 1999-07-22 21:49:35 +00:00
Kurt Zeilenga
42304b7ada Fix control parsing and controls free routine. 1999-07-22 04:47:58 +00:00
Kurt Zeilenga
17eb202732 Unhex url extensions. 1999-07-21 20:44:40 +00:00
Julio Sánchez Fernández
5f53b747a5 Partial support for a new option to help debug TLS connections,
not yet user-settable.  Defaults "on" for now.
Partial support for temporary RSA keys, skeleton for DH.
Add call to X509V3_add_standard_extensions() on init, mod_ssl
does this too, but I am unsure about what it does.
Move management of client CA certificates to a new routine, since
it is going to get more complex than the current code.
1999-07-21 19:18:08 +00:00
Julio Sánchez Fernández
e892ebfc5e Some content for tls_verify_cb where parts of our policy should
be implemented.

The rest of this change mostly contains random ideas taken from
mod_ssl.  The purpose is to get the repository in sync with the
code I am testing.  I still can't manage to make Netscape send
its certificate to slapd, though it works with Apache/mod_ssl
(with the same certificates).  Trying s_client against both
does not shed any light.  If anyone manages to make it work,
please let us know.
1999-07-20 18:31:53 +00:00
Julio Sánchez Fernández
463a7ec91d We were freeing lud_dn when when lud_host was meant, leading to
arena corruption.
1999-07-20 11:11:57 +00:00
Kurt Zeilenga
543aafd991 Implement RFC2255 URL format. 1999-07-19 19:32:47 +00:00
Kurt Zeilenga
d2487f9219 s/time(0)/time(NULL)/ 1999-07-19 19:28:21 +00:00
Hallvard Furuseth
cde93a6e06 make ldap.ld_lberoptions unsigned, like berelement.ber_options 1999-07-18 01:20:45 +00:00
Hallvard Furuseth
5ab862aee7 Pass socklen_t* instead of int* to getsockopt, accept, getpeername, recvfrom 1999-07-16 18:43:10 +00:00
Julio Sánchez Fernández
85acec922f We were not remembering the allocated SSL thing in the Sockbuf.
Set flags without relying on errno (this change may be gratuitous
or wrong).
1999-07-16 15:46:15 +00:00
Julio Sánchez Fernández
7a64fcf7b3 Set ciphers from slapd.conf.
More error checking and reporting.
Slowly getting there, SSL_accept succeeds now, but connection breaks
immediately after that (my glue logic with slapd is broken).
1999-07-15 21:03:47 +00:00
Kurt Zeilenga
c7425738bb Add missing arg to Debug macro call 1999-07-15 20:00:05 +00:00
Julio Sánchez Fernández
41de66a0b2 New routine tls_report_error to analyze errors from OpenSSL
Change temporarily the default protocol from TLSv1 to SSLv3 with
fallback to SSLv2.  This seems necessary for slapd to accept connections
from Netscape.
Try to set the cipher list in the default context.  Does not semm to
work yet.
1999-07-15 14:59:09 +00:00
Kurt Zeilenga
cbb5553b03 Newer versions of OpenSSL install headers in $prefix/include/openssl... 1999-07-14 00:03:52 +00:00
Julio Sánchez Fernández
710f697fb7 Get and set TLS options 1999-07-13 19:34:07 +00:00
Julio Sánchez Fernández
70fe83b1d2 First version with TLS. Untested. 1999-07-13 19:32:51 +00:00
Julio Sánchez Fernández
43fba8fcb1 First version with TLS. Untested. 1999-07-13 19:30:41 +00:00
Julio Sánchez Fernández
97a681910e Options for TLS 1999-07-13 19:29:19 +00:00
Julio Sánchez Fernández
739466b85d Add tls.c
Add use of TLS_LIBS so that test tools compile
1999-07-13 19:27:33 +00:00
Julio Sánchez Fernández
8f4f94d415 First version of TLS glue for SSLeay/OpenSSL originally written by
Bart Hartgers.  Untested.
1999-07-13 19:11:53 +00:00
Hallvard Furuseth
2c27a6abcf Eliminate htonl(unsigned_long_arg), which is wrong on 64-bit OSF1/alpha 1999-07-13 09:41:25 +00:00
Hallvard Furuseth
5f880ae022 Fix LDAP_CONST->const in explode_name(), it failed when LDAP_CONST was empty. 1999-07-13 06:48:35 +00:00
Hallvard Furuseth
fb3b8e5ef1 Fix LDAP_CONNECTIONLESS code rot 1999-07-13 06:39:55 +00:00
Hallvard Furuseth
c4a13efbea Fix NULLxxx -> NULL 1999-07-13 06:37:19 +00:00
Hallvard Furuseth
6eef6bea01 ldap-int.h 1999-07-13 06:27:47 +00:00
Hallvard Furuseth
354702b94e ldap-int.h 1999-07-13 06:21:14 +00:00
Hallvard Furuseth
96e8fafb51 constify use of invalue in <ber/ldap>_set_option() 1999-07-13 05:17:50 +00:00
Hallvard Furuseth
2cc187ffbf constify ldap_int_put_controls, ldap_control_dup, ldap_controls_dup 1999-07-13 05:13:33 +00:00
Hallvard Furuseth
95b64907d3 Fix read_next_searchobj prototype: long*blenp -> ber_len_t*blenp 1999-07-13 05:04:06 +00:00
Hallvard Furuseth
55fa595f56 Add missing newline at EOF 1999-07-13 04:11:49 +00:00
Kurt Zeilenga
7574b70c6b Add charray (from slapd) to -lldap/-lldap_r (not yet used)
Add digest md5 codes to -lldap/-lldap_r (work in progress)
1999-07-07 17:58:21 +00:00
Kurt Zeilenga
4831bb0a75 request value should be optional. 1999-07-07 17:52:06 +00:00
Kurt Zeilenga
a67b08d515 Minor editorial change. 1999-07-07 17:51:39 +00:00
Kurt Zeilenga
522cd72f43 Fix CRITICIAL typo 1999-07-07 17:49:15 +00:00
Julio Sánchez Fernández
c8e37af0ca Removed numerous memory leaks detected by Mark Meredith.
Make sure the token_val argument to get_token is always initialized
to something, either newly allocated memory or NULL.
1999-07-02 11:57:07 +00:00
Kurt Zeilenga
ddd0559284 Fairly complete slapd SASL bind parsing... and centralized cleanup code.
Update error strings and cldap misuse of server error.
1999-07-01 04:42:01 +00:00
Kurt Zeilenga
f4ff5a9299 EXPERIMENTAL: Use sasl bind for simple bind.
Add sasl.c to libldap_r.dsp.
1999-06-28 23:24:16 +00:00
Kurt Zeilenga
64d5725662 Allow ctrls argument to be NULL. 1999-06-28 22:47:20 +00:00
Kurt Zeilenga
5045f15b23 EXPERIMENTAL ldap_parse_result() 1999-06-28 22:33:03 +00:00
Kurt Zeilenga
8482d2b488 Provide build support for sasl.c. 1999-06-28 22:30:56 +00:00