Commit Graph

234 Commits

Author SHA1 Message Date
Howard Chu
130f6e1b7d Memory context tweaks for other ops 2003-04-12 10:47:11 +00:00
Howard Chu
374d919fc0 More memory context tweaks 2003-04-10 06:21:53 +00:00
Howard Chu
8db24ce9e8 Fix backglue crash 2003-04-07 03:43:12 +00:00
Kurt Zeilenga
1626f722c5 abort if result code is negative 2003-04-02 21:05:06 +00:00
Howard Chu
9355dca9af Consolidated slap_callbacks into one function. Removed send_search_result. 2003-04-01 04:12:18 +00:00
Howard Chu
fa9bf23501 Minor cleanup 2003-03-31 07:49:34 +00:00
Luke Howard
6c2f47ecd5 SLAPI fixes 2003-03-31 04:56:17 +00:00
Howard Chu
e8c58b4e7f Major API change - (SLAP_OP_BLOCKS) All request parameters are
consolidated into the Operation structure. All reply parameters
are consolidated into the new SlapReply structure. Most operations
now have identical call signatures... Changes are not #ifdef'd,
revert to -r NO_SLAP_OP_BLOCKS if necessary to back out.
2003-03-30 09:03:54 +00:00
Howard Chu
65b85d83ea Revert previous commit 2003-03-26 19:22:33 +00:00
Howard Chu
546d5cb3a0 ITS#2389 - stop reading requests on a connection when we are blocked
writing responses. This may not be the right fix.
2003-03-20 11:54:17 +00:00
Howard Chu
0423ec0bd6 Fix ITS#2335, RFC1798 sequence layout was wrong. 2003-02-28 13:04:16 +00:00
Howard Chu
507781eeb3 Partial fix of ITS#2335, restore proper CLDAP msg format for LDAPv2 2003-02-28 08:34:31 +00:00
Kurt Zeilenga
aaf253318b Move include <slapi.h> behind #ifdef 2003-02-10 02:09:00 +00:00
Kurt Zeilenga
c04e9ac993 rename "permit modify" control to "permissive modify"
rename "no referrals" controls to "domain scope"
misc cleanup
2003-02-09 05:39:21 +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
Jong Hyuk Choi
e1bf8cc437 Intermediate Response 2003-02-03 17:28:19 +00:00
Luke Howard
dfc7d338a6 Add sendreference callback 2003-02-01 07:04:13 +00:00
Luke Howard
eec370af52 LDAPv3 over UDP disposition is now compatible with Active Directory
Stubs for PermitModify/NoReferrals controls; implementation coming soon
2003-01-23 15:12:53 +00:00
Luke Howard
2bc4da9378 SLAPI fixes (better documentation) 2003-01-22 13:38:38 +00:00
Luke Howard
faf8d43a6f First pass at replacing proprietary OpenLDAP virtual attribute API
(which existed briefly for a day!) with Sun ONE DS 5.x computed
attribute API
2003-01-22 13:06:46 +00:00
Luke Howard
97b9eb2e55 Set opattr plugin-specific pblock parameters to NULL after coalescing
returned attributes
2003-01-21 14:06:22 +00:00
Luke Howard
0edb0803d2 Add support for virtual operational attribute plugin type 2003-01-21 14:00:25 +00:00
Luke Howard
8e8b4093f5 Mark Sun ONE 5.x SLAPI plugin types to avoid collisions
Rename internal slapi_XXX API to slapi_x_XXX
Always set result code/matched/error text in operation parameter block
to make available to postoperation plugins
2003-01-21 02:46:55 +00:00
Luke Howard
d484a9781c Conform SLAPI to Netscape, iPlanet and Sun ONE Directory Server
behaviour:

1. Plugins never return LDAP result codes, instead they return a
   small integer (0 or -1, others for special cases)
2. Preoperation plugins can abort processing by returning a non-
   zero value to the frontend
3. Postoperation plugins never abort processing (all are called)
   and their return values are ignored
