Howard Chu
913c321a7e
Fix misplaced #if USE_INDIRECT_NIDS/cont_alloc in idl_delete_key
2002-01-16 07:39:00 +00:00
Kurt Zeilenga
21c8846e64
Fix last commit
2002-01-16 05:44:21 +00:00
Kurt Zeilenga
20af643fc4
more cleanup
2002-01-16 04:40:41 +00:00
Kurt Zeilenga
3bfab4699e
Remove last uses of dn_validate()
2002-01-16 03:01:19 +00:00
Kurt Zeilenga
d2f5d75885
Remove unused deprecated DN routines.
...
Only dn_validate, dn_normalize, and dn_parent remain (for now).
2002-01-16 00:16:51 +00:00
Kurt Zeilenga
e154da3a09
Remove some asserts. Need to re-valid logic
2002-01-15 19:54:21 +00:00
Kurt Zeilenga
beaf090bbb
remove lint
2002-01-15 17:18:18 +00:00
Kurt Zeilenga
5e6e27078c
Change replace ACL semantics from U-Mich historical behavior.
...
U-Mich allows someone with selfwrite to use replace all values
of an attribute with a value containing their DN. Which, of course,
could than be deleted. This behavior was carried forward in all
versions of OpenLDAP.
The new semantics separate checks for deleting all existing values
and adding new values. It is more logical and more inline with
the common use of selfwrite.
2002-01-15 16:23:11 +00:00
Howard Chu
e21e900392
Use LDAP_UTF8_CHARLEN2 to check shortest possible encoding
2002-01-15 08:27:19 +00:00
Kurt Zeilenga
13af7fb073
Misc. cleanup, remove lint, remove unused deprecated functions, etc.
2002-01-15 07:29:15 +00:00
Kurt Zeilenga
5a378a5ce8
A very basic UTF-8 check
2002-01-15 04:38:05 +00:00
Howard Chu
6981960be0
Deleted autosubtypes support.
2002-01-15 01:50:09 +00:00
Howard Chu
d70498f0f2
Revert previous commit again. autosubtypes are gone for good.
2002-01-15 01:49:53 +00:00
Howard Chu
fde56a188c
More fixes for autosubtype index generation
2002-01-14 20:49:06 +00:00
Howard Chu
f4cfb13f2c
Fix previous commit
2002-01-14 20:26:51 +00:00
Howard Chu
1180279104
Revert previous commit
2002-01-14 20:13:25 +00:00
Kurt Zeilenga
f89308915a
Add a default case with assert() just in case.
2002-01-14 17:25:13 +00:00
Kurt Zeilenga
9d307b4242
ITS#1530 no value replace ACL fix
2002-01-14 17:19:05 +00:00
Howard Chu
f91d5f484a
In DN_SUBTREE use idl_allids instead of explicit malloc.
2002-01-14 11:52:53 +00:00
Howard Chu
2e8a98e3a1
Fix subtype indexing. Really really made it the default.
2002-01-14 10:37:08 +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
ec8fc19566
Modify performance patch from Gertjan van Wingerde <gwingerde@home.nl>
...
with minor adjustments.
2002-01-13 23:21:03 +00:00
Howard Chu
8b969479f4
Turn on BDB_IDL_MULTI by default
2002-01-13 22:26:29 +00:00
Howard Chu
22120f4930
Turn on USE_INDIRECT_NIDS by default
2002-01-13 22:25:51 +00:00
Kurt Zeilenga
de6700d3b1
Really fix previous commit
2002-01-13 20:30:17 +00:00
Kurt Zeilenga
7826020e97
Fix compile error
2002-01-13 20:19:40 +00:00
Kurt Zeilenga
ff23cd0f7f
Clean up last patch
2002-01-13 20:06:53 +00:00
Kurt Zeilenga
64619bed94
Install system schema checks
2002-01-13 19:38:12 +00:00
Kurt Zeilenga
9a3dcc376c
Zap connection_internal_*
2002-01-13 18:05:16 +00:00
Howard Chu
d0724c769e
Fix mutex leak in previous commit
2002-01-13 17:17:29 +00:00
Howard Chu
f20991dea7
Changed to use search callbacks instead of connection_internal_open
2002-01-13 17:12:43 +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
Pierangelo Masarati
fafce1601e
consistently use dn_match macro throughout slapd
2002-01-12 18:17:13 +00:00
Kurt Zeilenga
bcf37b4463
Fix SASL leak and clobber bug
...
Fix TLS critical rev logic bug
Suggested fixes reported by Roman.Kagan@itep.ru
2002-01-12 17:46:27 +00:00
Pierangelo Masarati
3bddc61a2a
clarify macro name: dn_match = 1 if match, 0 otherwise
2002-01-12 17:42:44 +00:00
Pierangelo Masarati
e89d7b1280
some memory handling cleanup: check that memory is freed by who allocated it, or at least put a FIXME where not
2002-01-12 17:35:01 +00:00
Pierangelo Masarati
39a652d2de
cleanup and better dn handling
2002-01-12 16:04:15 +00:00
Pierangelo Masarati
725e13dade
slap_strncopy function
2002-01-12 16:02:51 +00:00
Pierangelo Masarati
f8fb4aca76
error message from be_entry_put tool backend function
2002-01-12 16:00:51 +00:00
Pierangelo Masarati
ea86a19460
monitor objectclass definition
2002-01-12 11:36:23 +00:00
Kurt Zeilenga
7e9c78fbc6
Add ITS#1508 fix to allow ACIs to grant anonymous users access.
2002-01-11 23:48:22 +00:00
Kurt Zeilenga
d30ab4c113
Additional system schema checks
2002-01-11 20:47:24 +00:00
Kurt Zeilenga
2d09d18de5
Add collective attribute system schema support.
2002-01-11 20:28:05 +00:00
Kurt Zeilenga
70d6f39459
More system schema checks
2002-01-11 19:11:46 +00:00
Kurt Zeilenga
19f2925ab1
Add some basic system schema checks.
2002-01-11 18:56:01 +00:00
Kurt Zeilenga
f57057ee01
Add system schema flags to backends supporting system schema.
2002-01-11 18:26:17 +00:00
Kurt Zeilenga
f402762f9a
Remove lint.
2002-01-11 18:03:28 +00:00
Kurt Zeilenga
20dd3c1273
Add Backend to system schema check routines
2002-01-11 18:00:22 +00:00
Pierangelo Masarati
6c76b2c55d
of course this is required by listener monitor
2002-01-11 11:48:46 +00:00
Pierangelo Masarati
619f772459
listener monitor
2002-01-11 11:43:35 +00:00
Pierangelo Masarati
5dfbf93687
need this outside for back monitor ...
2002-01-11 10:46:58 +00:00
Pierangelo Masarati
75f1addd76
added structural objectclass; reworked obejctclasses to use 'monitor' and 'extensibleObject'; minor cleanup
2002-01-11 10:27:58 +00:00
Howard Chu
340d288db3
Fix loop in glue_tool_sync
2002-01-11 09:04:34 +00:00
Kurt Zeilenga
504404725a
Flip some bits in the backend flags mask
2002-01-11 02:31:47 +00:00
Kurt Zeilenga
c3b62aae91
Fix the bits
2002-01-10 22:54:24 +00:00
Jon Leichter
80a214aef0
Added a missing attribute: tokenGroupsGlobalAndUniversal. It exists
...
in Active Directory.
2002-01-10 22:38:17 +00:00
Kurt Zeilenga
55501e886f
Rework backend (lastmod + glue + system schema) flags
2002-01-10 22:34:11 +00:00
Howard Chu
f0cd9956ed
readahead is only needed on UDP, don't use it on TCP. (Save unneeded memcpy)
2002-01-10 22:00:17 +00:00
Howard Chu
54dae3d3d3
Fix str2anlist declaration, str is not const. (gets overwritten if
...
there is an error.)
2002-01-10 20:25:23 +00:00
Pierangelo Masarati
f757db004c
fix for backend-dependent schema check
2002-01-10 20:12:25 +00:00
Kurt Zeilenga
27a26905b7
Use NULL for be parameter to entry_schema_check() for now.
2002-01-10 19:48:43 +00:00
Kurt Zeilenga
c816ebc225
Add Backend argument to entry_schema_check() to support system schema
...
checks (in addition to user application schema checks).
2002-01-10 19:37:03 +00:00
Howard Chu
f5bfb64f07
Fix lint in previous commit
2002-01-10 18:55:13 +00:00
Kurt Zeilenga
f662a39d41
Add start of subentry support... still need to sort out
...
administrativeRole restricts.
2002-01-10 18:18:37 +00:00
Howard Chu
8067107ed2
Added an_oc to AttributeName for caching ObjectClass lookups.
...
Added error checking to str2anlist; if the attr name doesn't match
any attribute or objectclass the offending attr name is displayed.
2002-01-10 09:54:14 +00:00
Kurt Zeilenga
bf5b4405fe
More clean up of system schema changes
2002-01-10 06:58:57 +00:00
Kurt Zeilenga
aa9612f051
add system schema checks
2002-01-10 06:30:26 +00:00
Kurt Zeilenga
b4bb3b5bf8
Fix up last commit
2002-01-10 05:54:50 +00:00
Kurt Zeilenga
58a72b915a
More operational attribute infrastructure...
2002-01-10 05:31:49 +00:00
Kurt Zeilenga
cadecfaae1
Finish building in operational attributes
2002-01-10 04:10:54 +00:00
Kurt Zeilenga
f4336c8953
More builtin operational attributes
2002-01-10 03:31:11 +00:00
Kurt Zeilenga
7fcf4e011c
Cleanup last commit. Need to add more internal schema....
2002-01-10 02:01:00 +00:00
Kurt Zeilenga
6ed15e3350
Another round of operational attribute changes... more to follow.
2002-01-10 01:46:08 +00:00
Kurt Zeilenga
91644affd9
Minor cleanup
2002-01-10 00:54:31 +00:00
Kurt Zeilenga
c80d93f2bb
Start of new operational attribute framework
2002-01-10 00:17:21 +00:00
Kurt Zeilenga
74421a28ec
Round 2 of subentry changes
2002-01-09 19:43:15 +00:00
Kurt Zeilenga
9b0585f393
Add very basic subentry search support.
2002-01-09 19:21:07 +00:00
Kurt Zeilenga
39c02506de
Fix problems caused by lint removal
2002-01-09 18:18:36 +00:00
Kurt Zeilenga
22f993f89b
Remove some lint caused by the changes in const'ification
2002-01-09 06:30:23 +00:00
Kurt Zeilenga
bc1cd95149
Rework control infrastructure a bit. Add subentries visibility control.
2002-01-09 06:29:54 +00:00
Kurt Zeilenga
e19fdf58c0
Add some comments
2002-01-09 00:19:56 +00:00
Kurt Zeilenga
053251ee88
Bring nadf back from attic, but note that it is obsolete
2002-01-09 00:19:20 +00:00
Kurt Zeilenga
2958cb4dd0
A subentries control framework
2002-01-09 00:05:49 +00:00
Kurt Zeilenga
2a0bb35194
Move nadf to attic
2002-01-08 23:54:53 +00:00
Kurt Zeilenga
5a6f77e92b
comment out pilotObject as it depends on lastModifiedBy
...
move nadf.schema as it depends on lastModifiedBy
2002-01-08 23:54:24 +00:00
Kurt Zeilenga
205f1bd71b
Clarify comment.
2002-01-08 21:14:00 +00:00
Kurt Zeilenga
c9700526e1
Use iplanet OID (with typo fixed) for inetLocalMailRecipient
2002-01-08 21:09:52 +00:00
Kurt Zeilenga
180a37268e
comment out obsolete operational schema
2002-01-08 21:08:03 +00:00
Kurt Zeilenga
587d36e18b
A few changes to the handling of operational attributes.
...
Small preparation for applying tighter semantics to operational attributes.
2002-01-08 20:22:41 +00:00
Kurt Zeilenga
319b92202b
Fix ACL logic for non-regex peername, sockname, etc.
2002-01-08 02:55:03 +00:00
Kurt Zeilenga
962e351271
Minor cleanup
2002-01-07 21:22:38 +00:00
Kurt Zeilenga
e9342bc7a9
Don't use 'void *' unnecessarily.
2002-01-07 20:28:02 +00:00
Pierangelo Masarati
a8697827c8
fix questionable behavior in case of bind errors
2002-01-07 10:15:05 +00:00
Pierangelo Masarati
ed5f670ac1
fix c_cdn migration
2002-01-07 09:25:20 +00:00
Kurt Zeilenga
89e60eda54
Lachman laser is expired.
2002-01-07 07:41:45 +00:00
Kurt Zeilenga
3dd36b0e0a
Add collective schema (not yet implemented)
2002-01-07 04:45:06 +00:00
Kurt Zeilenga
95c6eae74a
Clarify DESC
2002-01-07 04:44:50 +00:00
Howard Chu
26e327f32e
Fix some debug statements
2002-01-06 07:21:06 +00:00
Howard Chu
50277c6abe
Added LDAP_FILTER_EXT case to filter_free()
2002-01-06 06:21:30 +00:00
Howard Chu
e75627a7a7
Don't need to malloc/free ma_rule_text
2002-01-06 06:21:11 +00:00
Howard Chu
ec46a2f33a
Use 'm' ber_scanf format where convenient
2002-01-06 06:11:01 +00:00
Kurt Zeilenga
645ae7a22f
Hide select matching rules from published schema
2002-01-06 05:29:04 +00:00
Kurt Zeilenga
c7a0c436d2
Don't split DESC over multiple lines
2002-01-06 05:27:03 +00:00
Kurt Zeilenga
4b3e7fa668
Add LDAP/X.500 subentry schema (draft-zeilenga-ldap-subentry-xx.txt)
2002-01-06 04:59:26 +00:00
Howard Chu
ce7d8d26f2
Changed conn->c_cdn to struct berval.
2002-01-06 03:26:09 +00:00
Kurt Zeilenga
d218a5ed5c
Add SLAP_MALLOC() and friends.
...
Intended to be used instead of ch_malloc() and friends.
See comment.
2002-01-06 01:34:53 +00:00
Kurt Zeilenga
eaf3264184
Add some critical control checks.
2002-01-06 00:36:55 +00:00
Kurt Zeilenga
4aae03ef24
Remove lint.
2002-01-06 00:35:41 +00:00
Kurt Zeilenga
95082964fc
Fix compile errors
2002-01-06 00:35:01 +00:00
Kurt Zeilenga
c83b406fdc
Fix compile errors
2002-01-05 19:36:41 +00:00
Pierangelo Masarati
e5beebd6a3
more cleanup
2002-01-05 18:31:38 +00:00
Pierangelo Masarati
d0261ee534
leftover ber_bvdup eliminated; rewritten ber_bvdup in terms of ber_dupbv; eliminated wrapper macro; other ber_* improvements
2002-01-05 17:49:59 +00:00
Pierangelo Masarati
a744ca2be3
fix logs
2002-01-05 16:53:08 +00:00
Pierangelo Masarati
ca60d05dd1
fix malformed test
2002-01-05 15:44:08 +00:00
Howard Chu
05b9ddc15f
Fix uninitialized pointers
2002-01-05 13:25:04 +00:00
Howard Chu
225fa32d8f
BVarray fixes for ldap_dnattr_rewrite
2002-01-05 11:41:23 +00:00
Howard Chu
5fd983725e
Fix at_destroy free of slap_schema.si_at_undefined (when it's NULL)
2002-01-05 11:41:03 +00:00
Pierangelo Masarati
f3b61d87b7
fix BVarray
2002-01-05 09:58:19 +00:00
Kurt Zeilenga
add5119c1a
Cleanup
2002-01-04 23:49:58 +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
847f0f5b8f
misc fix/improvements
2002-01-04 19:11:55 +00:00
Pierangelo Masarati
cdc1e149ca
fix attribute mapping bug
2002-01-04 18:03:43 +00:00
Pierangelo Masarati
4f4f5dc93f
move mapping in a separate file
2002-01-04 18:01:56 +00:00
Pierangelo Masarati
10352caec1
fix rewrite iteration
2002-01-04 17:51:46 +00:00
Pierangelo Masarati
bd535be5cb
hide mapping initialization
2002-01-04 17:51:20 +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
Howard Chu
05b2332caa
struct berval fixes, fix memory leak in ldap_send_entry
2002-01-04 00:49:34 +00:00
Kurt Zeilenga
f5ab06738b
All empty IA5 and Printable strings, but not Directory strings.
2002-01-03 20:03:27 +00:00
Kurt Zeilenga
32b764a9b0
Remove lint
2002-01-03 20:02:49 +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
Pierangelo Masarati
3e230c7f91
trivial fixes
2002-01-03 16:28:21 +00:00
Kurt Zeilenga
33e6f6e65c
Cleanup (not)found logic
2002-01-03 08:03:22 +00:00
Kurt Zeilenga
d14579589e
Indicate support for True (&) and False (|) filters
2002-01-03 08:02:17 +00:00
Howard Chu
9ad0c5a2e5
Fix from Jonghyuk Choi jongchoi@us.ibm.com; return 0 IDs when bdb_key_read
...
returns DB_NOTFOUND.
2002-01-03 05:53:27 +00:00
Howard Chu
265a03c7bd
Changed AttributeName back into an array instead of a linked list
2002-01-03 05:41:50 +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
029306a5be
Use ldap_queue.h instead of <ac/queue.h>
2002-01-03 00:12:46 +00:00
Howard Chu
013b3a9f3d
Minor cleanup
2002-01-02 23:26:20 +00:00
Howard Chu
38fea082ad
Remove unused int i, j
2002-01-02 22:57:57 +00:00
Howard Chu
1a8543da6d
Fix for attr_merge
2002-01-02 22:46:10 +00:00
Kurt Zeilenga
2a799ef855
Fix yet another stupid error...
2002-01-02 19:06:49 +00:00
Kurt Zeilenga
b905b543e0
Additional error checking + misc cleanup
2002-01-02 18:48:10 +00:00
Pierangelo Masarati
c8afe173ba
more cleanup
2002-01-02 18:14:29 +00:00
Pierangelo Masarati
09348fcd85
minor fixes
2002-01-02 17:56:48 +00:00
Kurt Zeilenga
763c0de59b
Rework filter code
...
Misc cleanup / lint removal
2002-01-02 17:06:56 +00:00
Kurt Zeilenga
f6be5028f0
cleanup
2002-01-02 17:05:12 +00:00
Kurt Zeilenga
c603bc3946
use sizeof instead of strlen/hardcoded-consts
2002-01-02 17:04:09 +00:00
Kurt Zeilenga
af121f0489
Remove lint
2002-01-02 17:02:30 +00:00
Kurt Zeilenga
c999444f40
Cleanup
2002-01-02 17:01:44 +00:00
Kurt Zeilenga
3adff99b47
Zap unbind and abandon
2002-01-02 17:00:54 +00:00
Kurt Zeilenga
da6928b437
use malloc not calloc
2002-01-02 17:00:21 +00:00
Kurt Zeilenga
38d800637f
Use AC_MEMCPY instead of memcpy
...
Use sizeof instead of strlen
2002-01-02 16:58:37 +00:00
Kurt Zeilenga
f418f6247f
use sizeof not strlen
2002-01-02 16:57:30 +00:00
Howard Chu
4aa2a28692
Changed struct berval ** to BVarray
2002-01-02 13:28:10 +00:00
Howard Chu
f59fc68beb
Changed struct berval ** to BVarray
2002-01-02 13:09:28 +00:00
Howard Chu
b15eebf50b
Minor cleanup. bvarray_add should return success/fail, like
...
ber_bvecadd does.
2002-01-02 13:03:46 +00:00
Howard Chu
17a36b757c
Changed struct berval ** to BVarray
2002-01-02 13:03:06 +00:00
Howard Chu
ee98e6938c
Fix memory leak of Mod.sml_type
2002-01-02 12:34:35 +00:00
Howard Chu
a18e437356
Fix entry_decode
2002-01-02 11:52:06 +00:00
Howard Chu
f52cc9bab5
Change struct berval ** to BVarray
2002-01-02 11:00:36 +00:00
Howard Chu
ce9ac6d273
Removed unused unbind stuff
2002-01-02 04:42:09 +00:00
Howard Chu
78c6bd9d23
Removed unused unbind stuff
2002-01-02 04:32:34 +00:00
Howard Chu
b2809cb330
Fix dnParent to return "" for root
2002-01-01 13:32:10 +00:00
Howard Chu
affa8f5a65
More struct berval conversions
2002-01-01 13:31:20 +00:00
Howard Chu
dc4fe01758
Remove abandon cruft
2002-01-01 12:23:02 +00:00
Howard Chu
de97928160
Remove abandon cruft
2002-01-01 11:38:30 +00:00
Howard Chu
ab713881b9
Cleanup
2002-01-01 09:49:23 +00:00
Howard Chu
fdc4dec350
Use ldap_str2rdn
2002-01-01 09:41:10 +00:00
Howard Chu
6fa6ac6676
Fix dnValidate
2002-01-01 09:40:57 +00:00
Howard Chu
1a7d129585
Use ldap_str2rdn instead of rdn_attr
2002-01-01 09:18:34 +00:00
Howard Chu
5b83bbc681
Fix previous commit
2002-01-01 04:44:59 +00:00
Howard Chu
3d8d9344dd
Optimize ISSPACE checks in UTF8StringNormalize
2002-01-01 04:43:03 +00:00
Pierangelo Masarati
7d12cbe341
my compiler complains ...
2001-12-31 16:10:39 +00:00
Howard Chu
c962743263
Free any ADs attached to the undefined attribute type
2001-12-31 14:47:41 +00:00
Howard Chu
d9fec6d815
More for ad_inlist
2001-12-31 14:47:20 +00:00
Howard Chu
743c402265
Changed search attrs from struct berval ** to AttributeName *
2001-12-31 11:35:52 +00:00
Howard Chu
b92710e3a5
Minor cleanup
2001-12-31 06:44:36 +00:00
Howard Chu
74cd06efdd
Fix previous commit
2001-12-31 06:09:29 +00:00
Howard Chu
9383bf3265
Use ber_free_buf
2001-12-31 06:02:35 +00:00
Howard Chu
e6d4c7dbcc
Added oidm_destroy
2001-12-31 04:35:02 +00:00
Howard Chu
10961151ef
Use queue-compat for Connection->c_ops,c_pending_ops
2001-12-31 04:08:29 +00:00
Howard Chu
07b4ad7fa2
Use dnIsSuffix
2001-12-30 10:47:28 +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
Howard Chu
1f8cf93db8
One more uninit
2001-12-30 00:38:44 +00:00
Howard Chu
c5529b489b
fix uninitialized vars
2001-12-30 00:24:44 +00:00
Howard Chu
7ffc723c40
Cleanup, fix uninitialized vars
2001-12-30 00:14:45 +00:00
Howard Chu
f7c1ef4398
More ava fixups
2001-12-29 15:24:53 +00:00
Pierangelo Masarati
7b8c4c3b50
fix some ava bugs
2001-12-29 15:13:24 +00:00
Howard Chu
185ff129b5
Change struct berval * to struct berval in various structures
2001-12-29 15:01:10 +00:00
Pierangelo Masarati
6d046b1681
fix rewrite stuff
2001-12-29 14:18:31 +00:00
Howard Chu
a191392e2e
Changed LDAP_AVA struct berval * to struct berval.
2001-12-29 10:35:24 +00:00
Pierangelo Masarati
3930a390e0
cleanup
2001-12-29 10:30:23 +00:00
Howard Chu
dd59babf43
More cleanup
2001-12-29 10:25:19 +00:00
Howard Chu
68daf5bee9
Misc cleanup
2001-12-29 05:44:37 +00:00
Howard Chu
975a5e9a24
Added dnPretty2/dnNormalize2 using preallocated destination berval
2001-12-29 04:48:00 +00:00
Howard Chu
40dc0aa329
Silence warning
2001-12-29 02:56:27 +00:00
Howard Chu
c4b432cb3f
Fix newSuperior handling. Back out previous commit.
2001-12-29 02:56:08 +00:00
Pierangelo Masarati
04ce28cf48
a couple of comments; will require special DN handling ...
2001-12-28 18:18:16 +00:00
Pierangelo Masarati
1a349907f3
cached entries are deleted if volatile; small improvements
2001-12-28 15:58:51 +00:00
Pierangelo Masarati
c8335e7d14
strengthen previous commit
2001-12-28 15:56:18 +00:00
Pierangelo Masarati
9dab474fa4
fix realloc bug
2001-12-28 15:28:10 +00:00
Pierangelo Masarati
cd8eb327d6
more exploitation of efficient parsing
2001-12-28 15:13:16 +00:00
Pierangelo Masarati
f2a80ff827
fix acl_dn_pat bervalization
2001-12-28 14:47:26 +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
92c6c9c25d
Misc berval stuff.
2001-12-28 11:45:25 +00:00
Howard Chu
65636e0855
Changed dnExtractRdn to use a provided berval instead of allocating one.
...
Use ldap_dn2bv and ldap_rdn2bv instead of the *2str versions.
2001-12-28 10:04:53 +00:00
Howard Chu
514f605ef5
Fix modrdn newSuperior checks
2001-12-28 09:48:52 +00:00
Howard Chu
d6a37432bd
Changed dn_rdn/dn_rdnlen to struct berval
2001-12-28 08:38:24 +00:00
Howard Chu
ef62c618d7
Fix previous commit
2001-12-28 08:01:01 +00:00
Howard Chu
0039cb2a37
More dnPrettyNormal
2001-12-28 07:58:54 +00:00
Kurt Zeilenga
699a092967
More dn_normalize -> dnNormalize changes
2001-12-28 07:41:52 +00:00
Kurt Zeilenga
27f42bba62
More dn_normalize() -> dnNormalize() changes
2001-12-28 07:30:34 +00:00
Howard Chu
292c575c1f
Added dnPrettyNormal, do both Pretty and Normalize at once to save
...
some ldap_str2dn overhead.
2001-12-28 07:27:15 +00:00
Kurt Zeilenga
4810c8c255
dn_normalize -> dnNormalize
2001-12-28 07:09:12 +00:00
Howard Chu
6b413395fd
More struct beral conversion
2001-12-28 04:20:08 +00:00
Kurt Zeilenga
b17572c7d3
cleanup
2001-12-27 23:01:09 +00:00
Pierangelo Masarati
cd06dac298
:)
2001-12-27 18:10:25 +00:00
Kurt Zeilenga
cefce9c965
dnExtractRDN should take a struct berval DN.
2001-12-27 17:17:01 +00:00
Pierangelo Masarati
0bff9e6eb7
struct bervals for DN; fix in send children
2001-12-27 15:16:12 +00:00
Pierangelo Masarati
70e7d58c7d
small improvement and prototyping
2001-12-27 15:15:30 +00:00
Pierangelo Masarati
02153708a0
conversion to berval DN
2001-12-27 12:17:54 +00:00
Pierangelo Masarati
7d63865e9f
group and attribute conversion to berval DN
2001-12-27 12:17:28 +00:00
Pierangelo Masarati
bc68b6faa7
matched_dn may be null
2001-12-27 12:16:58 +00:00
Howard Chu
102cb93220
Fix memory leak in str2entry
2001-12-27 10:25:50 +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
Kurt Zeilenga
f9c2dc3701
Clean up a few globals
2001-12-27 02:03:57 +00:00
Howard Chu
ef31250591
More struct berval fixes
2001-12-27 01:38:15 +00:00
Howard Chu
0e5e2a95fd
More struct berval fixes for modrdn
2001-12-27 01:10:52 +00:00
Howard Chu
3e826ae1c7
More struct berval fixes for modrdn
2001-12-27 00:58:14 +00:00
Kurt Zeilenga
b503ca65ee
Misc cleanup
2001-12-27 00:31:55 +00:00
Kurt Zeilenga
b144879650
Quick struct berval DN support for defer alias API.
...
Underlying code needs work.
2001-12-27 00:26:59 +00:00
Kurt Zeilenga
3a8f99a24d
add group.c
2001-12-27 00:18:09 +00:00
Kurt Zeilenga
f2eadedd5f
Quick patch to support struct berval dn2entry changes
2001-12-27 00:10:44 +00:00
Kurt Zeilenga
467213affd
Update groups to use struct berval DNs.
2001-12-26 23:49:19 +00:00
Kurt Zeilenga
a553a03586
More struct berval DNs changes
2001-12-26 23:43:28 +00:00
Howard Chu
e8fa25a215
Changed Filter.f_dn to struct berval*
2001-12-26 23:37:59 +00:00
Kurt Zeilenga
ef7a99ff99
Additional struct berval DN changes...
2001-12-26 23:26:55 +00:00
Howard Chu
66dc664930
Some more (incomplete) struct berval conversion
2001-12-26 23:26:17 +00:00
Kurt Zeilenga
93fb01e2f0
Fix modrdn and other misc cleanup
2001-12-26 23:03:36 +00:00
Kurt Zeilenga
d9d636f00c
Update to new API (struct berval DNs)
2001-12-26 22:59:28 +00:00
Kurt Zeilenga
a3e6048359
Update to new struct berval DN API
2001-12-26 22:53:54 +00:00
Kurt Zeilenga
e0b83b3096
Fix syntax errors caused by struct berval changes...
2001-12-26 21:25:04 +00:00
Kurt Zeilenga
21cecb3831
Update referral handling to use struct berval DNs.
2001-12-26 20:59:24 +00:00
Pierangelo Masarati
f6deebfe6b
not needed any longer
2001-12-26 20:53:49 +00:00
Pierangelo Masarati
e2fdaed3c7
some char* to berval fixes
2001-12-26 20:47:41 +00:00
Kurt Zeilenga
bd0135ccb4
Move search, modify, and modrdn APIs to struct berval DNs.
...
Much clean up is needed.
2001-12-26 19:50:40 +00:00
Kurt Zeilenga
7195dad7c2
Zap configinfo and cleanup unused defaults
2001-12-26 19:10:13 +00:00
Kurt Zeilenga
4c888909dd
Zap configinfo
2001-12-26 19:09:34 +00:00
Kurt Zeilenga
24a4d888dc
move compare and delete to struct berval DNs
2001-12-26 19:05:26 +00:00
Kurt Zeilenga
9f8c9bf3a8
struct berval DN changes
2001-12-26 18:04:06 +00:00
Kurt Zeilenga
df9cc9da58
Fix typo
2001-12-26 17:51:07 +00:00
Kurt Zeilenga
d64ec6ee0d
modify be_referral to use struct berval DNs.
2001-12-26 17:40:34 +00:00
Kurt Zeilenga
139e78e35c
Remove lint.
2001-12-26 16:52:26 +00:00
Kurt Zeilenga
21288fbb21
Misc cleanup and dn_normalize() zapping
...
Fix nameAndOptionalIdentifer syntax.
2001-12-26 16:42:35 +00:00
Howard Chu
bbcb0f8a7f
Replace strcat with slap_strcopy
2001-12-26 16:25:18 +00:00
Howard Chu
d8979214fe
Removed obsolete dn_normalize calls
2001-12-26 16:24:18 +00:00
Howard Chu
71aff74f71
Use dnNormalize
2001-12-26 16:23:32 +00:00
Howard Chu
2a3dc7ab8f
Moved bdb_strcopy to slap_strcopy
2001-12-26 15:52:46 +00:00
Howard Chu
dae9473e08
Minor struct berval tweaks
2001-12-26 15:29:17 +00:00
Howard Chu
d0add35348
Changed get_limits to struct berval*
2001-12-26 15:28:01 +00:00
Howard Chu
3da3be8128
Precompute syn_oidlen and mr_oidlen
2001-12-26 14:36:02 +00:00
Howard Chu
15f630545a
Changed ma_rule_text to struct berval.
...
Changed get_filter to struct bervals
2001-12-26 13:47:10 +00:00
Howard Chu
a1460e74ce
Added ldap_xxx2bv schema functions
2001-12-26 12:31:44 +00:00
Howard Chu
d474789d0d
First pass at converting bind to struct bervals
2001-12-26 11:41:38 +00:00
Pierangelo Masarati
29ffe05902
more on attrs array from char* to berval*
2001-12-26 11:23:35 +00:00
Howard Chu
fb3af1ccbd
Merged ber_bvstr and ber_bvstrdup into ber_str2bv.
2001-12-26 10:06:19 +00:00
Howard Chu
d00fe773ae
Fix attrs handling
2001-12-26 09:19:57 +00:00
Howard Chu
e78a0930c8
Fix attrs handling
2001-12-26 08:49:27 +00:00
Howard Chu
ede3abc8c7
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:47:04 +00:00
Howard Chu
c7d7c6f18f
Added missing passwd_back_db_config.
2001-12-26 08:32:08 +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
Howard Chu
65977a0f83
Migrate to dnNormalize
2001-12-26 06:21:23 +00:00
Howard Chu
34214776d1
Minor cleanup
2001-12-26 06:21:06 +00:00
Howard Chu
7685b237b7
Fix unterminated string in previous commit. dnNormalize ought to use an
...
ldap_bv2dn function instead of ldap_str2dn and honor the bv_len's...
2001-12-26 04:51:10 +00:00
Howard Chu
b96645af7d
More struct berval changes, dnNormalize migration...
2001-12-26 04:17:49 +00:00
Kurt Zeilenga
dab28c8773
Fix typo
2001-12-25 19:53:59 +00:00
Kurt Zeilenga
2dd27b0786
More struct berval DNs
2001-12-25 19:48:26 +00:00
Kurt Zeilenga
7431cb9eee
FIx up replog calls, add replog call to bdb passwd
2001-12-25 18:20:35 +00:00
Kurt Zeilenga
e08a10b853
Have replog() use struct berval DNs
2001-12-25 04:09:09 +00:00
Kurt Zeilenga
c3323c31d5
Fix modrdn
2001-12-25 03:47:35 +00:00
Kurt Zeilenga
ae0a17fa4e
Adjust e_name.bv_len on modrdn
2001-12-25 03:03:03 +00:00
Kurt Zeilenga
3336619c80
More "char *" to struct berval DN changes
2001-12-25 02:30:01 +00:00
Kurt Zeilenga
5ee89d6167
Use struct berval DNs for root DN and update DN
2001-12-25 00:05:26 +00:00
Kurt Zeilenga
f443af5a57
Remove unneeded cheats. hyc found/fixed my bug (in slap.h)
2001-12-24 20:42:05 +00:00
Kurt Zeilenga
5ccff70aa3
update comment
...
make tests (0-4) now works! (w/ dnNormalize/dnMatch cheats)
2001-12-24 20:29:59 +00:00
Howard Chu
6654fffb3e
Fix SEGV when no newSuperior is specified
2001-12-24 20:27:00 +00:00
Kurt Zeilenga
5b49e1a9c5
This really should work... but it's no more broken than last commit
2001-12-24 20:20:29 +00:00
Howard Chu
a61b777cdc
Fix uninitialized struct berval* to avoid assert in dnNormalize
2001-12-24 20:12:30 +00:00
Kurt Zeilenga
b735ca3237
Add some cheats to dnNormalize and dnMatch to workaround
...
ava normalization issues.
2001-12-24 20:07:19 +00:00
Howard Chu
3df5c17881
Fix typo in e_ndn macro
2001-12-24 20:03:54 +00:00
Kurt Zeilenga
6441db83c0
Misc cleanup, but doesn't fix tests.
2001-12-24 19:21:42 +00:00
Kurt Zeilenga
54e11f63e5
Missed a dnPretty ber_val NULL...
2001-12-24 18:53:33 +00:00
Pierangelo Masarati
cbe43a8540
more re-engineering; now rdn_attrs() and so are written in terms of ldap_str2rdn; some functions are deprecated
2001-12-24 18:42:51 +00:00
Pierangelo Masarati
e544300b05
back out previous change
2001-12-24 18:39:41 +00:00
Kurt Zeilenga
d047cc854e
Require the struct berval **out argument of dnPretty/dnNormalize
...
point to a NULL pointer, that is assert( *out == NULL ).
Eventually, we'll allow **out to point to a preallocated
struct berval (to avoid unnecessary allocation).
2001-12-24 18:38:20 +00:00
Kurt Zeilenga
d3d4bb9270
Fix up frontend side of modrdn. Need to rework backend side (especially
...
to adjust ber_lens as needed).
2001-12-24 18:02:49 +00:00
Howard Chu
3b8cf82517
Use e_nname.bv_len
2001-12-24 17:52:07 +00:00
Howard Chu
b4b948c37b
e_name.bv_len stuff in entry_decode
2001-12-24 17:37:22 +00:00
Pierangelo Masarati
f0c9590e68
comment for future optimization
2001-12-24 17:27:26 +00:00
Kurt Zeilenga
aac4f1caf5
Basic ename.bv_len work.
2001-12-24 17:24:18 +00:00
Pierangelo Masarati
7aedd4972d
trim spurious e_ndn also from back-meta
2001-12-24 17:24:07 +00:00
Howard Chu
6e3ec13e05
Avoid conflict with e_ndn macro
2001-12-24 17:06:46 +00:00
Kurt Zeilenga
fa30a46446
Fix DN struct berval issue
2001-12-24 17:01:08 +00:00
Kurt Zeilenga
f6085d3f82
Every quick mod to use a struct berval for e_dn/e_ndn. No bv_len yet.
2001-12-24 16:53:47 +00:00
Howard Chu
70194f9ad6
Changed suffix_alias() to use struct berval * in-place.
2001-12-24 16:29:18 +00:00
Pierangelo Masarati
7bf6ec940b
re-engineered some dn related functions with ldap_dn* functions; helpers should be used instead of deprecated functions in code
2001-12-24 15:48:35 +00:00
Howard Chu
9e0ab3da36
Changed Access->a_set_pat and acl->acl_dn_pat to struct berval to eliminate
...
strlen() from acl processing.
2001-12-24 15:43:27 +00:00
Howard Chu
18cd610f2d
op->o_ndn berval fixes for SLAPD_ACI_ENABLED
2001-12-24 15:18:02 +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
9969058a06
Fix typo in berval commit
2001-12-24 13:47:47 +00:00
Kurt Zeilenga
883196d348
Clean up some symbol scoping
2001-12-24 06:36:44 +00:00
Kurt Zeilenga
d0abe6f59f
Misc DN cleanup, no functional changes
2001-12-24 06:00:02 +00:00
Kurt Zeilenga
e701812f27
Make note of deprecated DN routines. Need to write
...
"struct berval" versions
2001-12-24 04:39:15 +00:00
Kurt Zeilenga
914eba1207
Improve error message
2001-12-24 04:03:27 +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
Kurt Zeilenga
7a6e80cdcd
Zap dn_match(), cleanup up prototype header
2001-12-23 20:23:15 +00:00
Kurt Zeilenga
50d57151a7
Move dnValidate, dnNormalize, dnPretty to dn.c
2001-12-23 01:19:46 +00:00
Kurt Zeilenga
0c28b66a75
use dnPretty instead of dn_pretty
2001-12-23 00:43:57 +00:00
Kurt Zeilenga
a4a1325a6a
Update BER decoding of PDU to use "o" (struct berval) instead of
...
"a" (char **)... another step towards BerValue DNs.
2001-12-22 21:52:58 +00:00
Kurt Zeilenga
29d5819729
Fix up builds
2001-12-22 20:17:19 +00:00
Kurt Zeilenga
a78053ecfa
Add a couple of FIXME comments
2001-12-22 19:21:32 +00:00
Pierangelo Masarati
de903b65c9
added operations and sent stats to back-monitor; minor cleanup
2001-12-22 19:14:10 +00:00
Pierangelo Masarati
7733169933
allegedly unnecessary selection of first database to return rootDSE or subschema entries; note that the same happens in access_allowed()
2001-12-22 14:25:54 +00:00
Pierangelo Masarati
328d38713a
better handling of on-the-fly operational attrs by means of helpers
2001-12-22 14:24:13 +00:00
Pierangelo Masarati
3824672c49
added hasSubordinates to back-monitor
2001-12-22 12:28:02 +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
Pierangelo Masarati
d71888c0aa
temporary variable erroneously inside #ifdef (ITS#1503)
2001-12-21 10:15:24 +00:00
Kurt Zeilenga
d23313a068
LDAPv2 disallow and other flag changes
...
Fix compile errors
2001-12-21 04:44:34 +00:00
Howard Chu
56bc0b64df
Fix - don't free constant database names
2001-12-20 08:47:32 +00:00
Kurt Zeilenga
5c0a8848cf
Add abstract object class checks and a bit of structuralObjectClass
...
optimization.
2001-12-20 01:41:44 +00:00
Kurt Zeilenga
80c134ec07
Fix error in last commit
2001-12-20 00:44:26 +00:00
Kurt Zeilenga
1d6c8d8157
Add better error reporting.
...
Handle multiple SUP objectClasses.
2001-12-20 00:34:36 +00:00
Kurt Zeilenga
39bc94082a
Fix minor error in error text handling
...
Fix invalid structural object class chains in test schema
2001-12-19 23:41:31 +00:00
Kurt Zeilenga
948925a683
Patch slapadd(8) to provide a structuralObjectClass if missing
...
from input. This likely needs to be done by the frontend instead.
Add structuralObjectClass to the root and subschema dses.
2001-12-19 22:41:00 +00:00
Kurt Zeilenga
49d16c4dce
Add structuralObjectClass support and a bit of const'ification
2001-12-19 22:08:24 +00:00
Howard Chu
773b3aff16
more cleanup from jon@symas.com
2001-12-18 04:52:55 +00:00
Howard Chu
7c8c5213b1
BDB_MULTI still needs the dupsort function.
2001-12-18 04:41:40 +00:00
Howard Chu
fff5fc14ec
from jon@symas.com - minor cleanup
2001-12-18 04:02:17 +00:00
Kurt Zeilenga
ca975216b8
Regenerate configure and fix AC header inclusion
2001-12-18 02:25:21 +00:00
Howard Chu
0b22897f37
Minor cleanup
2001-12-18 00:29:43 +00:00
Howard Chu
3bd8946ca0
from jon@symas.com - minor cleanup
2001-12-17 22:48:29 +00:00
Howard Chu
923cdcf3c5
fix from jon@symas.com - missing arguments to Debug/LDAP_LOG
2001-12-17 22:47:36 +00:00
Howard Chu
8ad557e4ec
fix from jon@symas.com - inet_ntoa on uninitialized sockaddr
2001-12-17 22:46:59 +00:00
Howard Chu
3545f082af
fix from jon@symas.com - don't free uninitialized bv_val
2001-12-17 22:46:08 +00:00
Howard Chu
63d4d0eb1e
Fix ITS#1497 use strcmp instead of strncmp
2001-12-17 21:56:24 +00:00
Howard Chu
4ddb7c5730
Use a 4-byte constant for the presence index key. Set the index db hash
...
function to simply pass thru the key value, which is already a hash value.
2001-12-16 14:21:47 +00:00
Howard Chu
bf61a1ca9d
Use DB_HASH instead of DB_BTREE for index databases. Since index keys are
...
mainly 4-byte hashes already, there is no locality-of-reference to exploit
as a Btree. About a 7% performance gain.
2001-12-15 23:21:37 +00:00
Howard Chu
4ed4b3f0c0
Revert previous checkin, DB_NODUPDATA is not valid on db->set_flags().
...
It must be specified on individual put() operations (and already is).
2001-12-15 23:00:46 +00:00
Howard Chu
ff682be26e
Added acl_destroy, acl_free.
2001-12-15 12:41:53 +00:00
Howard Chu
826056e75b
More thorough backend_destroy. Added config_destroy. Destroy slap_listeners.
...
Plugged other small leaks.
2001-12-15 12:05:58 +00:00
Howard Chu
335294e190
More cleanup for bdb_db_close
2001-12-15 08:11:59 +00:00
Howard Chu
ce81cef289
Do a regular entry_free on entries from do_add
2001-12-15 06:25:47 +00:00
Pierangelo Masarati
cea4556910
allow empty suffix
2001-12-12 07:56:17 +00:00
Howard Chu
bc66d649b3
More from jon@symas.com - slapd.conf needs backslashes to be escaped.
2001-12-11 22:49:16 +00:00
Howard Chu
bfe6df6b20
Don't signal error if reindexing an already existing dn2id index
2001-12-11 14:23:05 +00:00
Howard Chu
fcce9bb260
Fix ldbm_tool_entry_first, was not byteswapping ID.
2001-12-11 14:03:18 +00:00
Pierangelo Masarati
7330016026
strengthen dn_issuffix
2001-12-11 12:36:54 +00:00
Pierangelo Masarati
f461eb5c72
better description of the backend
2001-12-11 11:47:43 +00:00
Pierangelo Masarati
f21649c9a6
fix backend suffix allocation bug; add better versioning to main entry
2001-12-11 11:31:38 +00:00
Pierangelo Masarati
e754997da0
minor cleanup
2001-12-11 11:30:01 +00:00
Pierangelo Masarati
e25627942e
missing files (sorry)
2001-12-10 21:49:07 +00:00
Howard Chu
67a64c2935
Fixed suffix DN_SUBTREE again. Index was still being written even though
...
it was not being read.
2001-12-10 18:09:07 +00:00
Howard Chu
b54df180f0
Fix - on little-endian machines, store IDs in big-endian order.
2001-12-10 17:42:01 +00:00
Howard Chu
75064ce91d
Fix check for DN_SUBTREE on be suffix
2001-12-10 16:59:37 +00:00
Howard Chu
ce76a4b01a
Fix - on little-endian machines, store IDs in big-endian order. Otherwise
...
BDB's default key sort algorithm sorts in the wrong order (and there's no
convenient way to select the correct algorithm). This is an incompatible
change to the database format but will improve back-ldbm's add/delete
characteristics.
2001-12-10 16:53:15 +00:00
Howard Chu
d7a7b844a0
More cleanup. The last, I hope.
2001-12-10 13:44:02 +00:00
Howard Chu
aeba8c29bb
Extra NULL check, just in case
2001-12-10 13:39:36 +00:00
Howard Chu
727baf2fa5
Misc cleanup
2001-12-10 13:35:04 +00:00
Howard Chu
74377c9620
Fix typo in glue_back_select
2001-12-10 12:30:43 +00:00
Howard Chu
efe8ac1bf9
Revert previous commit. Checked in by mistake.
2001-12-10 12:25:24 +00:00
Howard Chu
ef0b308bea
Changed backglue configuration. Added noSubordinates arg to select_backend
...
to deal with glued subordinates.
2001-12-10 12:09:40 +00:00
Pierangelo Masarati
95f1740aa6
improvements to monitor backend: added a log entry that lists the current log level and can be modified via protocol at runtime, to change the log level; minor improvements; fixed a problem in dealing with dn normalization
2001-12-10 09:50:06 +00:00
Pierangelo Masarati
fe45b74798
minor cleanup
2001-12-10 09:46:50 +00:00
Kurt Zeilenga
7a2d752118
fix issuffix call
2001-12-09 19:19:10 +00:00
Kurt Zeilenga
30831a4012
misc cleanup
2001-12-09 18:57:46 +00:00
Howard Chu
fd7e23c188
Converted suffixAlias to struct bervals.
2001-12-09 14:57:42 +00:00
Howard Chu
45aadbbbba
Eliminate unnecessary per-operation dn_normalize(o_ndn); it's already
...
done in do_bind() and there's space in the connection structure for c_ndn
already, just copy it.
2001-12-09 14:46:29 +00:00
Howard Chu
d0b1ca692a
Minor strlen cleanup
2001-12-09 13:57:55 +00:00
Kurt Zeilenga
ab6f9bd352
Remove lint
2001-12-09 03:19:23 +00:00
Howard Chu
369ee86107
Cleaned up search, use dn_issuffixbv
2001-12-09 03:09:18 +00:00
Howard Chu
ebadb3737f
Added dn_issuffixbv() like dn_issuffix, but with bervals.
2001-12-09 03:02:29 +00:00
Howard Chu
984c29bc5f
Added ndn to replog args, eliminate unnecessary dn_normalize in replog.
2001-12-09 02:57:50 +00:00
Howard Chu
acc2500114
Added ndn to replog args, eliminate unnecessary dn_normalize in replog.
2001-12-09 02:47:39 +00:00
Howard Chu
1f28047ab5
Added referrals to gluestate.
2001-12-09 02:46:25 +00:00
Kurt Zeilenga
bc9cee96a1
More misc MSVC changes
2001-12-09 02:43:04 +00:00
Kurt Zeilenga
abd9be4def
Remove lint and misc MSVC updates
2001-12-09 02:34:45 +00:00
Howard Chu
b0169858d1
Don't include glued databases in namingContexts
2001-12-09 02:01:58 +00:00
Howard Chu
109307547e
Clean up bdb_entry_release / bdb_entry_return
2001-12-09 01:14:32 +00:00
Howard Chu
f4f1d1b164
Fix for slapcat
2001-12-08 16:42:27 +00:00
Howard Chu
3a8075e9b0
Added new backglue pseudo-backend. Uses callbacks to glue different backends
...
together into a single searchable hierarchy.
2001-12-08 15:58:47 +00:00
Howard Chu
584d58e8d1
Added callbacks for send_ldap_response and send_search_result.
2001-12-08 15:21:20 +00:00
Howard Chu
21c5674d34
Fix previous commit...
2001-12-08 13:07:01 +00:00
Howard Chu
fd93e0721b
Cleanup previous commit
2001-12-08 11:15:55 +00:00
Howard Chu
ad9d17d537
Added dn_rdnlen. Fixed rdn leak in limits.c.
2001-12-08 11:08:26 +00:00
Howard Chu
e2c2de11c3
Converted all use of dn_parent to the in-place version. (Fixed a pdn leak
...
in back-sql along the way.)
2001-12-08 10:37:42 +00:00
Howard Chu
a06bc9007c
Switched to dn_parent1, cleaned up dn2id_add/delete
2001-12-08 10:10:04 +00:00
Howard Chu
3fce8e0e80
Turned dn_parent into dn_parent1, returning in-place pointer. Made
...
dn_parent return ch_strdup of dn_parent1 for compatibility.
2001-12-08 08:41:39 +00:00
Kurt Zeilenga
6a8d7d92fb
ITS#1399, fix make depend when built as module
2001-12-08 07:48:58 +00:00
Kurt Zeilenga
dc55afec67
Add reference to replication-notes
2001-12-08 07:38:14 +00:00
Kurt Zeilenga
ea8f7aaab3
Pretty the entry DNs on add but not rename (yet).
2001-12-08 06:57:06 +00:00
Howard Chu
2721df21d4
Changed be_nsuffix from char ** to struct berval **, removed nsufflen
2001-12-08 05:17:31 +00:00
Howard Chu
55a217d9ae
Changed be_nsuffix from char ** to struct berval ** to eliminate strlen's
2001-12-08 05:15:58 +00:00
Kurt Zeilenga
e2173e3c20
Disallow duplicate duplicate data
2001-12-08 04:30:23 +00:00
Howard Chu
bf7f1046d4
Add SLAPD_STATIC_BACKENDS and SLAPD_DYNAMIC_BACKENDS macros to simplify
...
backend build rules.
2001-12-08 04:01:30 +00:00
Howard Chu
840a8c95ed
Fix typos in previous commit
2001-12-08 01:16:10 +00:00
Kurt Zeilenga
24e4062e26
add 'objectIdentifier' to openldap.schema ONLY
...
(other schema should be provided as defined in its specification).
and trim DESC to one line
2001-12-08 00:36:11 +00:00
Kurt Zeilenga
d46252fb21
Port reference scope fix from back-ldbm
2001-12-07 22:41:43 +00:00
Kurt Zeilenga
3f1ab56fa9
Fix reference scope.
2001-12-07 22:28:46 +00:00
Kurt Zeilenga
b4ccbc2722
ITS#1413 suggested fix
...
(I think I fixed this by other means, but this does no harm)
2001-12-07 17:25:34 +00:00
Howard Chu
505a8693e6
Some fixes for BDB_IDL_MULTI. Experimental back-hdb code.
2001-12-07 12:38:25 +00:00
Howard Chu
1d9818a8da
Re-introduce BDB_ID2ENTRY_PAGESIZE. Even if the index databases can get
...
by on 4K pages, the id2entry database still needs more (16K).
2001-12-07 07:07:55 +00:00
Howard Chu
d0c0dfcce6
Minor fixes for BDB_IDL_MULTI
2001-12-07 06:48:38 +00:00
Howard Chu
efa14463ec
Missed a spot where root DN_SUBTREE index was still getting written.
2001-12-07 06:48:12 +00:00
Howard Chu
66266f9c25
Bare minimum changes to support BDB 4.0
2001-12-07 05:05:00 +00:00
Howard Chu
0552b1c53f
NT updates from jon@symas.com.
2001-12-07 04:03:25 +00:00
Howard Chu
245d24f776
Fix from jon@symas.com for misdeclared lib handle
2001-12-07 03:18:32 +00:00
Howard Chu
a19a5d8c15
When using BDB_IDL_MULTI, there are no longer any issues with storing
...
large IDLs. Concurrency is improved by using as small a page size as
possible. So, set the pagesize back to the default 4096 in this case.
2001-12-07 01:40:08 +00:00
Howard Chu
11b3c142e4
Fix for BDB_IDL_MULTI to work.
2001-12-06 14:15:47 +00:00
Howard Chu
859e283834
Experimental index management. Uncomment BDB_IDL_MULTI in back-bdb.h
...
to activate. Needs to check limits in bdb_idl_insert_key, will get to
that later.
2001-12-06 13:20:18 +00:00
Howard Chu
223fb11840
Fix so previous change to slapcat works.
2001-12-06 12:28:49 +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
Kurt Zeilenga
2c07200a3a
pretty DNs
2001-12-06 07:32:53 +00:00
Howard Chu
6a5a30ec34
Fix previous commit
2001-12-06 03:29:23 +00:00
Howard Chu
6e0861b671
Minor rearrangement, give pdn to dn2id_add to avoid getting it twice.
2001-12-06 03:26:37 +00:00
Kurt Zeilenga
575c9469d9
Rework dnNormalize/dnPretty to share LDAP_rewrite
...
Add flag to matching rules to indicate if DN folding is needed.
Don't specify dnPretty as pretty function for DN attribute types as
this works too well (it breaks tests).
2001-12-06 03:24:31 +00:00
Howard Chu
52beecbdf4
Fix, index databases were not being closed on shutdown.
2001-12-06 03:24:09 +00:00
Kurt Zeilenga
3787c4c7d7
Allow an object class to be provided in an attribute description list,
...
treated as a request for all required and allowed attributes of the class.
This allows:
ldapsearch (objectClass=*) inetOrgPerson
(requests return of all attributes of inetOrgPerson)
and
ldapsearch (objectClass=*) extensibleObject
(requests return of all attributes, e.g., "+" "*")
2001-12-06 01:02:11 +00:00
Kurt Zeilenga
2b925e2102
Misc cleanup
2001-12-05 23:27:49 +00:00
Kurt Zeilenga
da06921364
Monitor schema should be defined in a separate file.
2001-12-05 23:24:51 +00:00
Kurt Zeilenga
8362bc91f5
Misc I-D updates
...
Misc schema updates
2001-12-05 23:16:35 +00:00
Kurt Zeilenga
f26e1b390e
Add basic infrastructure for pretty routines
...
A pretty routine may rewrite the representation of a value but
must not alter the value itself.
2001-12-05 21:36:59 +00:00
Kurt Zeilenga
3f53087f57
Add comments
2001-12-05 21:07:57 +00:00
Pierangelo Masarati
379e0e9d50
another step towards schema aware normalization: ava sorting in rdns; now by defining USE_LDAP_DN_PARSING both the new dn parsing and the server side normalization is used. There might be, every now and then, a flaw mostly due to naive normalization of pseudo-dn (thinking about some acl/regex stuff and so)
2001-12-05 19:26:30 +00:00
Kurt Zeilenga
5282ecd94b
I should finish my morning coke before making my first commit of the day.
...
Fixes errors in prior commits.
2001-12-05 16:41:45 +00:00
Pierangelo Masarati
335a8bd0ad
a gross attempt to implement a schema-aware normalization
2001-12-05 16:34:51 +00:00
Kurt Zeilenga
f5f0397398
(undefined=*) should precompute to False
2001-12-05 16:31:19 +00:00
Kurt Zeilenga
86f79b85d8
Add experimental UUID/CSN support (needed for LCUP).
2001-12-05 07:25:25 +00:00
Kurt Zeilenga
a5a1fc0846
Add undefined present filter bug fix
2001-12-05 03:21:39 +00:00
Howard Chu
19c7fd49ca
tool_reindex now regenerates the dn2id index as well as the others.
2001-12-05 01:36:18 +00:00
Kurt Zeilenga
999b3dad7b
Fix replacing of all values with an empty value.
2001-12-05 01:16:12 +00:00
Howard Chu
8697aa4b8d
Fixup bdb_entry_release now that entry_decode uses two memory blocks
...
instead of just one.
2001-12-05 00:24:13 +00:00
Kurt Zeilenga
493b415255
Rework indexing code, removing "autolang" and making
...
"subtypes" and "lang" default behavior.
2001-12-05 00:06:03 +00:00
Kurt Zeilenga
fe92783ea8
dnMatch should not be local to file
2001-12-04 23:42:10 +00:00
Pierangelo Masarati
09626cc1d5
of course we don't need debug stuff any more ... :)
2001-12-04 20:27:26 +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
b5504a1c36
Clean up some misplaced 'extern' declarations (should be headers)
2001-12-04 19:57:09 +00:00
Howard Chu
bf4bbcaae2
Don't maintain a DN_SUBTREE index for the backend suffix.
2001-12-04 00:10:47 +00:00
Kurt Zeilenga
891c39f7c5
Really fix the fix to the past commit
2001-12-03 20:16:00 +00:00
Kurt Zeilenga
9c41af8430
Fix previous commit
2001-12-03 20:14:44 +00:00
Kurt Zeilenga
1b91a3872c
Add additional sanity check
2001-12-03 20:05:46 +00:00
Kurt Zeilenga
95b3e2a97d
Minor cleanup
2001-12-03 20:04:08 +00:00
Howard Chu
180e1d5269
Don't maintain a DN_SUBTREE index for the backend suffix, just return
...
BDB_IDL_ALL. This has a huge impact on I/O and txn logs.
2001-12-03 14:04:06 +00:00
Howard Chu
70a900e34e
Rewrote entry_encode/entry_decode again, uses 50% less disk space.
2001-12-03 14:00:19 +00:00
Kurt Zeilenga
b81fd13999
Add more DESC fields and misc cleanup
2001-12-02 04:50:03 +00:00
Kurt Zeilenga
7c555af8d5
Make sure experimental syntaxes are hidden
2001-12-02 04:48:06 +00:00
Kurt Zeilenga
f6369fd702
Misc DESC updates
2001-12-01 18:13:34 +00:00
Pierangelo Masarati
0f64b72a00
paranoid check for escaped dn separators when naively checking for rdn boundary
2001-12-01 16:28:21 +00:00
Pierangelo Masarati
bdb3edefd5
added pattern="anonymous","users","dn.{base|one|subtree|children}" to limit enforcement
2001-12-01 14:17:14 +00:00
Howard Chu
d68b891ced
In presence_candidates(), always return a full match for objectClass.
2001-11-30 01:21:52 +00:00
Kurt Zeilenga
e8c91879ca
Clarify acceptability requirements of additional schema items.
2001-11-29 02:05:20 +00:00
Howard Chu
295e14bd54
Renamed BDB_ID2ENTRY_PAGESIZE to just BDB_PAGESIZE; set it on each database
...
instead of just the id2entry db. It helps. I also found that tweaking the
environment (set_lg_bsize 2MB; set_cachesize 2MB) helps but those can be
taken care of in a DB_CONFIG file. Tweaked the bdb_bt_compare function; it
really only needs to be set on little-endian machines. (On big-endian machines
a lexical sort gives the same result as an integer sort.) Moved the final
checkpoint back to the dbenv_close, I think this leaves a cleaner log file.
2001-11-28 20:48:06 +00:00
Howard Chu
24d1ab848c
Added experimental support for DB_DIRTY_READ.
2001-11-28 03:11:04 +00:00
Kurt Zeilenga
db12d41978
ITS#1467 passwd fix from Brad Thompson <brad@vecna.com>
2001-11-28 02:23:36 +00:00
Howard Chu
5d8f2b8ba6
Cleanup a while() loop.
2001-11-27 22:10:01 +00:00
Kurt Zeilenga
2ac7c91cae
Replace existing SLAP_MR_ matching flags with:
...
SLAP_MR_ASSERTION_SYNTAX_MATCH
SLAP_MR_VALUE_SYNTAX_MATCH
SLAP_MR_VALUE_SYNTAX_CONVERTED_MATCH,
add supporting evaluation macros, and update code as needed.
Misc other code cleanup included.
2001-11-27 21:59:56 +00:00
Howard Chu
5c7a7998a9
Set the id2entry database pagesize to BDB_ID2ENTRY_PAGESIZE to avoid
...
overflow/fragmentation. (This is now 16K vs default 4K.) It turns out
that the entries' on-disk format is quite space-inefficient, storing
4 bytes per pointer or integer when typically >50% of those bytes are
zero. Oh well. It's about a 2:1 space increase over ldbm now, vs 4:1
before when all the entries were overflowing the 4K pages.
2001-11-27 12:36:52 +00:00
Howard Chu
b45133c958
Eliminated nextid database. id2entry database is now maintained in numerical
...
order, so the lastid is always the same as the last entry's ID. This is
an incompatible db file change.
2001-11-27 10:15:23 +00:00
Howard Chu
0a25cddcf3
Fix segv in slapcat. Tool must use be_entry_return to free entries
...
returned from the backend.
2001-11-27 09:34:53 +00:00
Howard Chu
91f47e0ee6
Add #define SLAP_BDB_ALLOW_DBNOTXN to control dbnotxn keyword
2001-11-27 04:35:58 +00:00
Kurt Zeilenga
d5d801d152
Misc code cleanup
2001-11-27 03:41:03 +00:00
Howard Chu
323689da57
Added "dbnotxn" config keyword. If present, back-bdb uses DB_INIT_CDB
...
(Concurrent Data Store mode) instead of DB_INIT_TXN. Faster, but tends
to impede writers.
2001-11-27 02:35:20 +00:00
Howard Chu
78066c08c0
Fixed exit code processing. passwd.c never committed its password change
...
tranasaction.
2001-11-27 01:09:19 +00:00
Howard Chu
763faf21b1
Some tweaks to cut down on IDL stack usage. idl_intersection and idl_union
...
now take only two arguments instead of 3, overwriting the result onto the
first argument. (glibc2.0.7 defaults to a 2MB stack per thread; 3 IDLs at
1.5MB plus various other runtime overhead is enough to trash the stack.)
Also pass in a tmp IDL from search_candidates instead of allocating it in
each candiate function.
2001-11-26 19:32:39 +00:00
Howard Chu
df28982b43
More indexing fixes. Now passes tests 0-7, 10, and 11.
2001-11-24 12:41:54 +00:00
Howard Chu
13696c0b22
Fixed exit condition code checks and log msg, was returning fail on success.
2001-11-24 12:28:52 +00:00
Howard Chu
ad5e8c9e16
Removed unused "range" argument from indexing functions. Fixed more
...
bugs in indexing. Uncommented #define to turn on indexing in back-bdb.h.
It looks like it's working.
2001-11-24 03:46:02 +00:00
Howard Chu
939028b43f
Fixed initialization bug.
2001-11-24 03:44:28 +00:00
Howard Chu
02b464b684
Fix initialization bugs
2001-11-24 03:43:52 +00:00
Howard Chu
49e3e8899d
Fix typo that prevented rootdn logins.
2001-11-24 02:40:59 +00:00
Mark Adamson
bd091ce276
Allow size and time limits in slapd.conf for anonymous bound search operations
2001-11-21 20:28:15 +00:00
Pierangelo Masarati
aee3600276
minor cleanup
2001-11-17 16:18:07 +00:00
Pierangelo Masarati
6df4889f43
minor cleanup
2001-11-17 14:39:10 +00:00
Pierangelo Masarati
0f30fb0d8f
minor cleanup
2001-11-17 14:24:27 +00:00
Pierangelo Masarati
d262aae706
fix misinitialized UNDEFINED attribute type; reordered members of AttributeType because I don't know a portable way to statically initialize a mutex :)
2001-11-17 14:09:38 +00:00
Pierangelo Masarati
a4c9c2c06e
add const
2001-11-17 09:21:22 +00:00
Howard Chu
5657b6ec4e
equality_candidates: s/BDB_IDL_RANGE_CPY/BDB_IDL_CPY/
2001-11-17 04:51:08 +00:00
Howard Chu
02936edd27
First pass at indexing cleanup. Both filterindex.c and search.c now
...
compile cleanly when BDB_FILTER_INDICES is defined, but I have not
yet seen whether any of it actually works. In particular, I don't
understand the "range" argument to the candidate functions...
2001-11-17 04:41:47 +00:00
Howard Chu
18ae339b0f
ainfo_free no longer needed
2001-11-17 00:46:00 +00:00
Kurt Zeilenga
383939f18f
bitString fixes from Julius Enarusai (ITS#1441)
2001-11-16 18:10:37 +00:00
Pierangelo Masarati
d51dc13a0b
moved the empty dn static entry into a global const object
2001-11-16 17:05:32 +00:00
Pierangelo Masarati
4c283cfe65
update dn can add/modrdn/delete entries rooted at '' (according to ACLs)
2001-11-16 15:06:18 +00:00
Pierangelo Masarati
563694039f
check children access for old and new parent when = ''
2001-11-16 15:00:03 +00:00
Pierangelo Masarati
616d409817
updatedn can add '' rooted entries (according to ACLs)
2001-11-16 14:08:17 +00:00
Pierangelo Masarati
7793ece6ce
check children access to newSuperior
2001-11-16 14:04:54 +00:00
Pierangelo Masarati
0cf9b37908
non-root modrdn of entries rooted at '' checks children write permission (completes previous add/delete fix; needs be ported to back-bdb)
2001-11-16 12:24:22 +00:00
Pierangelo Masarati
b1688462ce
check for update dn
2001-11-16 11:47:15 +00:00
Howard Chu
a3ded4782e
Changed AttributeType.sat_cname from char * to struct berval.
...
Forced SLAP_USE_AD code, removed ifdefs of old code. filterindex.c is
still badly broken when BDB_FILTER_INDICES is defined, working on that...
2001-11-16 08:18:58 +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
cc4a51f23c
Changed global ad_mutex into per-attributeType mutex. Added
...
ad_find_lang() to search an AttributeType for a given language variant.
(Will be used in back-bdb/back-ldbm index code...)
2001-11-16 07:39:14 +00:00
Pierangelo Masarati
0ebba25d99
hack to make '' base work; please check side-effects
2001-11-14 17:27:24 +00:00
Pierangelo Masarati
098c4a15d4
fix a couple of misformats
2001-11-14 16:17:30 +00:00
Pierangelo Masarati
a8437c2038
non-root add/delete of entries rooted at '' checks children write permission (forward port from back-ldbm)
2001-11-14 16:09:33 +00:00
Pierangelo Masarati
8c2ed9c809
non-root add/delete of entries rooted at '' checks children write permission
2001-11-14 16:08:59 +00:00
Kurt Zeilenga
90a60edef9
Remove slap_get_time optimization.
...
timelimit must be checked on first entry.
2001-11-13 20:31:00 +00:00
Kurt Zeilenga
525cd6f783
Port ITS#1430 changes from ldbm
2001-11-13 19:45:47 +00:00
Kurt Zeilenga
0f10bed011
rm currenttime_mutex.
...
trival other cleanup.
2001-11-13 18:16:07 +00:00
Mark Adamson
8c16d30087
optimize number of calls to slap_get_time()
2001-11-13 01:38:30 +00:00
Howard Chu
52d3f7b3da
Fix - put group cache search after backend has been selected
2001-11-12 21:39:55 +00:00
Howard Chu
0b037b5566
Added bdb_attribute and bdb_group ACL support routines
2001-11-12 20:52:25 +00:00
Howard Chu
efb6c24f6b
Fix missing case
2001-11-12 20:28:23 +00:00
Howard Chu
48623df1a8
Added backend_group result caching.
2001-11-12 19:37:48 +00:00
Howard Chu
a0a24d73dc
Added backend_group result caching.
2001-11-12 19:25:41 +00:00
Pierangelo Masarati
6b1104ab87
Fixes first part of ITS#1430
2001-11-12 17:32:52 +00:00
Pierangelo Masarati
8c4c2ce789
Fixes second part of ITS#1430
2001-11-12 17:27:01 +00:00
Pierangelo Masarati
afd0037eda
Fixes ITS#1433
2001-11-12 17:12:43 +00:00
Pierangelo Masarati
b4e7f0873a
trims space after comma in dn.regex acls (prelude to normalization)
2001-11-12 11:29:40 +00:00
Mark Adamson
ddd3a4b926
already have the strlen of the attrname in the berval->bv_len
2001-11-12 03:15:40 +00:00
Stig Venaas
d717a7fb9f
Fixes memory leaks in do_compare()
2001-11-10 23:34:03 +00:00
Mark Adamson
f05420c8d8
use berval's instead of strings with UTF8normalize()
2001-11-09 19:01:23 +00:00
Kurt Zeilenga
8d74b517cd
Remove lint
2001-11-07 01:24:32 +00:00
Howard Chu
5f8058f957
Added schema_destroy() et al to free schema structures on shutdown
2001-11-07 01:03:49 +00:00
Stig Venaas
76243a2797
Fixed more memory leaks
2001-11-06 22:36:28 +00:00
Howard Chu
33ace5610c
Added ldap_pvt_tls_destroy() to cleanup TLS library on shutdown
2001-11-06 20:52:59 +00:00
Mark Adamson
67886fc4a1
bervals alloc'd by UTF8SubstringsassertionNormalize() must be ber_bvfree'd
2001-11-06 19:07:15 +00:00
Mark Adamson
e0ff8d6782
fix various memory leaks
2001-11-05 23:14:42 +00:00
Kurt Zeilenga
f8611a1296
Don't use indices to support not [!] filters.
...
Use pres indices to support LE/GE [<=,>=] filters.
2001-11-05 17:25:44 +00:00
Howard Chu
e47e31ad0a
Fix for dbnosync - DB_TXN_NOSYNC is not a valid flag for dbenv_open,
...
must be set later using dbenv_set_flags.
2001-11-05 07:01:12 +00:00
Howard Chu
09cddf9188
Ported referral patches from back-ldbm. I believe search.c still needs
...
the patch from ITS#1289 to be ported here.
2001-11-05 06:24:11 +00:00
Kurt Zeilenga
b312488614
telex number should allow $
2001-11-03 22:03:20 +00:00
Kurt Zeilenga
d03acd7209
Fix uninitialized pointer bug.
2001-11-03 22:02:57 +00:00
Pierangelo Masarati
3a16335374
wrong length in statement selection (not critical); some cleanup (sizeof()-1 instead of strlen on constant strings)
2001-11-01 18:57:21 +00:00
Pierangelo Masarati
08ff231888
fixes assertion fault when the <to> clauses's argument does not have a = inside
2001-10-29 08:14:12 +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
Pierangelo Masarati
271c323281
Fixes ITS#1385
2001-10-25 15:15:34 +00:00
Kurt Zeilenga
79f76c763f
Root DSE and subschema subentry compare.
...
Developed by Steve Omrani/IBM
Copyright IBM Corp. 2001
Use of this source code is subject to the terms of The OpenLDAP
Public License Version 2.7, 7 September 2001. No trademarks of the
IBM Corporation are to be used to identify, endorse or promote any
products derived from this code without the prior written consent
of IBM.
2001-10-25 06:18:11 +00:00
Kurt Zeilenga
a6acc0ff8c
Use allids instead of candidiate negation for !. (ITS#1405)
...
Use presence indices in support of >= and <=.
(Note presence indices could be used to support = and substr in
like fashion where eq and substr indices are not maintained, but
I'll save that for another day.)
2001-10-24 21:26:32 +00:00
Kurt Zeilenga
23bf2fb086
Fix error messages
2001-10-24 05:27:49 +00:00
Kurt Zeilenga
fcd1ce0e28
Use defined Root DSE attributes.
...
Developed by Julius Enarusai/IBM
Copyright IBM Corp. 2001
Use of this source code is subject to the terms of The OpenLDAP
Public License Version 2.7, 7 September 2001. No trademarks of the
IBM Corporation are to be used to identify, endorse or promote any
products derived from this code without the prior written consent
of IBM.
2001-10-23 23:29:41 +00:00
Kurt Zeilenga
d9fb94f1a8
Updated busy loop protection
2001-10-23 22:17:41 +00:00
Julio Sánchez Fernández
aee598dba7
Remove bogus refusal to index ;binary attributes. Notice that I left
...
in a check. This way you have to say:
index userCertificate eq
If we remove it, we could say:
index userCertificate;binary eq
I have not tried the latter.
2001-10-23 13:42:37 +00:00
Julio Sánchez Fernández
358950e8ad
And this change implements indexing for certificateExactMatch. Now
...
you can search efficiently the directory for a certificate.
Notice that we index certificates just as serial integers. A full
index should combine the issuer DN too, but I think in most scenarios
that would be extremely redundant and of little benefit. We can add
an option later to do full indexing.
2001-10-23 13:39:07 +00:00
Julio Sánchez Fernández
9752cea92c
No code change, added a comment warning of a possible future difficulty.
...
Apparently, we refuse to index ;binary attributes. That is mostly
bogus. Whether it is indexable or not depends on whether we know how
to or not, nothing more. I.e., the existance of indexer and filter
functions for the matching rules that are relevant to the attribute
type.
2001-10-23 13:35:54 +00:00
Julio Sánchez Fernández
bf5ea315b6
Compares get values in the matching rule syntax (see RFC2251, 4.1.7),
...
so we need to tell value_find about this.
2001-10-23 09:48:18 +00:00
Julio Sánchez Fernández
cb98a604fb
Replacement for value_find and compatibility macro.
...
Now we will be able to fix compares.
2001-10-23 09:43:20 +00:00
Julio Sánchez Fernández
de353ebeda
Normalization and more error checking.
2001-10-23 09:05:04 +00:00
Julio Sánchez Fernández
dd34307cf7
When checking if an entry matches some filter, we have the list of
...
values as stored in the entry on the one hand and an assertion value
that is not necessarily of the same syntax. So tell value_match this
is the case by setting SLAP_MR_VALUE_IS_IN_MR_SYNTAX in flags.
2001-10-22 20:07:06 +00:00
Julio Sánchez Fernández
5f6d5494dd
Extend value_match to extract an asserted value from a full value
...
if needed. This is controlled by SLAP_MR_VALUE_IS_IN_MR_SYNTAX,
a new flag that should be set when evaluating filters such as in
searches and compares and unset otherwise (such as in modify).
Now, some callers of value_match, notably value_find, don't know
whether to set it or not. We'll see to that.
2001-10-22 20:03:30 +00:00
Julio Sánchez Fernández
5dbf4bddae
Add a flag to help the value_* functions know whether they are seeing
...
a full value (in attribute type syntax) or a value in the syntax of
the matching rule (as happens in filters).
2001-10-22 19:57:23 +00:00
Julio Sánchez Fernández
be89c094f6
Do something with the error text.
2001-10-22 19:55:21 +00:00
Howard Chu
0185b79559
Don't free entries since the tools realloc the buffers.
2001-10-22 15:58:44 +00:00
Howard Chu
11d884b8cf
Fix some uninitialized variables
2001-10-22 15:57:58 +00:00
Howard Chu
c108e66222
Fix entry_encode; must save the given e->e_dn without modification.
2001-10-22 15:01:35 +00:00
Howard Chu
c981026a6c
Missed a test in AttributeDescription commit
2001-10-22 14:55:42 +00:00
Howard Chu
c05de965b5
Moved binary entry_encode/entry_decode into main code. Removed lber version.
2001-10-22 14:07:42 +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
Julio Sánchez Fernández
7581e304c0
It now sort of works, but needs some normalization work and proper
...
error reporting to client and syslog. And indexing, of course.
Now, the problem is that matching rules get called from different
places that are inconsistent in what an assertedValue is. When doing
a modify, a full certificate value is passed (to verify it isn't
already there). When doing a search or compare, the passed value is
in the syntax of the matching rule.
Consistency would require that the caller extracts an asserted value
from the full value before calling smr_match. It can do this by
calling smr_convert (it was unused, was it meant to be used for
this?).
Unfortunately, the caller is typically value_find, value_match, etc.
that have themselves little knowledge of what they are dealing with,
so their interface needs to be extended, new flag values or new
arguments, so that they know if they have a value in attribute type
syntax or in matching rule syntax.
2001-10-22 06:54:30 +00:00
Kurt Zeilenga
17264d1ad4
Experiment with busy loop protection...
2001-10-21 00:48:14 +00:00
Julio Sánchez Fernández
7e1c4f272d
Use the ldap syntax oid assigned by David Chadwick (no yet published).
2001-10-20 17:31:52 +00:00
Pierangelo Masarati
99e7ffe034
listen on any device
2001-10-20 17:19:56 +00:00
Julio Sánchez Fernández
4d0ab0215b
First cut at certificateExactMatch, completely untested and without
...
indexing.
2001-10-20 10:15:09 +00:00
Howard Chu
ce6243f009
Patches for modify/modrdn to work with BDB_USE_BINARY_RW.
2001-10-19 20:28:48 +00:00
Howard Chu
98d6a4f2bf
Added new bdb_encode/bdb_decode functions, must #define BDB_USE_BINARY_RW
...
to activate. The bdb_decode works in-place on the db data. Add/Search are
OK, I think Modify needs to be tweaked. Don't use this yet unless you want
to help finish it.
2001-10-19 11:53:15 +00:00
Kurt Zeilenga
d6730e5f50
BDB updates... haven't had a chance to work on this for a while,
...
committin what I have so that someone else might be able to work it.
2001-10-13 16:55:54 +00:00
Mark Adamson
290137a54f
Serialize access to idl insert/delete key routines (ITS 1359)
2001-10-11 18:12:53 +00:00
Kurt Zeilenga
01bdb4650e
Check for no OID.
2001-10-10 18:15:30 +00:00
Kurt Zeilenga
b6a3dad8f0
Delete attribute indices
2001-10-09 19:41:48 +00:00
Kurt Zeilenga
cdc7c44d80
Use non-critical ManageDsaIT control.
2001-10-09 18:53:22 +00:00
Pierangelo Masarati
069155f667
fixes ITS #1379 ; the replication test has been improved by adding modrdn entries
2001-10-09 18:12:22 +00:00
Kurt Zeilenga
fdc0dd7d6a
Fix some NEW_LOGGING errors
2001-10-05 21:49:04 +00:00
Kurt Zeilenga
78adfde54e
BDB_INDEX code does no harm (but no good yet, not used by filters yet).
2001-10-05 20:12:16 +00:00
Kurt Zeilenga
06a50e37b1
Don't assume e_id is a long.
2001-10-05 18:38:25 +00:00
Kurt Zeilenga
9f1fc48659
Another round. BDB_INDEX almost ready for functional testing.
2001-10-05 17:00:21 +00:00
Kurt Zeilenga
83d50bd696
Minor updates
2001-10-05 02:01:37 +00:00
Kurt Zeilenga
aedf4b42fc
Return unwillingToPerform instead of noSuchObject for subschema subentry
2001-10-05 01:55:14 +00:00
Kurt Zeilenga
96e0038832
Initial idl fetch code, undef BDB_INDEX for now, other cleanup
2001-10-05 01:19:58 +00:00
Kurt Zeilenga
5160da05e5
Add some initial BDB_INDEX code... needs much work.
2001-10-04 22:29:34 +00:00
Kurt Zeilenga
3120d37951
More changes to let BDB build without LDBM.
2001-10-04 06:34:03 +00:00
Kurt Zeilenga
9b98f46a5e
Add prelim index code from LDBM, needs work...
2001-10-04 02:55:09 +00:00
Kurt Zeilenga
433eb73ef8
Add BDB_INDEX error handling
2001-10-03 23:49:38 +00:00
Kurt Zeilenga
3ad55b225e
Add error handling to BDB_INDEX code
2001-10-03 23:39:29 +00:00
Kurt Zeilenga
191853eb51
An incremental step.
2001-10-03 23:28:20 +00:00
Kurt Zeilenga
0135c8dbb1
Add BDB index config code
2001-10-03 21:11:52 +00:00
Kurt Zeilenga
292b6c8757
Replace #if 0 with #if MACRO
2001-10-03 20:34:00 +00:00
Kurt Zeilenga
86a680a4ec
Enable management of attribute indices. Not yet used by test_filter.
2001-10-03 20:20:29 +00:00
Kurt Zeilenga
f704c35caf
subschemaSubentry attributes could be leaked under some conditions,
...
plug them.
2001-10-03 18:19:07 +00:00
Pierangelo Masarati
35c38e271d
use slap_str2undef_ad for unknown attributes
2001-10-03 18:17:08 +00:00
Pierangelo Masarati
8a3768276a
candidate check using new macro from Kurt
2001-10-02 19:15:05 +00:00
Kurt Zeilenga
773b1907d2
Add BDB_IDL_N() macro for ando
2001-10-02 19:04:12 +00:00
Pierangelo Masarati
becb7ff0ce
forward porting of time/size limits from back-ldbm (pending the definition of the most appropriate way to determine the number of candidates)
2001-10-02 12:00:01 +00:00
Pierangelo Masarati
4ac9b37db7
forward porting of empty parent dn checks from back-ldbm
2001-10-02 10:44:14 +00:00
Pierangelo Masarati
5544720505
forward porting of composite rdn handling from back-ldbm
2001-10-02 10:39:04 +00:00
Pierangelo Masarati
6e4a050657
fix memory leak in case of ACL failure (no write permission to rdn attributes)
2001-10-02 10:36:35 +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
Pierangelo Masarati
1c010c59a1
fix candidate selection based on scope
2001-10-01 22:12:23 +00:00
Pierangelo Masarati
af8488c37d
fix result bug; add hooks for error selection based on priority (now the last one is selected)
2001-10-01 22:11:37 +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
Kurt Zeilenga
44146a1cb7
Rework DB_THREAD support. CDB support needs reimplementation.
2001-10-01 06:08:46 +00:00
Stig Venaas
3c28bb413d
Removed a superfluous line left after the ai_addr == NULL fix
2001-09-29 09:40:47 +00:00
Kurt Zeilenga
e78265738d
Rework getaddrinfo() stuff for ai_addr == NULL
2001-09-29 06:33:54 +00:00
Kurt Zeilenga
a1ecd9b697
Fix reference stats2 message
2001-09-28 01:44:13 +00:00
Howard Chu
926b454765
Set protocol to LDAP_VERSION2 on UDP session.
2001-09-28 00:49:01 +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
Kurt Zeilenga
af37269416
Rework do_ldap retry loop to better handle server down errors.
...
Could likely treat other errors (LDAP_BUSY) as non-fatal errors.
2001-09-27 03:13:28 +00:00
Howard Chu
ef7b93242d
Replace some calloc/realloc with ch_calloc/ch_realloc for consistency.
2001-09-26 23:42:53 +00:00
Kurt Zeilenga
c45a6f5c23
Fix up binary search
2001-09-26 03:50:48 +00:00
Kurt Zeilenga
5f4d8a71e6
Use a 64MB stack (instead of a 64K on some systems) by default.
...
This should be tunable...
2001-09-26 02:35:41 +00:00
Kurt Zeilenga
8c758b34f8
Fix build errors
2001-09-26 01:54:39 +00:00
Kurt Zeilenga
37d44620a5
idl_check for back-bdb
2001-09-25 23:56:49 +00:00
Kurt Zeilenga
ef59732180
Add a sample ACL
2001-09-25 20:30:51 +00:00
Kurt Zeilenga
61de99937f
ldif.h include cleanup
2001-09-25 00:03:24 +00:00
Kurt Zeilenga
2af75ecc6a
Trim both \n and \r\n from config files.
2001-09-24 22:18:02 +00:00
Howard Chu
2124673988
Tweaked ID_BLOCKs to record NIDs for INDIRECT blocks as well as directs.
...
Use high bit of NMAX to indicate an INDIRECT. Changes are behind
#ifdef USE_INDIRECT_NIDS
2001-09-22 06:52:32 +00:00
Howard Chu
58f4ffca59
Fix another SEGV from previous patch.
2001-09-22 05:35:52 +00:00
Howard Chu
00a28378f8
Fix previous idl_find patch. Cannot test <=0 with unsigned ints, duh...
2001-09-22 04:10:03 +00:00
Howard Chu
b52795c283
Add idl_find binary search routine, used by idl_insert and idl_split_block
...
instead of linear search.
2001-09-21 20:30:27 +00:00
Kurt Zeilenga
c0c9c47032
bump MAXARGS to 500
2001-09-21 00:48:47 +00:00
Kurt Zeilenga
1bfadb5608
Bump MAXARGS to 500.
2001-09-21 00:48:00 +00:00
Mark Adamson
465ecb85f0
Finished the integerMatch matching rule and the integer syntax.
2001-09-20 15:50:49 +00:00
Pierangelo Masarati
f082328f45
logs changes even if no appropriate replica (or none at all) is defined (ITS#1335)
2001-09-19 09:09:51 +00:00
Kurt Zeilenga
22688a7ad6
Minor cleanup of last commit
2001-09-18 18:24:47 +00:00
Kurt Zeilenga
fb852d7d80
comment out inetLocalMailReciepent as it has no assigned OID
2001-09-18 17:52:43 +00:00
Howard Chu
6b9b0660c9
Fix ITS#1213, OID macro parsing in attributetypes
2001-09-18 11:30:00 +00:00
Kurt Zeilenga
7a18352c06
Patch for SASL EXTERNAL. Needs to be tested with other mechanisms.
2001-09-18 07:44:18 +00:00
Howard Chu
bb06fd8d6b
Fix crashes for SASL/EXTERNAL binds:
...
in slap_sasl_getdn, test id, not dn. dn is still NULL
also, don't check for trailing slash
in slap_sasl_bind, initialize reslen to 0
2001-09-18 03:10:05 +00:00
Kurt Zeilenga
d05e6af326
Clean up include logging
2001-09-17 22:38:52 +00:00
Kurt Zeilenga
baa49e18de
Back out ManageDsaIt change.
2001-09-16 22:03:38 +00:00
Kurt Zeilenga
dba27a3a17
Minor cleanup
2001-09-16 22:02:50 +00:00
Kurt Zeilenga
2d5a817288
Remove lint
2001-09-16 22:00:53 +00:00
Pierangelo Masarati
8a78d022bc
cleanup and cast of logs
2001-09-13 21:30:44 +00:00
Kurt Zeilenga
4039648a2e
Use time_t not char * to represent timestamps.
...
Fixes billionth second since epoch bug.
2001-09-09 21:16:17 +00:00
Kurt Zeilenga
09a7bd4331
Clean up asserts, should assert desc != NULL instead of attr != NULL
2001-09-09 18:58:54 +00:00
Kurt Zeilenga
0a155934ab
Add root DSE supportedFeatures support.
2001-09-09 04:01:07 +00:00
Kurt Zeilenga
82a4f473ce
Update 'invalid data' error message.
2001-09-08 03:55:41 +00:00
Kurt Zeilenga
a8b7e93ef4
Add referral scope checks (ITS#1289) from dshriver@sharemedia.com
2001-09-08 02:37:02 +00:00
Kurt Zeilenga
cd51428dbe
Add IDL debugging code from SuSE.
2001-09-07 21:58:31 +00:00
Dmitry Kovalev
358835218a
finish the prefious fixes... it is really hard to commit a truly good patch without even a chance to check if it is compilable ;)
2001-09-07 18:50:52 +00:00
Dmitry Kovalev
6bf69cbf39
some cosmetics and minor problems fixed, pointed out by Mei-Hui Su (c++-style comments, newlines etc.)
2001-09-07 13:04:11 +00:00
Kurt Zeilenga
ed9b7332fb
Add <limits.h>
2001-09-07 02:08:32 +00:00
Kurt Zeilenga
1b42a20565
Remove extensible filter #ifdef
2001-09-04 18:45:05 +00:00
Kurt Zeilenga
3889e1d955
Add some EINTR logic to back-shell. Assumes fgets() handles
...
such errors in a particular manner.
2001-09-02 00:10:57 +00:00
Kurt Zeilenga
a2ba804e47
Add general extensible matching support and integerBitAndMatch
...
and integerBitOrMatch enhancement (ITS#1302 + minor changes)
from Luke Howard <lukeh@padl.com>.
2001-09-01 17:10:43 +00:00
Kurt Zeilenga
2c9a238571
Allow dn.base=""
2001-09-01 05:01:31 +00:00
Kurt Zeilenga
ef7b181f8b
Open databases using WRCREAT not READER.
2001-09-01 05:00:27 +00:00
Kurt Zeilenga
a49392981a
There is no TLSProtocol option.
2001-08-31 16:48:30 +00:00
Mark Adamson
fac77083cc
Skip over the "dn:" prefix when passing a DN to dn_normalize().
2001-08-29 23:01:24 +00:00
Kurt Zeilenga
2f761834b2
Fix NEW_LGGING typo
2001-08-29 19:49:05 +00:00
Kurt Zeilenga
9a80d76f44
Minor rework of *text = textbuf fix
2001-08-28 21:43:00 +00:00
Kurt Zeilenga
f10028ba06
Apply ACLs to front end objects (root DSE, subschema) consistently
2001-08-28 20:28:34 +00:00
Stig Venaas
70f7e55344
Changed get_listener_addresses() to not use getaddrinfo() for PF_LOCAL
2001-08-26 11:03:27 +00:00
Mark Adamson
7378872731
Need to set error text pointer sooner in entry_schema_check(), or Debug() will SEGV
2001-08-15 15:27:26 +00:00
Pierangelo Masarati
b637967b95
fix malformed test
2001-08-04 16:46:03 +00:00
Pierangelo Masarati
8ee6168916
fix a reference to volative memory in back-ldbm/passwd.c that caused garbage messages to be returned to ldappasswd
2001-08-04 15:46:08 +00:00
Pierangelo Masarati
1eb3f8b2e4
add limits stuff to back-ldap
2001-08-04 11:10:35 +00:00
Pierangelo Masarati
b5bb74bb02
cleanup limits stuff in back-meta
2001-08-04 11:10:08 +00:00
Pierangelo Masarati
6a5b253bc6
allow multiple limits setting on one global/per backend config line
2001-08-04 11:09:25 +00:00
Pierangelo Masarati
4919363fa0
more intuitive special limits configuration
2001-08-03 17:25:39 +00:00
Pierangelo Masarati
414783058d
enforces detailed search limits
2001-08-03 17:15:14 +00:00
Dmitry Kovalev
2f4d324f60
A big bunch of improvements, contributed by Sam Drake and Raj Damani.
...
Summary of changes is cited below.
The patch still needs some cosmetic changes to be made, but is ready for testing.
-----Original Message-----
From: Sam Drake [mailto:drake@timesten.com]
Sent: Saturday, April 07, 2001 10:40 PM
To: 'mitya@seismic.ru'
Cc: openldap-devel@OpenLDAP.org
Subject: RE: Slapd frontend performance issues
FYI, here is a short description of the changes I made. I'll package up the
changes asap, but it may take a couple of days.
The performance numbers quoted in this report were seen at my location with
a 100,000 object database ... the slower numbers I mentioned earlier were
reported by a customer with a 1,000,000 object database.
I also can't explain the very poor performance I saw with OpenLDAP and LDBM
with a 100,000 object database.
...Sam Drake / TimesTen Performance Software
----------
Work Performed
OpenLDAP 2.0.9, including back-sql, was built successfully on Solaris
8 using gcc. The LDAP server itself, slapd, passed all tests bundled
with OpenLDAP. OpenLDAP was built using Sleepycat LDBM release 3.1.17
as the "native" storage manager.
The experimental back-sql facility in slapd was also built
successfully. It was built using Oracle release 8.1.7 and the Oracle
ODBC driver and ODBC Driver Manager from Merant. Rudimentary testing
was performed with the data and examples provided with back-sql, and
back-sql was found to be functional.
Slapd and back-sql were then tested with TimesTen, using TimesTen
4.1.1. Back-sql was not immediately functional with TimesTen due to a
number of SQL limitations in the TimesTen product.
Functional issues encountered were:
1. Back-sql issued SELECT statements including the construct,
"UPPER(?)". While TimesTen supports UPPER, it does not support the
use of parameters as input to builtin functions. Back-sql was
modified to convert the parameter to upper case prior to giving it
to the underlying database ... a change that is appropriate for all
databases.
2. Back-sql issued SELECT statements using the SQL CONCAT function.
TimesTen does not support this function. Back-sql was modified to
concatentate the necessary strings itself (in "C" code) prior to
passing the parameters to SQL. This change is also appropriate for
all databases, not just TimesTen.
Once these two issues were resolved, back-sql could successfully
process LDAP searches using the sample data and examples provided with
back-sql.
While performance was not measured at this point, numerous serious
performance problems were observed with the back-sql code and the
generated SQL. In particular:
1. In the process of implementing an LDAP search, back-sql will
generate and execute a SQL query for all object classes stored in
back-sql. During the source of generating each SQL query, it is
common for back-sql to determine that a particular object class can
not possibly have any members satisfying the search. For example,
this can occur if the query searches an attribute of the LDAP
object that does not exist in the SQL schema. In this case,
back-sql would generate and issue the SQL query anyway, including a
clause such as "WHERE 1=0" in the generated SELECT. The overhead
of parsing, optimizing and executing the query is non-trivial, and
the answer (the empty set) is known in advance. Solution: Back-sql
was modified to stop executing a SQL query when it can be
predetermined that the query will return no rows.
2. Searches in LDAP are fundamentally case-insensitive ("abc" is equal
to "aBc"). However, in SQL this is not normally the case.
Back-sql thus generated SQL SELECT statements including clauses of
the form, "WHERE UPPER(attribute) = 'JOE'". Even if an index is
defined on the attribute in the relational database, the index can
not be used to satisfy the query, as the index is case sensitive.
The relational database then is forced to scan all rows in the
table in order to satisfy the query ... an expensive and
non-scalable proposition. Solution: Back-sql was modified to allow
the schema designer to add additional "upper cased" columns to the
SQL schema. These columns, if present, contain an upper cased
version of the "standard" field, and will be used preferentially
for searching. Such columns can be provided for all searchable
columns, some columns, or no columns. An application using
database "triggers" or similar mechanisms can automatically
maintain these upper cased columns when the standard column is
changed.
3. In order to implement the hierarchical nature of LDAP object
hierarchies, OpenLDAP uses suffix searches in SQL. For example, to
find all objects in the subtree "o=TimesTen,c=us", a SQL SELECT
statement of the form, "WHERE UPPER(dn) LIKE '%O=TIMESTEN,C=US'"
would be employed. Aside from the UPPER issue discussed above, a
second performance problem in this query is the use of suffix
search. In TimesTen (and most relational databases), indexes can
be used to optimize exact-match searches and prefix searches.
However, suffix searches must be performed by scanning every row in
the table ... an expensive and non-scalable proposition. Solution:
Back-sql was modified to optionally add a new "dn_ru" column to the
ldap_entries table. This additional column, if present, contains a
byte-reversed and upper cased version of the DN. This allows
back-sql to generate indexable prefix searches. This column is
also easily maintained automatically through the use of triggers.
Results
A simple database schema was generated holding the LDAP objects and
attributes specified by our customer. An application was written to
generate test databases. Both TimesTen and Oracle 8.1.7 were
populated with 100,000 entry databases.
Load Times
Using "slapadd" followed by "slapindex", loading and indexing 100,000
entries in an LDBM database ran for 19 minutes 10 seconds.
Using a C++ application that used ODBC, loading 100,000 entries into
a disk based RDBMS took 17 minutes 53 seconds.
Using a C++ application that used ODBC, loading 100,000 entries into
TimesTen took 1 minute 40 seconds.
Search Times
The command, "timex timesearch.sh '(cn=fname210100*)'" was used to
test search times. This command issues the same LDAP search 4000
times over a single LDAP connection. Both the client and server
(slapd) were run on the same machine.
With TimesTen as the database, 4000 queries took 14.93 seconds, for a
rate of 267.9 per second.
With a disk based RDBMS as the database, 4000 queries took 77.79 seconds,
for a
rate of 51.42 per second.
With LDBM as the database, 1 query takes 76 seconds, or 0.076 per
second. Something is clearly broken.
2001-08-02 17:28:59 +00:00
Kurt Zeilenga
b22ad8cf60
Add some addl. logging
2001-08-02 03:37:20 +00:00
Pierangelo Masarati
8471ef7ed0
add global, per backend and per op_ndn time/size soft, hard and to-be-checked limits (exploited by back-ldbm); see slapd.conf(5) for details
2001-08-01 10:09:04 +00:00
Pierangelo Masarati
419a5ae8c9
fix typo; try to delete dn2id in case of late failure
2001-07-31 10:54:39 +00:00
Pierangelo Masarati
d8cb33ebe8
added acl check for added/removed rdn attrs
2001-07-31 10:02:19 +00:00
Kurt Zeilenga
50223981d9
Fix typo
2001-07-31 07:53:21 +00:00
Kurt Zeilenga
b09727567d
Clean up
2001-07-31 04:55:14 +00:00
Kurt Zeilenga
60c4893b93
Last changes should have been #ifdef
2001-07-31 04:30:11 +00:00
Kurt Zeilenga
0bcc892fdf
Fix basic operations
2001-07-31 04:24:29 +00:00
Kurt Zeilenga
ca7ba1a3fd
Fix slapadd crash when only a subset of databases have been initialized.
...
Likely should have a general solution to this.
2001-07-31 00:16:44 +00:00
Pierangelo Masarati
4362654eb6
fixes another assert in case of subtle error (schema failure while applying rdn changes)
2001-07-30 20:12:34 +00:00
Pierangelo Masarati
8edccd2554
fixes ITS#1261 (abort on modrdn with new dn already existing)
2001-07-30 14:54:02 +00:00
Pierangelo Masarati
6c81656a95
fixed some memory allocation nonsense
2001-07-29 17:21:28 +00:00
Pierangelo Masarati
c78416fdbd
exploits regex-based per op_ndn time/size limits
2001-07-28 11:25:00 +00:00
Pierangelo Masarati
4051547dfa
handle regex-based per op_ndn time/size limits
2001-07-28 11:24:22 +00:00
Kurt Zeilenga
279ef73485
Remove assert(0)
2001-07-28 01:06:06 +00:00
Stig Venaas
e3caeb2264
Removed duplicate code by replacing case-Exact/Ignore-Filter/Indexer and
...
case-Exact/Ignore-Substrings-Match/Filter/Indexer with common code for
the caseExact and caseIgnore cases
2001-07-27 22:54:43 +00:00
Stig Venaas
159fa1b26c
Making the approx multistring code default. Leaving the old code for now,
...
but can really be removed.
2001-07-26 22:33:28 +00:00
Kurt Zeilenga
d4df1af590
Misc cleanup of asserts
2001-07-26 01:08:00 +00:00
Stig Venaas
92ec77f6dc
Made approxMatch/Indexer/Filter all do Unicode cannonical normalization
...
followed by stripping of characters with 8th bit set. The normalization
is needed to make exact match imply approx match.
2001-07-25 21:22:55 +00:00
Kurt Zeilenga
e2b3914982
ITS#1274 fix
2001-07-24 19:54:04 +00:00
Kurt Zeilenga
d31da9dd01
Rework single-value check
2001-07-24 04:31:01 +00:00
Kurt Zeilenga
3e7e6bc6d5
Add an improved single value constraint check.
2001-07-24 03:25:17 +00:00
Pierangelo Masarati
589a5c7442
added extra check to suffix param of replica entry
2001-07-23 14:32:59 +00:00
Kurt Zeilenga
3a2f9e84ba
Fix typo
2001-07-22 03:25:45 +00:00
Kurt Zeilenga
0cdf9e3124
fix up UTF8MATCH
2001-07-22 02:45:21 +00:00
Kurt Zeilenga
f310142d2c
Use DN normalize
2001-07-22 00:32:58 +00:00
Stig Venaas
d326f96c32
We shouldn't need UTF8oncasecmp() and UTF8casechr() anymore, removing
...
them.
2001-07-22 00:31:04 +00:00
Kurt Zeilenga
7000f3e8cb
Zap old DN code
2001-07-21 23:45:04 +00:00
Kurt Zeilenga
978e417699
Make some additional UTF8 public
...
Remove lint
2001-07-21 23:13:04 +00:00
Kurt Zeilenga
da2f6f6805
Zap !UTF8MATCH code
2001-07-21 23:02:06 +00:00
Kurt Zeilenga
5cb6b1ce02
Back out DN changes, needs more work
2001-07-21 22:44:55 +00:00
Kurt Zeilenga
9207e19978
unifdef -DMULTIATTRVAL_RDN
2001-07-21 21:21:32 +00:00
Pierangelo Masarati
ece9bdb0eb
Added the suffix=<dn> parameter to replica config directive
...
to allow selective replication of subtrees of a single database.
Multiple occurrences allow the same replica to handle different
subtrees
2001-07-21 14:15:23 +00:00
Pierangelo Masarati
9ee9f1e0e1
Reworked again the caching in case of failure.
...
Now operations that set the status of an entry to CREATING (add.c, modrdn.c)
need to set it to COMMIT, by calling cache_entry_commit, before returning
the entry itself, otherwise the entry is removed from the cache
and its private data is freed.
Should fix crashes due to add failures as in ITS#1245
2001-07-21 10:53:06 +00:00
Pierangelo Masarati
aec4430d59
Reworked API of nextid; e_private gets destroyed separately from the entry in case add fails (should fix ITS#1245)
2001-07-20 09:50:28 +00:00
Stig Venaas
0e614ca0ec
Made caseExactMatch() use Unicode normalization
2001-07-17 20:09:37 +00:00
Stig Venaas
6c362d77ac
Made caseIgnoreSubstringsMatch and caseExactSubstringsMatch use proper
...
Unicode cannonical normalization
2001-07-17 19:35:23 +00:00
Randy Kunkee
82f3004a16
Prevent ldbm_sync from being called by ldbm_cache_close when the new
...
dbsync configuration is in use, which was preventing the performance
gains of this mode.
2001-07-16 23:21:36 +00:00
Stig Venaas
ea47735802
Fixed UTF8 encoding checks for substrings assertions
2001-07-16 22:48:52 +00:00
Randy Kunkee
f06021e335
Fix ITS#1239:
...
slapadd core-dumps when destroying db's env (Sleepycat 3.2.9) (ITS#1239)
Only call ldbm_shutdown_env if the database has been opened, ie. when
li->li_dbenv != NULL. Would appear any time a shutdown occurred and
not all LDBM databases were opened.
2001-07-16 22:16:24 +00:00
Stig Venaas
9b0e583576
Fixed bug in caseExactSubstringsIndexer() and caseIgnoreSubstringsIndexer().
...
UTF8 normalization must be done before we compute number of keys since
string length might increase.
2001-07-15 21:28:07 +00:00
Kurt Zeilenga
40d68d8374
Extend assertion value syntax checks to some other cases. Needs to
...
be applied to substrings assertions as well.
2001-07-15 17:25:49 +00:00
Kurt Zeilenga
c46014e27e
Fix typo in disallow logging
2001-07-15 17:25:00 +00:00
Stig Venaas
886a7575d0
Fixed segfault in caseIgnoreFilter when assertion value has bad UTF8 coding
2001-07-15 16:21:36 +00:00
Pierangelo Masarati
e864abf685
reworked slapd_mods_free into mimic to avoid extra obj linking into tools
2001-07-14 17:48:12 +00:00
Pierangelo Masarati
5fdba27288
This is the skeleton of back-monitor, the slapd monitoring backend.
...
The old monitoring stuff has been removed; the new backend is
enabled by using --enable-monitor at configure time and requires
database monitor
in slapd.conf to be activated. At present it implements a subset
of the old monitoring options, and it should be extendable to
a number of different subsystems. The search operation has been
implementd; it does not honor abandon or size/time limits, though.
The compare and the abandon operations are planned.
Copyright Pierangelo Masarati <ando@sys-net.it>; the code is provided
AS IS with NO GUARANTEE. It can be used and distributed under the
conditions stated by the OpenLDAP Public License.
2001-07-14 17:34:24 +00:00
Kurt Zeilenga
ca43453b95
Quick and dirty hack to add password modify replication.
2001-07-14 01:26:02 +00:00
Pierangelo Masarati
a453d7eacf
dn_validate/dn_normalize has been rewritten by
...
David A. Cooper <david.cooper@nist.gov> (ITS#1232)
according to draft-ietf-ldapbis-dn-05.txt
A copyright statement follows:
The functions normalize_unicode(), get_hexpair(), write_hex_pair(),
get_next_byte(), get_next_char(), get_ber_length(),
ber_parse_primitive_string(), ber_parse_string(), String_normalize(),
DirectoryString_normalize(), PrintableString_normalize(),
IA5String_normalize(), ber_parse_primitive_bitstring(),
ber_parse_bitstring(), getNext8bits(), bitString_normalize(), match_oid(),
match_key(), get_validated_av_in_dn(), get_validated_rdn_in_dn(),
and get_validated_dn() in this file were developed at the National Institute
of Standards and Technology by employees of the Federal Government in the
course of their official duties. Pursuant to title 17 Section 105 of the
United States Code the code in these functions is not subject to copyright
protection and is in the public domain. The copyright for all other code in
this file is as specified below.
2001-07-13 08:21:14 +00:00
Pierangelo Masarati
b0a60a5d3d
added function cache_find_entry_ndn2id that avoids an unnecessary call to dn_normalize; now dn2id calls this function, while the original function has been left as a wrapper
2001-07-11 08:41:42 +00:00
Pierangelo Masarati
27e5c484e6
reworked rdn_attrs to use ldap_explode_rdn; maybe we should remove escapes "\" from parts directly in ldap_explode_rdn
2001-07-10 18:19:22 +00:00
Gary Williams
453e69d636
fix bad debug message
2001-07-10 16:42:26 +00:00
Pierangelo Masarati
005823e032
Forbid empty ("") dn! (followup 5 to ITS#1173)
2001-07-09 10:35:43 +00:00
Pierangelo Masarati
2baa2f0f24
If add to "" is allowed, also modrdn should
2001-07-07 15:40:25 +00:00
Pierangelo Masarati
04c29fb3ea
dn2idl API changed for consistency with other dn2id* funcs
2001-07-07 14:49:42 +00:00
Pierangelo Masarati
a4dc886f02
moved some slap_mods_* functions into mods.c, so mods.o can be included
...
by slapd/tools/*; slap_mods_free is needed by ldbm_back_modrdn after
fixing ITS#1184 (at present -DMULTIATTRVAL_RDN is needed when compiling
back-ldbm/modrdn.c to trigger the compilation of new code).
2001-07-07 09:13:05 +00:00
Pierangelo Masarati
da9ea54700
fixed test on "" (empty) parent dn
2001-07-06 14:40:27 +00:00
Pierangelo Masarati
f4acf94c83
honors '+' rdn separator in adding/deleting attributes; needs -DMULTIATTRVAL_RDN. Please test
2001-07-06 12:24:34 +00:00
Pierangelo Masarati
bff5608926
protos and declarations for charray and rdn stuff
2001-07-06 12:23:22 +00:00
Pierangelo Masarati
38ce12a6f6
added rdn_attrs: parses a rdn and returns types and values in two arrays (honors '+' separator according to RFC 2253)
2001-07-06 12:22:01 +00:00
Pierangelo Masarati
016328a1da
added misc charray utilities
2001-07-06 12:20:26 +00:00
Kurt Zeilenga
38e8fefe17
Fix root dse checks
2001-07-06 02:14:47 +00:00
Kurt Zeilenga
9d6852d584
Correct X.500 reference
2001-07-06 02:11:17 +00:00
Pierangelo Masarati
901ce99dde
added a comment to rdn_validate: needs to be rewritten according to dn_validate
2001-07-05 20:33:15 +00:00
Pierangelo Masarati
cd74b62fd2
rdn check to prevent illegal rdns in modrdn (copied from dn_rdn) fixes ITS#1102
2001-07-05 08:40:40 +00:00
Pierangelo Masarati
5c0502add9
make slurpd honor include files in slapd.conf (note: the problem was signalled in ITS#131 :)
2001-07-04 20:03:49 +00:00
Pierangelo Masarati
5ad8efbb47
Used API signature from back-bdb; compiles and passes make test
2001-07-03 11:23:18 +00:00
Pierangelo Masarati
fdd45144ca
separate ID return value form return status in dn2id (back-ldbm/dn2id.c)
2001-07-02 19:42:27 +00:00
Randy Kunkee
a9097044ea
Remove global_backendsyncfreq code (code has been pushed down into back-ldbm).
2001-06-28 18:02:46 +00:00
Randy Kunkee
6a6fd6059d
Change to _TRACE instead of _ANY for sync daemon internals.
2001-06-28 09:27:01 +00:00
Randy Kunkee
0ef87764d7
Move backend_syncfreq code down into back-ldbm. Creates new configuration
...
for LDBM backends called "dbsync", which takes minimum of one argument up
to 3 args which are sync frequency, # of delays, and delay periods. See
man page update for "dbsync" configuration for more details.
2001-06-28 09:20:33 +00:00
Kurt Zeilenga
77f776dfd1
Another round of TLS updates to support secure referral chasing
2001-06-25 19:17:42 +00:00
Kurt Zeilenga
c4f5497ac6
move TLS ctx to lconn struct in prep for supporting TLS with referrals
...
need to rework cert check to use per lconn host name
2001-06-25 07:33:42 +00:00
Pierangelo Masarati
6364cea1d3
catch up with bi_db_sync stuff
2001-06-23 15:43:21 +00:00
Kurt Zeilenga
6dd25ba1e6
Plug idl leakage
2001-06-23 05:05:08 +00:00
Kurt Zeilenga
5aefca3be1
Add comments to three-value logic
2001-06-23 02:42:39 +00:00
Kurt Zeilenga
323a03aa90
Fix three value logic
2001-06-23 02:26:09 +00:00
Kurt Zeilenga
1229cfcc3f
Backout directory config option
2001-06-22 21:00:24 +00:00
Kurt Zeilenga
60f4554c76
plug substrings filter memory leak
2001-06-22 18:09:19 +00:00
Kurt Zeilenga
f98a1bab88
TLS initialization fix
2001-06-22 18:08:44 +00:00
Randy Kunkee
d492880870
Add sync_daemon to daemon.c, enabled by global configuration
...
backendsyncfreq <seconds>. Setting this automatically enables
dbnosync (because the synchronizer takes care of it).
2001-06-22 08:38:58 +00:00
Randy Kunkee
1656f2c774
Patches from Mark Whitehouse (with changes from myself) to make the
...
dbcachesize setting actually work for db-3.2.9.
2001-06-21 18:54:56 +00:00
Kurt Zeilenga
733d6296a6
Fix undefined filter parsing
2001-06-16 02:20:48 +00:00
Kurt Zeilenga
bee0650d9c
Work in progress codes. !UNTESTED!
2001-06-15 07:08:37 +00:00
Kurt Zeilenga
11b6d1f284
Misc updates for NT4
2001-06-15 04:16:55 +00:00
Kurt Zeilenga
e2edf459cb
Remove extraneous variable
2001-06-15 00:00:52 +00:00
Kurt Zeilenga
ff993c7ddb
Misc updates to password codes / docs
2001-06-13 05:40:24 +00:00
Kurt Zeilenga
8d4c20cd6d
Adding crypt(3) salt format (ITS#1202) from Jeff Costlow <j.costlow@f5.com>
...
with minor changes by committer
---
Copyright 2001, F5 Networks, Inc, All rights reserved.
This software is not subject to any license of F5 Networks.
This is free software; you can redistribute and use it
under the same terms as OpenLDAP itself.
2001-06-13 03:47:17 +00:00