Howard Chu
2705cbd749
ITS#5809 - fixed again, based on 1.423 (reverted 1.424-1.425)
2008-11-29 03:41:33 +00:00
Howard Chu
b25c74777a
Let the idletimeout check kill hung writers
2008-11-28 23:45:56 +00:00
Pierangelo Masarati
a7b4be5b33
fix ACI as a consequence of ITS#5804 (this is a hack; would need an API change)
2008-11-28 23:15:03 +00:00
Pierangelo Masarati
74636cfb51
more about ITS#5804
2008-11-28 22:50:18 +00:00
Howard Chu
e2ee5844e0
ITS#5835 change some DEBUG_TRACE messages to DEBUG_CONNS for easier debug
2008-11-28 21:09:34 +00:00
Pierangelo Masarati
1d9ff10ed7
add newRDN rewriting; fix rewriteContext names (ITS#5834)
2008-11-28 20:34:02 +00:00
Pierangelo Masarati
7c3e478f40
fix previous commit (related to ITS#5804)
2008-11-28 19:34:02 +00:00
Ralf Haferkamp
760660a4a2
Remove unneeded locking. Don't wait for memp_trickle to complete,
...
loosing an signal doesn't hurt in this case.
2008-11-28 16:09:40 +00:00
Pierangelo Masarati
4bbb033c6b
retry every hour, but don't save it; on the contrary, complain every time syncrepl is configured without retry (ITS#5825)
2008-11-24 18:15:52 +00:00
Howard Chu
c71e7b399a
ITS#5827, release syncop after mod op completes
2008-11-23 20:43:39 +00:00
Howard Chu
f6ae9c9c9f
Fix typo in prev commit
2008-11-22 22:41:11 +00:00
Howard Chu
1d746e552a
Initialize bli_flag
2008-11-22 21:08:38 +00:00
Pierangelo Masarati
970a60002f
don't leak generated filters (ITS#5826)
2008-11-22 18:38:37 +00:00
Pierangelo Masarati
15236be495
fix previous commit
2008-11-22 18:35:19 +00:00
Pierangelo Masarati
ce045e153f
make messages more esplicative; fix style
2008-11-22 17:53:14 +00:00
Pierangelo Masarati
31c61ad855
minimal fix for ITS#5825, pending discussion
2008-11-22 16:00:41 +00:00
Pierangelo Masarati
f0af51d639
don't alloc on slab (ITS#5820)
2008-11-20 17:22:33 +00:00
Pierangelo Masarati
55010d5e4e
fix previous commit (ITS#5819)
2008-11-19 17:08:48 +00:00
Pierangelo Masarati
6f20049610
clear rc if value must be added (ITS#5819)
2008-11-19 16:02:22 +00:00
Pierangelo Masarati
2f32c29e4a
don't bailout in case of insufficientAccess (ITS#5816)
2008-11-18 01:29:34 +00:00
Pierangelo Masarati
5cf95c5b30
fix length
2008-11-18 00:12:22 +00:00
Quanah Gibson-Mount
911376e543
Fix prev commit
2008-11-17 23:45:20 +00:00
Pierangelo Masarati
e5867e2f30
improve previous commit (ITS#5814)
2008-11-16 23:58:46 +00:00
Pierangelo Masarati
bbcc89ecd3
s/not|got/(non)present/ (more readable, isn't it?)
2008-11-16 20:33:03 +00:00
Pierangelo Masarati
b52c62e69f
don't assert on unprotected data (ITS#5814)
2008-11-16 20:29:26 +00:00
Hallvard Furuseth
85e8b309d5
Silence gcc -Wformat: Put rev 1.343's debugmsg in Debug() so -Wformat can check
2008-11-16 03:22:27 +00:00
Hallvard Furuseth
753a6d0008
C89 rejects ITS#5784 non-constant array init (backend.c 1.402,-controls.c 1.201)
2008-11-16 03:10:15 +00:00
Howard Chu
011d14c136
cleanup prev commit, delete unused vars
2008-11-16 01:24:09 +00:00
Howard Chu
329741ff0b
ITS#5809 fix prev commit - always turn modrdn into modrdn+modify, and
...
only propagate the Modify op.
2008-11-16 01:21:31 +00:00
Howard Chu
b7e8411dca
ITS#5809 fix 1.421, avoid modrdn falling thru to modify unnecessarily
2008-11-15 23:54:23 +00:00
Pierangelo Masarati
03b0a71014
silence warnings
2008-11-15 15:08:00 +00:00
Emmanuel Dreyfus
3ac5b91a2f
Fix warnings an a real bug hidden by the lack of warning...
2008-11-15 11:09:03 +00:00
Pierangelo Masarati
a86fae235b
fix previous commit (related to ITS#5804)
2008-11-15 10:42:18 +00:00
Howard Chu
60450c7045
ITS#5709 make sure CSNs are generated and queued atomically
2008-11-15 08:49:44 +00:00
Emmanuel Dreyfus
4c60645bfb
Add ACL <who> regex-substitution from attribute value submatches. Cf ITS#5804
2008-11-15 07:18:39 +00:00
Howard Chu
d1221975d6
ITS#5809 fewer false detections of renames
2008-11-14 23:48:38 +00:00
Hallvard Furuseth
587d928552
reformat
2008-11-14 18:19:19 +00:00
Hallvard Furuseth
355c94ddb7
ITS#5329: back-ldif deadlock with access controls
2008-11-14 18:15:35 +00:00
Howard Chu
51c87bb9c7
ITS#5809 renames are not exclusive from modifies
2008-11-13 22:46:49 +00:00
Hallvard Furuseth
d756699af6
ITS#5319 - support rename to same DN.
2008-11-12 00:20:48 +00:00
Hallvard Furuseth
9f55af00ce
ITS#5408 part 11 - notice Abandon.
2008-11-12 00:11:53 +00:00
Hallvard Furuseth
2d1af3f2f7
ITS#5408 part 10 - errors from search and slapcat.
...
- Tweak error code/message for absent directory, including database directory.
- Catch closedir() error.
- ldif_tool_entry_close(): Free entries and reset entry list.
- Propagate any error to slapcat & co.
2008-11-12 00:10:01 +00:00
Hallvard Furuseth
c765070bf0
ITS#5408 part 9 - Sorted RDNs.
...
- Parse sorted attrs more carefully:
Accept only attr={num}val.ldif and attr=val{num}.ldif and only base 10.
Sort "attr=foo" before "attr=foo{n}". Truncate at ".ldif" while sorting.
- Make the sort order independent of the LDIF files' order in the directory.
2008-11-12 00:03:55 +00:00
Hallvard Furuseth
32bc29d1af
ITS#5408 part 8 - Rewrite search API, structs bvlist/enumCookie/ldif_tool.
...
r_enum_search() -> ldif_send_entry() + ldif_readdir() + ldif_search_entry().
enum_tree() -> search_tree(). fullpath() -> fullpath_alloc() + FILL_PATH().
No functionality change except catching malloc and opendir() errors.
2008-11-11 23:59:43 +00:00
Hallvard Furuseth
7c3cba840c
ITS#5408 part 7 - Search operation bugs in r_enum_tree().
...
- Do not modify op->ors_scope, pass scope parameter instead.
- Save copies of dn/ndn before sending with REP_ENTRY_MODIFIABLE.
- Only the search baseDN may produce noSuchObject.
- More accurate result code.
2008-11-11 23:49:00 +00:00
Hallvard Furuseth
b1aed5b0ab
ITS#5408 part 6 - referrals.
...
- Sending continuation references:
Drop an unnecessary and wrong LDAP_SCOPE_BASE check. The correct
check would have been for DN == baseDN.
Do not rewrite the scope, the caller already did.
- ldif_prepare_create(): Check that parent/newSuperior is not a referral.
- Rewrite ldif_back_rerferrals(). Better error handling. Always pass
refs through referral_rewrite(). As in back-bdb, apply manageDSAit
only to the baseDN and do not use default_referral.
2008-11-11 23:42:32 +00:00
Hallvard Furuseth
5c41dfdabe
ITS#5408 part 5 - handle modrdn file error. Move entry/subtree back if needed.
...
Add move_dir() macro, matching move_file().
2008-11-11 23:22:24 +00:00
Hallvard Furuseth
a9481e437c
ITS#5408 part 4 - preparing for entry creation. More error handling.
...
- Move mkdir() into ldif_write_entry(). Modrdn lacked this.
- Factor tests for whether to create entry & dir out to ldif_prepare_create().
- Ensure an entry always exists if the corresponding subtree directory does.
- Move get_parent_path() up, accept NULL output param and malloc errors.
2008-11-11 23:16:22 +00:00
Hallvard Furuseth
ddc0613920
ITS#5408 part 3 - file path tweaks, sanity checks.
...
- Rename temporary filename patterns from "<rdn>.ldifXXXXX" to "<rdn>.XXXXX".
- Add and start using ldif2dir_len() & co.
2008-11-11 23:06:07 +00:00
Hallvard Furuseth
b00aa30d37
ITS#5408 part 2 - filesystem I/O, file error handling:
...
- Start moving file handling near the top - move_file(), ldif_tempname().
- Rename get_entry_for_fd() -> ldif_read_entry() and move open() into it.
Rewrite slurp_file() as ldif_read_file(). Just stat() if output param==NULL.
- Rewrite ldif_write_entry(). Add LDAP_DEBUG_TRACE output.
2008-11-11 23:00:18 +00:00