Commit graph

163 commits

Author SHA1 Message Date
Kurt Zeilenga
159de0f135 Updated notices and acknowledgements 2003-11-26 07:16:36 +00:00
Hallvard Furuseth
5ee9264465 Fix assignment of <char/int>* to unsigned <char/int>* and vice versa. 2003-05-02 13:29:28 +00:00
Luke Howard
375224128e More careful checking of AVA flags 2003-04-24 11:10:31 +00:00
Luke Howard
ad40330a86 Fix Active Directory canonical name breakage 2003-04-24 11:09:22 +00:00
Howard Chu
1874658ae3 More memory context tweaks 2003-04-11 01:02:08 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +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
90b1e7bd45 Fix ldap_X509dn2bv, OpenSSL gives us DN attributeTypes in EBCDIC 2002-09-02 13:46:56 +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
2de291ed6e Cut back on the logging... 2002-06-21 19:49:25 +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
e8e7847175 ITS#1797 silence uninit'd var warnings 2002-05-04 10:52:05 +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
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
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
Julius Enarusai
3921e1b0c2 Added LDAP_LOG messages 2002-03-27 21:38:32 +00:00
Kurt Zeilenga
d50eb2e959 C translator portability changes (ITS#1609) 2002-02-23 23:47:37 +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
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
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
Pierangelo Masarati
36f6a1169a make temporary RDN and AVA arrays rescalable if needed 2002-01-14 19:44:04 +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
Kurt Zeilenga
f80b4ad53e Minor const'ification cleanup 2002-01-08 20:24:56 +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
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +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
fdb62b5650 Even larger TMP_SLOTS 2002-01-03 19:45:34 +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
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
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
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
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
04ea760a91 Delete USE_LDAP_DN_PARSING 2001-12-24 06:02:59 +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
Howard Chu
e5eb270e6c from jon@symas.com - misc Windows cleanup 2001-12-17 22:42:55 +00:00
Pierangelo Masarati
f4b21cc7b5 reworked internal stuff 2001-12-10 09:43:31 +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
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
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
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
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
Pierangelo Masarati
93923d4345 honors multiple type/value in rdn when generating ufn 2001-07-11 20:16:25 +00:00
Kurt Zeilenga
778b665242 Fix up some free'ing. 2000-10-02 17:43:39 +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
5b856458a2 s/SAFEMEMCPY/AC_MEMCPY/
Use AC_FMEMCPY where appropriate (-llber)
2000-07-28 01:07:07 +00:00
Mark Valence
0715e29ae5 Fix uninitialized var bug. 2000-06-09 06:45:14 +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
29d9fa20a2 Y2k copyright update 2000-05-13 02:36:07 +00:00
Kurt Zeilenga
21431725fc fix = vs == bug 2000-04-12 01:06:58 +00:00
Kurt Zeilenga
42cc5e5333 Fix bugs in UTF-8 code. Apply to getdn and charray. 2000-01-23 23:07:24 +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
Kurt Zeilenga
403f4479bc Add OpenLDAP RCSid to *.[ch] in clients, libraries, and servers.
Replace old Id as needed (back-tcl).
Leave updating of contribWare to contributors (for now).
1999-09-08 19:06:24 +00:00
Kurt Zeilenga
f5c2ba7c3e Fix last commit. Should not have deleted assignment to p away. 1999-09-01 05:28:29 +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
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
Kurt Zeilenga
669b8f4047 ber_int_t, ber_tag_t, ber_socket_t, ber_len_t
added lber_types.h.nt, lber_types.h.in
removal of NULLxxx internal macros (in favor of NULL).
ch_free added to slapd,slurpd/ch_malloc.c
#define free ch_free (should be removed after s/free/ch_free/g) in proto-slap.h
ch_malloc and friends use ber_memalloc and friends
1999-06-18 23:53:05 +00:00
Kurt Zeilenga
21c70857f1 s/<stdlib.h>/<ac/stdlib.h>/ 1999-06-03 00:37:44 +00:00
Kurt Zeilenga
1f52f6e43e Add ber_strdup(), remove ldap_int_strdup(), add LDAP_STRDUP macro
and ripple change through -lldap.
1999-06-02 22:28:22 +00:00
Kurt Zeilenga
1bcec8bf6a Add LBER_ and LDAP_ memory allocators/deallocators for internal
library use:
  LBER_ macros expand to system routines.
  LDAP_ macros expand to new ber_ allocators.

Add ber_ and ldap_ memory allocators/deallocator:
  ber_ routines are wrappers of LBER_ macros.
  ldap_ routines are wrappers of ber_ routines.

Removed safe_realloc() macro from various files.  This issue
(if an issue) should be resolved across whole package.

ldapmodify.c now uses ber_ allocators to resolve ber_bvfree()
vs. WIN32 multiple heaps issue.

These changes should facilate implementation of
  ber_set_option( NULL, LBER_OPT_MEMORY_FN, ...)
and
  ldap_set_option( NULL, LDAP_OPT_MEMORY_FN, ...).
1999-05-29 01:19:14 +00:00