2003-01-20 23:18:11 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Pierangelo Masarati
1b70e16448 SLAPI - Netscape plugin API for slapd - based on patch contributed by Steve Omrani <somrani@us.ibm.com> as ITS#2073 2002-12-07 17:19:29 +00:00
Howard Chu
827ea96e16 ITS#1523 enhanced ACL caching 2002-12-04 02:35:00 +00:00
Kurt Zeilenga
da76c1951e First-cut proxy authorization support. 2002-12-03 06:11:32 +00:00
Julius Enarusai
6e9c21cff8 Converted ch_malloc, ch_calloc and ch_realloc calls to SLAP_MALLOC,
SLAP_CALLOC and SLAP_REALLOC respectively.
2002-11-08 17:13:20 +00:00
Julius Enarusai
2d98b19bf7 Converted ch_malloc, ch_calloc and ch_realloc calls to SLAP_MALLOC and
SLAP_CALLOC in add_value/add_value_one functions and propagated errors to
all functions that use these functions.
2002-11-01 18:59:52 +00:00
Kurt Zeilenga
6d199506bb ber_write error message cleanup 2002-10-25 05:47:08 +00:00
Kurt Zeilenga
3a17376dfd s/256/LBER_ELEMENT_SIZEOF/
set LBER_ELEMENT_SIZEOF to 256
maybe this should be set to N*sizeof(size_t) or something
2002-10-07 21:01:47 +00:00
Kurt Zeilenga
3eb21d8a6c Misc cleanup 2002-09-16 21:50:55 +00:00
Kurt Zeilenga
1d0e916c6f Misc CLIENT_UPDATE cleanups 2002-09-15 22:22:51 +00:00
Jong Hyuk Choi
1509e321de LCUP Response Control Code 2002-09-14 00:29:06 +00:00
Kurt Zeilenga
132506e13c Add NOOP search support. 2002-09-02 17:38:17 +00:00
Pierangelo Masarati
b0dfd89e1b added referral support to back-{ldap,meta}; need to allow send_serch_reference() handle NULL entry pointer 2002-08-31 10:35:23 +00:00
Pierangelo Masarati
e7d2d0a9f5 avoid zero size ch_malloc() when no attributes are present in vrFilter 2002-08-29 13:32:28 +00:00
Pierangelo Masarati
fbc11bd16a - added the capability to filter based on hasSubordinate attribute
to back-bdb, back-ldbm and back-sql (the latter with limitations);
- added handling of ":dn" attributes to extended rfc2254 filters
  and to matched value filter
- altered the behavior of get_mra() when a matching rule is given:
  now it checks whether it is compatible with the attribute syntax
  and, in case it is, the given mr is used.  In case of no type,
  the check is delayed when filtering
