Pierangelo Masarati
674c98fa7d
honor stop on error
2006-04-04 19:48:22 +00:00
Pierangelo Masarati
2e9f2995ec
only wait if no entry was returned
2006-04-04 17:41:13 +00:00
Pierangelo Masarati
aecfb85793
immediately return sizelimitExceeded if appropriate
2006-04-03 21:14:14 +00:00
Pierangelo Masarati
c853ba1f0e
more on recovery (ITS#4429)
2006-04-03 00:32:59 +00:00
Pierangelo Masarati
46cb141185
seems to fix the equivalent of ITS#4429 in back-meta; had to give up per-target conn-ttl and idle-timeout
2006-04-01 18:56:39 +00:00
Kurt Zeilenga
cbc11c9233
unifdef -DLDAP_NULL_IS_NULL
2006-02-14 23:18:12 +00:00
Kurt Zeilenga
acbb5cf689
Happy new year!
2006-01-03 23:11:52 +00:00
Pierangelo Masarati
fcda57e90f
use macros instead of numbers...
2005-12-13 20:11:26 +00:00
Pierangelo Masarati
361a97108b
minor cleanup
2005-12-12 14:33:34 +00:00
Pierangelo Masarati
e113e18bb6
more about sizelimit disclose issue in back-meta (ITS#4213)
2005-12-11 23:39:09 +00:00
Kurt Zeilenga
48cb85865d
Remove some unnecessary #ifdefs
2005-11-26 07:38:18 +00:00
Pierangelo Masarati
b3c8a976ec
use LDAP_SIZELIMIT_EXCEEDED; rework the return values of slap_send_search_entry(); silence a few warnings
2005-11-25 22:17:24 +00:00
Pierangelo Masarati
ea83f6a669
check sizelimit in frontend (ITS#4213)
2005-11-25 00:28:33 +00:00
Pierangelo Masarati
133a673e65
don't return matchedDN in the case described in ITS#4195
2005-11-22 11:13:14 +00:00
Pierangelo Masarati
4852bf8a58
don't care about empty matched/text #ifdef LDAP_NULL_IS_NULL
2005-11-20 01:59:26 +00:00
Pierangelo Masarati
4cab386d13
backport write operation timeouts from back-meta to back-ldap; minor cleanup & silence warnings
2005-11-06 23:29:10 +00:00
Pierangelo Masarati
852e4e3109
allow per-target retry in searches; taint invalid connections; don't massage the pseudorootdn (ITS#4150)
2005-11-05 14:44:43 +00:00
Pierangelo Masarati
acb17be789
fix size/time limit (ITS#4145)
2005-11-04 12:42:39 +00:00
Pierangelo Masarati
cedb88c373
eat up values of removed attrs
2005-11-01 13:42:51 +00:00
Pierangelo Masarati
cfa2eefe3c
fix previous commit
2005-10-25 14:50:05 +00:00
Pierangelo Masarati
8a5a1ab39f
fix handling of invalid DN-valued attrs (ITS#4107)
2005-10-24 20:22:08 +00:00
Hallvard Furuseth
05f5c7525b
Fix snprintf() format
2005-09-26 04:39:51 +00:00
Pierangelo Masarati
112be0118e
cleanup states/timeout handling in back-ldap/meta; add connection pooling and defer of pseudoroot bind to back-meta
2005-09-24 18:39:26 +00:00
Pierangelo Masarati
e2c9c843e1
fix previous commit; cleanup few 64 bit issues
2005-09-24 17:09:19 +00:00
Pierangelo Masarati
ae0b39e3cc
use result of validation (ITS#4028)
2005-09-19 09:06:29 +00:00
Pierangelo Masarati
a1ff59f436
pretty the DN as well
2005-09-06 17:19:36 +00:00
Pierangelo Masarati
a2ea1edb48
save target errors for later evaluation
2005-08-31 01:55:34 +00:00
Pierangelo Masarati
39998dfe8d
prettify matchedDN; fix memory handling
2005-08-27 19:21:43 +00:00
Pierangelo Masarati
6cb8b14435
allow undefined attrs to be "proxied" (ITS#3959)
2005-08-25 21:14:26 +00:00
Pierangelo Masarati
e5d302e84f
normalize/pretty attributes when possible
2005-08-20 11:31:07 +00:00
Pierangelo Masarati
9c02a32b7c
more about matchedDN in back-meta (ITS#3944)
2005-08-18 14:55:28 +00:00
Pierangelo Masarati
11211d0dae
strip entryDN from search entries; frontend will reattach it :(
2005-08-18 11:26:29 +00:00
Pierangelo Masarati
99ea177e05
implement overlapping targets enhancement (ITS#3711)
2005-08-17 08:34:49 +00:00
Pierangelo Masarati
76f52279ef
fix "matched" return and return code (ITS#3944)
2005-08-17 08:25:48 +00:00
Pierangelo Masarati
754a059951
fix concurrency issues
2005-07-04 22:41:54 +00:00
Pierangelo Masarati
297c7933b1
add "onerr" flag
2005-06-25 15:13:44 +00:00
Pierangelo Masarati
b836fc3ea2
first round of provisions for back-config
2005-06-19 22:41:12 +00:00
Pierangelo Masarati
e12c4ca230
preemptive time limit check in proxy backends
2005-06-13 19:14:40 +00:00
Pierangelo Masarati
be53e82650
fix entry DN free
2005-05-21 14:53:05 +00:00
Pierangelo Masarati
46387a12a9
fix sizelimit interaction with glue overlay (ITS#3724)
2005-05-13 13:10:33 +00:00
Pierangelo Masarati
96773427db
don't bother about slap_dummy_bv
2005-05-13 09:06:28 +00:00
Pierangelo Masarati
c4cfe03619
fix sizelimit bug (ITS#3720)
2005-05-12 22:37:56 +00:00
Pierangelo Masarati
5ad7133202
add support for "subordinate" scope
2005-05-06 10:21:00 +00:00
Pierangelo Masarati
a215fdea66
a bit more reworking and streamline; the change to the LAST_CONN test seems to eliminate the last LDAP_BUSY problems on the only machine that was showing it yet; please test
2005-05-05 17:34:11 +00:00
Pierangelo Masarati
4d9750afb5
honor T-F filters (ITS#3706) and lots of cleanup
2005-05-04 23:57:55 +00:00
Pierangelo Masarati
58a358e7b2
more cleanup in handling timeouts in ldap_result()
2005-04-26 21:48:43 +00:00
Pierangelo Masarati
06eef0c78d
reset candidates when intentionally abandoning; consistently handle referrals
2005-04-25 23:54:51 +00:00
Pierangelo Masarati
41aad6e27f
more on error handling reworking; should address ITS#3672 and ITS#3676
2005-04-22 21:43:52 +00:00
Pierangelo Masarati
95d3db5d25
fix previous commit
2005-04-21 22:22:43 +00:00
Pierangelo Masarati
08a6909f73
add basic support for retry; protect internal bind behind mutexes; rework search, review candidate selection; minor cleanup. Passes concurrency test036
2005-04-21 03:17:31 +00:00
Pierangelo Masarati
c3fd851a59
slightly reduce malloc overhead; minor cleanup
2005-04-20 18:52:10 +00:00
Pierangelo Masarati
410638fda1
fix memory leak (ITS#3669)
2005-04-19 14:31:07 +00:00
Pierangelo Masarati
c1b5e84e2d
a) implement a new candidate selection procedure, based on target naming
...
context checking and multiple match resolution via an internal search
b) move the candidate listing in a persistent per-thread buffer
c) fix bind procedure
d) minor cleanup
(a) and (b) should address ITS#2935; (b) and (c) should address ITS#3171
A test is also added
2005-04-16 02:25:41 +00:00
Howard Chu
ee42df4cea
Always return SLAPD_ABANDON in response to op->o_abandon being set.
2005-02-18 00:37:40 +00:00
Pierangelo Masarati
73ca57cfef
import selected improvements from back-ldap: use asynchronous Start TLS exop; allow propagating TLS if used in the original connection; minor cleanup
2005-02-05 15:55:27 +00:00
Pierangelo Masarati
5427af1f62
don't play with controls at bind; rather use the ldap_*_ext API
2005-01-26 09:52:12 +00:00
Pierangelo Masarati
521100db56
fix ITS#3498; some cleanup
2005-01-20 17:44:53 +00:00
Pierangelo Masarati
8d14165274
fix ITS#3464
2005-01-08 10:59:32 +00:00
Pierangelo Masarati
5422345e55
major namespace cleanup & minor fixes
2005-01-08 09:20:54 +00:00
Kurt Zeilenga
dc0eacd40b
Happy New Year!
2005-01-01 20:49:32 +00:00
Pierangelo Masarati
ba6ac023ad
works now
2004-12-30 17:45:07 +00:00
Pierangelo Masarati
7198e9e4b9
fix typos leading to memory issues
2004-12-23 10:43:58 +00:00
Pierangelo Masarati
018526ff14
fix spurius noSuchObject when base=suffix
2004-11-12 12:51:16 +00:00
Pierangelo Masarati
761f287943
multiple precision with BIGNUM/gmp/ulong
2004-09-26 22:58:47 +00:00
Kurt Zeilenga
d611a4b49a
unifdef -UNEW_LOGGING
2004-09-04 04:54:28 +00:00
Pierangelo Masarati
00f1c085cf
move call to frontend API
2004-08-24 09:29:11 +00:00
Pierangelo Masarati
9f6f5491fe
slightly rework user/operational attributes handling (including fixing a bug in the logic of the previous change to backend_operational()); cleanup; more improvements to slapo-rwm and back-relay
2004-07-25 23:16:40 +00:00
Pierangelo Masarati
40e42fcd11
res is already freed by ldap_parse_reference() (ITS#3190)
2004-06-17 18:27:51 +00:00
Pierangelo Masarati
4c685bfd1e
clarify no limits in (internal) searches
2004-06-12 17:32:20 +00:00
Pierangelo Masarati
d40e5a365a
fix DN_SEPARATOR() and clarify its use
2004-05-07 09:03:05 +00:00
Pierangelo Masarati
b34cf02488
more on fixing escaped semicolon in normalized DN
2004-05-07 02:18:08 +00:00
Kurt Zeilenga
44725e7303
use BER_BVNULL
2004-04-07 04:11:43 +00:00
Pierangelo Masarati
4e71b85481
exploit new frontend API 2 protocol error mapping
2004-04-05 17:32:59 +00:00
Pierangelo Masarati
ec6a663820
reset SlapReply flags
2004-03-17 11:50:15 +00:00
Pierangelo Masarati
65b49dd312
add "searchFilterAttrDN" rewrite context, and allow filterstring rewrite
2004-03-10 21:11:14 +00:00
Pierangelo Masarati
091246c6fd
move limits evaluation to frontend
2004-03-08 18:12:45 +00:00
Pierangelo Masarati
abf2df7a11
initial round of fixes related to ITS#2986
2004-03-06 15:01:16 +00:00
Pierangelo Masarati
d015b9583c
handle filter computed in a more granular way (ITS#2977)
2004-02-28 16:05:59 +00:00
Pierangelo Masarati
4e57108991
allow search limits based on groups (ITS#2967)
2004-02-18 16:40:36 +00:00
Kurt Zeilenga
3c598e89fb
Happy new year
2004-01-01 19:15:16 +00:00
Howard Chu
b011c51390
Clean up entry initialization
2003-12-13 02:00:07 +00:00
Kurt Zeilenga
fbba83b20f
notices and acknowledgements
2003-12-08 17:41:40 +00:00
Howard Chu
066a80bbbb
Moved proxy caching to overlay
2003-12-06 11:12:53 +00:00
Kurt Zeilenga
a3d8cda201
notices and acknowledges
2003-11-27 06:35:14 +00:00
Pierangelo Masarati
a78c03bb4a
fix a_nvals according to back-ldap implementation (ITS#2716; at least part of it)
2003-10-04 17:18:25 +00:00
Jong Hyuk Choi
9760933c20
unifdef LDAP_CACHING
2003-08-27 23:21:17 +00:00
Pierangelo Masarati
f2dfb55780
now LDAP_CACHING can be enabled again; not sure it works, though
2003-05-09 00:36:31 +00:00
Kurt Zeilenga
5cd994ed21
remove dnNormalize2
...
replace calls to dnNormalize2 with calls to dnNormalize
2003-04-29 18:28:14 +00:00
Luke Howard
7cb946924e
Fix compilation errors (caching must still be undefined though)
2003-04-11 04:22:37 +00:00
Pierangelo Masarati
5fbdf3f3eb
return 'matched' only if all the targets didn't recognize the search base
2003-04-08 11:38:38 +00:00
Pierangelo Masarati
81c616fdb2
works fine now
2003-04-07 19:01:48 +00:00
Pierangelo Masarati
6ef22ccdcb
first cut at grouping rewrite/map stuff; needs work
2003-04-07 17:04:14 +00:00
Pierangelo Masarati
1bae6d28e5
silence warnings
2003-04-05 16:58:36 +00:00
Pierangelo Masarati
5804183f04
propagate selected changes to back-ldap
2003-04-05 16:53:57 +00:00
Pierangelo Masarati
dfbbd11bd3
remove more unnecessary args
2003-04-04 00:43:40 +00:00
Pierangelo Masarati
798289fd50
new API; compiles if proxy is disabled
2003-04-03 21:35:54 +00:00
Jong Hyuk Choi
6f81235386
Commit of the Proxy Cache contribution (ITS#2062)
...
from IBM India Research (Apurva Kumar)
Code review by Pierangelo, Kurt, and Jong.
2003-03-06 19:44:41 +00:00
Pierangelo Masarati
bf35f8e37f
improved filter mapping/rewrite; improved result rewriting; improved attribute/objectclass mapping configuration
2003-03-01 11:08:53 +00:00
Pierangelo Masarati
628bcc7174
improve error handling
2003-02-10 22:34:06 +00:00
Pierangelo Masarati
1db0725502
partially fix ITS#2310
2003-02-10 21:37:30 +00:00
Pierangelo Masarati
45f4e3602b
clean up mapping api
2003-01-27 16:39:56 +00:00
Pierangelo Masarati
a62249ed27
fix objectclass mapping (to nothing)
2003-01-27 16:07:10 +00:00
Pierangelo Masarati
d8756a1c98
fix ITS#2289 (don't use shared data for search state; use msgid instead)
2003-01-23 22:07:33 +00:00
Kurt Zeilenga
6939c53170
Happy new year
2003-01-03 20:20:47 +00:00
Pierangelo Masarati
59aea47963
improve limits handling and consistency; return "Admin limit exceeded" instead of "Unwilling to perform"
2002-11-21 12:58:59 +00:00
Pierangelo Masarati
a9c902a7ca
improve error messages
2002-11-10 18:16:43 +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
c4a8a3dce5
better error handling when returning results
2002-08-13 17:00:33 +00:00
Pierangelo Masarati
328046248b
initialize struct timeval (fixes ITS#2014);
...
also, check for return value of dnNormalize2: if the returned
DN contains undefined attributes, the normalization fails.
2002-08-10 14:13:46 +00:00
Pierangelo Masarati
1abb8cb339
rework connection pool handling (reduce amount of malloc)
2002-08-09 17:15:10 +00:00
Pierangelo Masarati
540dbbe1ed
fix previous commit
2002-08-02 10:00:44 +00:00
Kurt Zeilenga
838643d5ad
operationsError != Internal Error
...
hence, s/LDAP_OPERATIONS_ERROR/LDAP_OTHER/
2002-07-31 22:49:02 +00:00
Pierangelo Masarati
437014723c
fix ITS#1953
2002-07-22 14:24:32 +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
Pierangelo Masarati
d3058532c9
honor limits if below soft limit
2002-04-29 10:12:50 +00:00
Howard Chu
d4465e376f
ITS#1732 signed/unsigned integers
2002-04-11 08:46:34 +00:00
Howard Chu
efecf4e121
ITS#1733 eliminate o_abandonmutex
2002-04-11 08:03:40 +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
Pierangelo Masarati
f74e81aa99
check on escaped rdn separator not needed any more
2002-01-22 08:30:32 +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
92481f7057
Modify performance patch from Gertjan van Wingerde <gwingerde@home.nl>
2002-01-13 23:23:23 +00:00
Howard Chu
ec46a2f33a
Use 'm' ber_scanf format where convenient
2002-01-06 06:11:01 +00:00
Kurt Zeilenga
0e2af54a3f
Update copyright statements
2002-01-04 21:17:25 +00:00
Pierangelo Masarati
b28c3953d4
more fixes/updates
2002-01-04 19:23:10 +00:00
Pierangelo Masarati
d3dae8d1cd
more cleanup; doesn't work (fails on ldap_result, select returns -1)
2002-01-04 15:26:45 +00:00
Pierangelo Masarati
db71bb1c4d
lots of migration to struct berval; unfortunately it seems to be broken
2002-01-03 16:29:38 +00:00
Howard Chu
bcdfdb968f
Changed AttributeName back into an array instead of a linked list.
...
Fixed bug in do_search eating up controls.
2002-01-03 05:38:26 +00:00
Howard Chu
743c402265
Changed search attrs from struct berval ** to AttributeName *
2001-12-31 11:35:52 +00:00
Howard Chu
975a5e9a24
Added dnPretty2/dnNormalize2 using preallocated destination berval
2001-12-29 04:48:00 +00:00
Pierangelo Masarati
02153708a0
conversion to berval DN
2001-12-27 12:17:54 +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
Howard Chu
d0add35348
Changed get_limits to struct berval*
2001-12-26 15:28:01 +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
Kurt Zeilenga
2dd27b0786
More struct berval DNs
2001-12-25 19:48:26 +00:00
Howard Chu
2f3399265c
Changed sai_dn, sai_ndn to struct berval. (Affects op->o_dn,o_ndn,
...
conn->c_dn,c_ndn, Access->a_dn_pat)
2001-12-24 15:11:01 +00:00
Howard Chu
0bfaa8b4ae
Changed AttributeType.sat_cname from char * to struct berval.
...
(will fix up back-bdb next.)
2001-11-16 07:45:37 +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
Pierangelo Masarati
35c38e271d
use slap_str2undef_ad for unknown attributes
2001-10-03 18:17:08 +00:00
Pierangelo Masarati
1c010c59a1
fix candidate selection based on scope
2001-10-01 22:12:23 +00:00
Pierangelo Masarati
ccef53677f
fix various result returning bugs, mostly related to candidate selction that results in invalid candidates (bug detected by Markus Storm <Markus.Storm@mediaWays.net>)
2001-10-01 16:16:51 +00:00
Pierangelo Masarati
b5bb74bb02
cleanup limits stuff in back-meta
2001-08-04 11:10:08 +00:00
Pierangelo Masarati
414783058d
enforces detailed search limits
2001-08-03 17:15:14 +00:00
Pierangelo Masarati
970abe2637
semicolon after colon in goto labels; no C++ style comments; unused vars removed or #ifdef'd
2001-06-03 08:55:17 +00:00
Pierangelo Masarati
90766f4d4f
minor cleanup; some error handling and log fixes
2001-05-16 23:06:15 +00:00
Pierangelo Masarati
0b4c7e0181
added new logging to back-meta
2001-05-13 23:44:22 +00:00
Pierangelo Masarati
74fa239a20
This is the commit of:
...
- librewrite, for string rewriting; it may be used in back-ldap
by configuring with '--enable-rewrite'. It must be used in
back-meta. There's a text file, 'libraries/librewrite/RATIONALE',
that explains the usage and the features. More comprehensive
documentation will follow.
- enhancements of back-ldap (ITS#989,ITS#998,ITS#1002,ITS#1054 and ITS#1137)
including dn rewriting, a fix to group acl matching and so
- back-meta: a new backend that proxies a set of remote servers
by spawning queries. It uses portions of back-ldap and the rewrite
capabilities of librewrite. It can be compiled by configuring
with `--enable-ldap --enable-rewrite --enable-meta'.
There's a text file, 'servers/slapd/back-meta/Documentation', that
describes the main features and config statements.
Note: someone (Kurt?) should run 'autoconf' and commit 'configure' as
my autoconf version must be different: my configures contain a number
of differences and I didn't feel comfortable in adding them :)
2001-05-12 00:51:28 +00:00