Kurt Zeilenga
4a618959bb
PROTOS fix
2004-12-28 19:05:52 +00:00
Pierangelo Masarati
2f5e17d056
improve usability of global ovrlays for write operations; may need to anticipate SLAPI accordingly. More work needed for add (overlays need to understand they're global and call slap_mods2entry() explicitly)
2004-12-11 17:48:15 +00:00
Pierangelo Masarati
b498a9222a
better fix to ITS#3433
2004-12-11 15:41:50 +00:00
Howard Chu
948fa42499
Fix prev commit
2004-12-09 21:49:24 +00:00
Howard Chu
423c53d267
Add fe_op_abandon, call it in connection_abandon()
2004-12-09 21:17:29 +00:00
Howard Chu
5f99f7c991
More migration of syncrepl from frontend to syncprov overlay
...
define OPERATION_BUFFER_SIZE for dummy Operations
2004-11-27 00:57:37 +00:00
Howard Chu
90cc409325
Split Operation into Opheader and op
2004-11-25 22:59:00 +00:00
Howard Chu
3a5bde98ba
Disable back-bdb native syncrepl support, enable syncprov overlay,
...
remove syncrepl stuff from Operation struct
2004-11-25 21:16:54 +00:00
Jong Hyuk Choi
7fa860ef16
Add the omitted part from the original buddy allocator commit
2004-11-24 17:46:47 +00:00
Howard Chu
47dd8d8732
Dynamic control management
2004-11-23 13:08:45 +00:00
Howard Chu
7e87f54716
Revert ITS#3353 patch, it needs to be reworked.
2004-10-06 05:51:38 +00:00
Howard Chu
fda3d6260e
ITS#3353 consolidate slapd globals into a single struct
2004-10-01 07:33:16 +00:00
Pierangelo Masarati
d026e2c9f7
preformat "conn=%lu op=%lu"
2004-09-26 23:00:00 +00:00
Pierangelo Masarati
761f287943
multiple precision with BIGNUM/gmp/ulong
2004-09-26 22:58:47 +00:00
Pierangelo Masarati
55e251e6e8
lots of cleanup; few improvements; fix RDN selection bug when creating connection dynamic entries; rework entries ordering - now it's more intuitive and regular; optimize counters update
2004-09-12 22:12:58 +00:00
Pierangelo Masarati
a637926bf2
use GMP for multiple precision in counters
2004-09-11 16:15:53 +00:00
Kurt Zeilenga
d611a4b49a
unifdef -UNEW_LOGGING
2004-09-04 04:54:28 +00:00
Luke Howard
2316461b93
Remove unused variable
2004-08-25 12:31:43 +00:00
Luke Howard
ea6f5bad65
This patch fixes some subtle interactions between SLAPI and syncrepl. Due to
...
SLAPI always assigning connection and operation IDs of zero for internal
operations, such operations would cause a stale contextCSN to be returned from
slap_get_commit_csn(). As a result, SLAPI internal updates would be invisible
to replicas until an external update was made. Also, SLAPI internal operations
never called slap_graduate_commit_csn() which leaked pending CSNs.
Also included in this patch is a general cleanup of some of the SLAPI code.
Note that we need to use a separate mutex on conn_nextid to avoid a deadlock
where a post-operation plugin tries to acquire connections_mutex, having locked
the per-connection mutex, while the listener thread tries to acquire the
per-connection mutex (having locked connections_mutex). connection.c needs to
be fixed to acquire mutexes in the same order.
2004-08-25 11:52:55 +00:00
Pierangelo Masarati
bde0761a04
should fix ITS#3265
2004-08-12 10:33:49 +00:00
Pierangelo Masarati
cd9a9c628d
frontend stuff moved into a database structure, essentially to allow overlays to be processed before database selection; passes all tests (ITS#3080)
2004-07-26 21:26:34 +00:00
Kurt Zeilenga
7a6b0857b6
cleanup
2004-06-29 23:52:18 +00:00
Kurt Zeilenga
e5a37f2125
SLAPD_DISCONNECT v -1 cleanup
...
misc other cleanup
2004-06-23 01:04:52 +00:00
Kurt Zeilenga
4e6ed7072d
cleanup
2004-06-22 19:49:00 +00:00
Pierangelo Masarati
528b6c7e25
clear pagedresults_state if reusing an inactive connection; prepare for more consistent behavior of pagedResults control
2004-06-21 21:31:55 +00:00
Howard Chu
9b38cd2572
ITS#3109 - added slap_tls_ctx
2004-04-26 01:10:49 +00:00
Kurt Zeilenga
1372965d89
ITS#3092: Rename sl_free() and friends to slap_sl_free()
2004-04-20 03:44:57 +00:00
Kurt Zeilenga
44725e7303
use BER_BVNULL
2004-04-07 04:11:43 +00:00
Howard Chu
81df94acaa
Silence warning
2004-03-24 10:47:31 +00:00
Kurt Zeilenga
5ff057089b
cleanup
2004-03-17 22:14:32 +00:00
Howard Chu
2821d0bdd6
Add connection_fake_init()
2004-03-17 19:33:13 +00:00
Kurt Zeilenga
3e586bd393
cleanup
2004-03-14 00:59:37 +00:00
Howard Chu
cdeda34029
Add c_conn_idx, to simplify external modules managing per-connection state
2004-03-12 18:22:37 +00:00
Kurt Zeilenga
5d0f6e75b4
Don't defer abandon due to pending
2004-02-10 00:17:21 +00:00
Kurt Zeilenga
3c1b2ed9cb
ITS#2959: provide reason for deferring operation in log message
...
Also, took away abandon operations blank check against deferment.
Abandon must be deferred in some cases (such as when other operations
are pending) and should be deferred in some other cases (such as too
many threads).
2004-02-09 21:33:21 +00:00
Howard Chu
bb1a97544d
ITS#2921, fix client connection handling for HAVE_WINSOCK
2004-01-15 20:20:17 +00:00
Kurt Zeilenga
3c598e89fb
Happy new year
2004-01-01 19:15:16 +00:00
Kurt Zeilenga
fcad25da47
Misc code cleanup
2003-12-29 22:25:43 +00:00
Luke Howard
0549d46adf
Don't require slapi to be in the path - always include slapi/slapi.h
2003-12-28 04:17:48 +00:00
Kurt Zeilenga
e9133952fb
Move experimental built-in SASL behind SLAP_BUILTIN_SASL macro
2003-12-18 20:01:47 +00:00
Kurt Zeilenga
9647ccd945
Completely untested built-in EXTERNAL implementation
...
Needs identity mapping and proxy authorization support
2003-12-18 06:52:39 +00:00
Luke Howard
516fd0ff50
First round of SLAPI cleanups - use slapi_int_XXX for internal functions
...
(slapi_x_XXX is still reserved for exported functions that are not part
of the SLAPI specification)
2003-12-16 15:49:31 +00:00
Kurt Zeilenga
4bedf015f0
cleanup
2003-12-13 18:57:00 +00:00
Kurt Zeilenga
38ccdaf7a3
unifdef -DLDAP_CONTROL_PAGEDRESULTS (as it is always defined)
2003-12-08 18:16:07 +00:00
Howard Chu
74db966ebb
Move SLAB_SIZE def to slap.h
2003-12-06 22:30:45 +00:00
Hallvard Furuseth
e491e9e522
Cleanup: Remove unused label 'no_co_op_free:' in connection_operation().
2003-11-30 16:14:40 +00:00
Kurt Zeilenga
4e15a84452
Updated notices
2003-11-27 01:17:14 +00:00
Howard Chu
b179e05ea1
For previous, assert (writewaiter==0) in conn_destroy too.
2003-11-20 00:54:46 +00:00
Howard Chu
86c0f733a4
Cleanup prev commit, assert if writewaiter != 0 in init
2003-11-18 22:55:53 +00:00
Howard Chu
43a843dbf0
ITS#2832 init conn->c_writewaiter to 0
2003-11-18 22:18:33 +00:00
Kurt Zeilenga
99ba95ab92
cleanup
2003-11-18 22:11:11 +00:00
Jong Hyuk Choi
279760a467
1. Session history support
...
- memory based session history to minimize sync traffic
- when client is covered by a session history, then
[add+delete] mode is used
- when client cookie is not covered by the history because
the cookie is too outdated and/or the history is truncated,
[add+present] mode is used
2. Sync cookie syntax : comma separated name=value pairs
- csn=yyyymmddhh:mm:ssZ#0xSSSS#r#ssssr,sid=nnn
2003-11-10 02:44:25 +00:00
Kurt Zeilenga
bfafd42163
Code and logging cleanup
2003-11-06 03:42:46 +00:00
Howard Chu
5ed0318b79
Fix retry on failure
2003-10-25 22:07:31 +00:00
Howard Chu
782d1be0ad
Fix prev commit, don't timeout outbound connections
2003-10-25 21:14:07 +00:00
Howard Chu
08676eb49d
Add support for outbound connections in main listener.
...
Restructure syncrepl/persist to use outbound connection manager.
2003-10-24 12:57:24 +00:00
Howard Chu
df74409d97
Fix prev commit
2003-10-24 06:01:55 +00:00
Howard Chu
01f7a7466b
SLAPI fix - no-op when slapi_plugins_used == 0
2003-10-24 05:58:42 +00:00
Howard Chu
102d8159a7
ITS#2779, cache group ACLs per operation instead of per-connection
2003-10-23 01:23:45 +00:00
Howard Chu
7710791382
ITS#2684 keep psearch operations on the connection's active list so they
...
can be located by connection_abandon() during an unexpected close. Remove
the operations in bdb_abandon() etc.
2003-10-19 11:20:34 +00:00
Howard Chu
c9ef0da66b
Don't timeout slow-running operations
2003-09-27 05:36:20 +00:00
Jong Hyuk Choi
4495320839
move c->c_n_ops_executing/completed to the right place
2003-09-25 20:14:53 +00:00
Kurt Zeilenga
99f968b597
Initial support for pre/post read controls.
...
TODO:
Fix transactional consistency
Add client response control handling
2003-09-16 18:56:04 +00:00
Howard Chu
41957e5129
ITS#2649, never defer Abandon requests
2003-09-13 11:15:23 +00:00
Jong Hyuk Choi
090ac0a772
unifdef LDAP_SYNC and LDAP_SYNCREPL
2003-08-27 22:16:04 +00:00
Luke Howard
c9e134f0f7
Support for SLAPI plugin extensions API.
...
This API allows a plugin to associate arbitrary context with an
internal server object such as a connection or operation.
Some documentation is at:
http://enterprise.netscape.com/docs/directory/602/plugin/function.htm#1104211
2003-07-03 19:04:18 +00:00
Jong Hyuk Choi
262f8bf11f
LCUP primitive routines removed
2003-06-27 17:39:48 +00:00
Kurt Zeilenga
c249f3ac21
Fix vrFilter compile error
2003-06-10 03:30:14 +00:00
Kurt Zeilenga
12304f64e5
Merge partial and intermediate responses
2003-05-31 05:01:49 +00:00
Howard Chu
5d0ba372e5
Fix LBER_OPT_MEMCTX behavior
2003-05-28 22:17:08 +00:00
Howard Chu
f7d7700b6e
ITS#2549, init memctx to NULL. Also reset ber memctx to NULL when freeing.
2003-05-25 01:32:39 +00:00
Jong Hyuk Choi
7e7429267e
persistent search updates with recent changes
2003-05-20 20:21:39 +00:00
Hallvard Furuseth
6af256b8e1
Fix some Statslog()s: Add missing newlines. Print file descriptor as long.
2003-05-15 23:45:33 +00:00
Howard Chu
46e2b97757
ITS#2424 use two SASL contexts per session to conform to RFC 2222
2003-05-01 04:11:57 +00:00
Howard Chu
130f6e1b7d
Memory context tweaks for other ops
2003-04-12 10:47:11 +00:00
Howard Chu
280fc819cf
Memory context tweaks for Bind
2003-04-12 06:56:42 +00:00
Howard Chu
808cb504ce
More memory context tweaks
2003-04-11 03:57:10 +00:00
Howard Chu
ece7452b05
More memory context tweaks
2003-04-11 01:29:28 +00:00
Howard Chu
374d919fc0
More memory context tweaks
2003-04-10 06:21:53 +00:00
Howard Chu
f897519d11
Minor cleanups
2003-04-09 23:37:00 +00:00
Howard Chu
ebecca7379
Eliminate getkey search
2003-04-09 17:34:58 +00:00
Howard Chu
065116c3a3
Just use a fixed size slab for now
2003-04-09 17:05:46 +00:00
Howard Chu
813d5c8ed8
First cut at thread-local malloc. Only used by search() for now...
...
Needs work in normalizers, etc.
2003-04-09 16:52:03 +00:00
Pierangelo Masarati
5f342a8431
silence warning
2003-04-03 23:08:47 +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
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
3a71bddbc4
ITS#2389 - added conn_max_pending/auth config keywords to cap the number
...
of outstanding requests on a connection. Set rate limits for request
execution:
no connection can have more than maxthreads/2 ops executing at once.
a connection that is write-blocked will not execute any new ops.
queued ops must drain before any new ops can execute.
If the queue exceeds the max_pending limit, the connection is closed.
...also fixed a bug where a connection was not marked active if it never
received a Bind.
2003-03-27 03:35:46 +00:00
Howard Chu
a5a71d4e6c
Cleanup previous commit
2003-03-26 17:42:27 +00:00
Howard Chu
13aafa46d8
struct co_arg is redundant, removed
2003-03-25 18:44:00 +00:00
Howard Chu
a63b8908cd
ITS#2389 - stop reading requests on a conn if it has more than
...
connection_pool_max/2 operations already executing. May want to tune
this to a higher value, e.g. connection_pool_max - XX, etc. Fix in
result.c throttles the connection too late, all threads are already
consumed by the time the send buffer blocks.
2003-03-20 12:40:11 +00:00
Howard Chu
d18e0989d9
ITS#2382 use ch_calloc
2003-03-16 12:34:40 +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
282f6bc32d
Cancel exop updates
2003-02-09 05:54:45 +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
85b1783d5c
LDAP Sync Operation (draft-zeilenga-ldup-sync) as a groundwork for an LDAP replication design
2003-02-05 07:37:02 +00:00
Jong Hyuk Choi
e1bf8cc437
Intermediate Response
2003-02-03 17:28:19 +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
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