2002-08-29 10:55:48 +00:00
Pierangelo Masarati
f1eb3e39ec use appropriate attr list when matching value of operational attrs 2002-08-29 10:45:48 +00:00
Pierangelo Masarati
a038ef68e6 added attr_merge/value_add functions that dela with single attribute; bervals for '*', '+' and '1.1' made available 2002-08-23 08:49:19 +00:00
Kurt Zeilenga
f8f1321760 Add support for response controls 2002-08-12 20:50:20 +00:00
Howard Chu
13d13baeda In backend_operational don't add subschemaSubentry unless it was
requested. In send_search_entry don't malloc vrFilter flags unless
a matchedValue filter was given; malloc 1 contiguous block instead
of multiple sub-arrays.
2002-08-07 05:31:03 +00:00
Kurt Zeilenga
8a3d02bf6b misc cleanup 2002-07-23 18:35:12 +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
fffd84ff9f Fix matched values zero allocation bug (ITS#1931) 2002-07-09 00:20:30 +00:00
Kurt Zeilenga
35749a2520 make curlies match 2002-06-18 22:41:03 +00:00
Howard Chu
cf61e03cb8 ITS#1891, debug msg in send_search_entry 2002-06-18 00:37:45 +00:00
Kurt Zeilenga
5c5b5455fb VLV updates 2002-06-03 16:45:09 +00:00
Pierangelo Masarati
bffa43e743 fix formats 2002-05-04 11:07:28 +00:00
Kurt Zeilenga
9d39e1e672 fix uninitialized counter in matched values 2002-05-03 19:00:52 +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
ababc07479 Add "nentries" to send_search_result() Statslog message. Suggested
by ITS#1360.
2002-04-16 04:58:41 +00:00
Howard Chu
efecf4e121 ITS#1733 eliminate o_abandonmutex 2002-04-11 08:03:40 +00:00
Kurt Zeilenga
32fb8b0bff Add ACL state recording to avoid multiple evaluation of
value-independent access controls.
2002-02-09 05:14:17 +00:00
Howard Chu
ac1332cdb8 Renamed BVarray to BerVarray. Moved slapd:bvarray_{add,free} to
liblber:ber_bvarray_{add,free}.
2002-01-14 01:43:17 +00:00
Howard Chu
af862f8c6b Reworked callback layout, added send_search_entry callback 2002-01-13 16:40:37 +00:00
Kurt Zeilenga
ce2d8ebc7e Misc cleanup, lint removal, and minor optimizations 2002-01-13 05:00:59 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Howard Chu
f52cc9bab5 Change struct berval ** to BVarray 2002-01-02 11:00:36 +00:00
Pierangelo Masarati
7d12cbe341 my compiler complains ... 2001-12-31 16:10:39 +00:00
Howard Chu
743c402265 Changed search attrs from struct berval ** to AttributeName * 2001-12-31 11:35:52 +00:00
Howard Chu
9383bf3265 Use ber_free_buf 2001-12-31 06:02:35 +00:00
Kurt Zeilenga
ef7a99ff99 Additional struct berval DN changes... 2001-12-26 23:26:55 +00:00
Kurt Zeilenga
21288fbb21 Misc cleanup and dn_normalize() zapping
Fix nameAndOptionalIdentifer syntax.
2001-12-26 16:42:35 +00:00
Howard Chu
68b1bbb89d Changed search attrs to struct berval **.
Use typedefs for all backend functions, to minimize work in future API
updates. (back-*/external.h will never need updating in the future.)
2001-12-26 08:17:44 +00:00
Pierangelo Masarati
e36bde9180 added backend-side support for on-the-fly operational attributes; added hasSubordinates to schema and back-ldbm 2001-12-22 11:50:16 +00:00
Kurt Zeilenga
abd9be4def Remove lint and misc MSVC updates 2001-12-09 02:34:45 +00:00
Howard Chu
584d58e8d1 Added callbacks for send_ldap_response and send_search_result. 2001-12-08 15:21:20 +00:00
Kurt Zeilenga
3f1ab56fa9 Fix reference scope. 2001-12-07 22:28:46 +00:00
Kurt Zeilenga
82fad7d0c8 First stable an implementing latest namedref specification.
Includes rewriting of URLs where the DN of the referral object
and the DN of the ref attribute attribute are not the same.
Also, always returns explicit DN and scope.
Currently, back-ldbm only.  Needs to be ported to back-bdb.
2001-10-26 02:05:14 +00:00
Howard Chu
0e16f6acf9 Moved AttributeDescription caching into main code:
Changed AttributeDescription.{ad_cname,ad_lang} to struct berval everywhere
   Deleted ad_free() everywhere
   Added ad_mutex to init.c

The AttributeDescriptions are in a linked list hanging off of the
corresponding AttributeType.
2001-10-22 13:23:05 +00:00
Kurt Zeilenga
f704c35caf subschemaSubentry attributes could be leaked under some conditions,
plug them.
2001-10-03 18:19:07 +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
a1ecd9b697 Fix reference stats2 message 2001-09-28 01:44:13 +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
Pierangelo Masarati
8a78d022bc cleanup and cast of logs 2001-09-13 21:30:44 +00:00
Gary Williams
f49fd8a98e fix format 2001-01-17 16:35:53 +00:00
Gary Williams
ffcdc6d11d More new logging (Behind NEW_LOGGING) 2001-01-15 19:17:29 +00:00
Kurt Zeilenga
8f9980d5f6 Logging changes 2000-09-30 01:04:54 +00:00
Kurt Zeilenga
7c96f629ee Add connection and operation arguments to backend callbacks.
Needed for transactions.
2000-09-29 05:25:44 +00:00
Kurt Zeilenga
2aebaba70e Patch req2rst not to abort on unknown tags 2000-09-21 22:29:53 +00:00
Kurt Zeilenga
f2b1d423c1 Cleanup 2000-09-14 07:10:15 +00:00
Kurt Zeilenga
7800d2d41e Remove cldap cruft 2000-08-18 03:35:19 +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
804100b431 Fix sasl end game processing. 2000-07-20 18:39:40 +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
df4b2a443e Fix addition of dynamic operational attributes (subschemaSubentry) 2000-06-13 17:48:51 +00:00
Kurt Zeilenga
c3f8de76ef Fix up debug statement as suggested by christian.lorenz@suse.de 2000-06-07 14:07:50 +00:00
Kurt Zeilenga
693fb9424a unifdef -DSLAPD_SCHEMA_NOT_COMPAT -USLAPD_SCHEMA_COMPAT 2000-06-06 19:43:18 +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
60981bdce1 Add debugging... 2000-05-26 07:01:33 +00:00
Kurt Zeilenga
4a254064f5 Fix referrals bug 2000-05-26 06:08:06 +00:00
Kurt Zeilenga
c96f12ee49 SLAPD_SCHEMA_NOT_COMPAT: Fix memory stomping 2000-05-24 22:55:16 +00:00
Kurt Zeilenga
60802201e3 Const'ification
SASL mech removed from backend bind callback (as SASL is managed by frontend)
Changes to some backends are untested (as I don't have all dependent
  software install)
2000-05-22 03:46:57 +00:00
Kurt Zeilenga
37235b71c0 SLAPD_SCHEMA_NOT_COMPAT: working cn=schema 2000-05-15 23:36:37 +00:00
Kurt Zeilenga
aa08287e29 SLAPD_SCHEMA_NOT_COMPAT: simple Root DSE search WORKS! 2000-05-15 22:07:10 +00:00
Kurt Zeilenga
40ab90fa9c SLAPD_SCHEMA_NOT_COMPAT: Rework caching of internal schema 2000-05-15 21:05:25 +00:00
Kurt Zeilenga
7b14e1304a Relocate schema_init() call to main()
Add schema_prep() call to main()
Similiar changes to slapcommon.c
Add schema_prep() impl to schema_init.c
Add slap_ad_entry and slap_ad_children globals.
Add "entry" and "children" to openldap.schema (this likely should
  be added to schema via code, not configuration)
2000-05-15 20:04:36 +00:00
Kurt Zeilenga
4bc786f34b Y2k copyright update 2000-05-13 02:47:56 +00:00