Commit Graph

379 Commits

Author SHA1 Message Date
Pierangelo Masarati
cbdaf8058f silence warning 2005-11-10 00:33:19 +00:00
Howard Chu
7dcb68f6fa Move CSN invocations to backends 2005-10-13 11:58:44 +00:00
Luke Howard
06600b9a1d fix slapi_sdn_isempty() logic 2005-08-26 10:46:56 +00:00
Hallvard Furuseth
45d60c21dd slapi_rdn_set_<sdn/rdn>: Void functions, so return nothing - not even void. 2005-08-26 02:26:50 +00:00
Luke Howard
a99305da41 Allow slapi_sdn_get_parent() to work if only normalized DN is available 2005-08-24 05:11:58 +00:00
Luke Howard
53a15b6820 Use be_match() instead of testing pointer equivalence 2005-08-18 04:12:54 +00:00
Luke Howard
d174f6720a Add read-only SLAPI_X_ADD_STRUCTURAL_CLASS pblock extension.
This is necessary to compensate for a regression in the SLAPI
implementation since it moved to an overlay: global add preop
plugins no longer have access to operational attributes,
because slap_mods_opattrs() is called by fe_op_add(), invoked
after the global SLAPI overlay.

(Some of our plugins need to the structural object class of the
to-be-added entry.)

I suppose an option would be to have the SLAPI overlay
optimistically call slap_mods_opattrs() (as long as this can be
called idempotently). If there are any other ideas let me know.
2005-08-17 07:25:27 +00:00
Luke Howard
3647cba131 ITS#3924
Also, fix slapi_dn_parent() crasher
2005-08-09 05:28:58 +00:00
Pierangelo Masarati
eae2233d0c don't leak in case of attribute not found 2005-08-09 03:39:12 +00:00
Luke Howard
2e36d49a73 Fix slapi_str2entry()/slapi_entry2str() allocation 2005-08-09 02:56:21 +00:00
Luke Howard
6461a5b7fd ITS#3924 2005-08-09 02:12:18 +00:00
Hallvard Furuseth
3142c03e5a Fix typo in previous commit (slapi_dn.c -> slapi_dn.lo) 2005-08-08 14:30:34 +00:00
Luke Howard
d463430295 Remove slapi_x_be_select() 2005-08-08 13:26:02 +00:00
Luke Howard
d96f3615b3 New file - slapi_dn.c 2005-08-08 13:25:24 +00:00
Luke Howard
7d557f0b0d Add Slapi_DN API 2005-08-08 13:24:18 +00:00
Luke Howard
3858ce0728 Add slapi_x_be_select() (to be replaced with slapi_be_select() when
we support Slapi_DN API)
2005-08-08 11:01:39 +00:00
Luke Howard
ef81368404 Don't return frontend as SLAPI_BACKEND, return actual backend instead
for compat with 2.2 plugins

Add a couple of backend SLAPI APIs
2005-08-08 09:33:02 +00:00
Luke Howard
0dd503a339 Add missing break statement in switch for SLAPI_SEARCH_ATTRS handler 2005-08-08 03:39:00 +00:00
Luke Howard
bba3f62bdc Always restore op->o_callback in SLAPI overlay - was spinning indefinitely 2005-08-07 03:13:57 +00:00
Luke Howard
6911e0022b Plug some leaks in SLAPI modifications handling 2005-08-06 14:58:25 +00:00
Luke Howard
b620a0e23c slapi/slapi_utils.c rev 1.172 removed the 'dup' parameter to
slapi_int_ldapmods2modifications(), but a 'dup' test remains in the
function body. Should always evaluate to TRUE.
2005-08-02 16:12:09 +00:00
Luke Howard
12d006d17d Add o_no_schema_check to operation structure
entry_schema_check() nows takes Operation instead of Backend as first
argument, allows it to check o_no_schema_check
2005-08-01 15:26:13 +00:00
Luke Howard
b1f478f161 Add slapi_dn_isbesuffix()
Fix slapi_dn_beparent() logic
Fix slapi_int_ldapmods2modifications() memory management, values
always need to be duplicated because of prettying in slap_mods_check()
2005-08-01 15:24:46 +00:00
Luke Howard
9a45f87ede Fix crasher in SLAPI_SEARCH_ATTRS handler
Add SLAPI_X_OPERATION_NO_SCHEMA_CHECK, SLAPI_X_MANAGEDIT
Fix modlist memory management
2005-08-01 15:24:02 +00:00
Luke Howard
65ac57bcac Plug leaks 2005-08-01 15:23:12 +00:00
Luke Howard
e70ab8655c Centralize SLAPI initialization into slapi_over_config() 2005-08-01 15:22:56 +00:00
Luke Howard
71d76fbeba slap_mods2entry() should not zero pointers into the modifications
list because checking is performed on these, rather than the entry.

slap_mods_free() now takes an extra argument indicating whether to
free the values or not.
2005-08-01 02:16:02 +00:00
Luke Howard
2b5cf310e6 Fix slapi_dn_beparent() behaviour (again) 2005-07-31 14:17:36 +00:00
Luke Howard
f0101fe5a7 Fix slapi_dn_beparent() logic 2005-07-31 06:45:39 +00:00
Luke Howard
040a0956ac Support SLAPI_X_OPERATION_DELETE_GLUE_PARENT 2005-07-31 05:42:51 +00:00
Luke Howard
1a2f3b5f2d Restore 2.2 SLAPI behaviour: target DN is not normalized
(actually, in 2.2 the target DN was not even prettied, but this
will do)
2005-07-31 05:23:56 +00:00
Luke Howard
6f0edd6c22 Call slap_mods2entry() in do_add(), so that global overlays (including
global SLAPI plugins) have access to op->ora_e.

Note that slap_mods2entry() is still called in fe_op_add() in order to
add any operational attributes.
2005-07-31 04:56:27 +00:00
Hallvard Furuseth
42a9661071 Initialize i (#changes) if no mods. Simplify (*modp) to lmod. 2005-07-30 23:46:07 +00:00
Luke Howard
f5afe4fdc7 Back out previous commit, appears not to match frontend - still
investigating
2005-07-30 08:30:36 +00:00
Luke Howard
98e49eca60 slapi_add_internal_pb() should not set op->ora_e, this is done by frontend 2005-07-30 08:19:26 +00:00
Luke Howard
60e17c1fff Don't instantiate SLAPI overlay in tool mode 2005-07-29 16:45:25 +00:00
Luke Howard
0582504893 Remember to NULL terminate control arrays - not sure how I managed to
make this error in multiple places
2005-07-28 09:56:55 +00:00
Luke Howard
f32bfe729f pblock_add_control() needs to call slapi_dup_control() 2005-07-28 09:48:44 +00:00
Luke Howard
f1e604a3ac Add slapi_int_dn_pretty()/slapi_int_dn_normalize() to support plugins
that override distinguishedName syntax and matching rule
2005-07-28 09:02:13 +00:00
Luke Howard
e4ff86c198 Add slapi_over_call_plugins() to ensure that global plugins are
invoked from slap_callbacks
2005-07-28 08:52:50 +00:00
Luke Howard
53ad7ffbff Add some debugging for failed plugin loads 2005-07-28 08:35:28 +00:00
Luke Howard
06f8a27771 Add pblock_be_call() for calling against actual backend 2005-07-27 16:29:32 +00:00
Luke Howard
2ffdbf7fef Fix memory management regressions in pblock modifications handling
Fix backwards logic in slapi_attr_types_equivalent()
2005-07-27 16:11:12 +00:00
Luke Howard
38f10e1f63 PBlock SlapReply needs to be a pointer into that supplied by caller
for overlay ops
2005-07-27 10:09:44 +00:00
Luke Howard
fe8c0553d3 Zero new superior before calling pblock_set_dn() 2005-07-27 09:26:42 +00:00
Hallvard Furuseth
f6f367fda6 pb in slapi_op_func was freed uninitialized if preop_type==0 && !internal_op 2005-07-27 09:13:30 +00:00
Luke Howard
197bc7bba9 s/op_compare/op_delete for LDAP_REQ_DELETE 2005-07-27 08:32:31 +00:00
Luke Howard
f87a07910f Support object extensions on internal SLAPI operations 2005-07-26 09:56:18 +00:00
Luke Howard
edc575888c slapi_op_type_to_string/slapi_op_get_type implementation 2005-07-26 04:34:23 +00:00
Luke Howard
88737d900a more cleanups 2005-07-25 13:17:15 +00:00
Luke Howard
48c951007a Harmonize Slapi_PBlock field nomenclature with rest of slapd 2005-07-25 11:13:15 +00:00
Luke Howard
ba8acc0c4a However, SLAPI_PLUGIN_VERSION is treated as an opaque type 2005-07-25 10:55:37 +00:00
Luke Howard
4836f2a5c5 Heads up: fix for SLAPI compliance: when calling slapi_pblock_set() with
an integer or long integer parameter, the value argument is a pointer to
the integeral value rather than the value itself.
2005-07-25 10:53:45 +00:00
Luke Howard
93540e339a Use SLAPI_LOG_OPERATION instead of private flag 2005-07-25 10:24:02 +00:00
Luke Howard
7a69353aac Even more SLAPI cleanups 2005-07-25 10:10:58 +00:00
Luke Howard
ddbbbe2348 more SLAPI cleanups 2005-07-25 10:06:03 +00:00
Luke Howard
1254419f16 More SLAPI cleanups 2005-07-25 09:54:13 +00:00
Luke Howard
bb04c4eb9d Fix pblock_delete_param(), this function never worked 2005-07-25 05:38:31 +00:00
Luke Howard
43ec05a45a use slapi_pblock_delete_param() 2005-07-25 05:03:09 +00:00
Luke Howard
8d48005d83 Careful not to disturb result codes 2005-07-25 04:43:07 +00:00
Luke Howard
4c513d05f7 plug leak 2005-07-25 04:39:58 +00:00
Luke Howard
eec4651913 Don't discard plugin status code 2005-07-25 04:31:16 +00:00
Luke Howard
48d1046a35 Make slapi_pblock directly overlaid on operation/connection/slapreply
structures

This removes a lot of copying. It's still a bit tricky where the internal
slapd data types are different to those exposed via SLAPI (eg. modifications)
or the internal values are not allocated on the heap (eg. controls). Some
copying is necessary in these cases.
2005-07-25 04:19:33 +00:00
Luke Howard
69230b2b9f more slapi cleanup 2005-07-23 13:21:28 +00:00
Luke Howard
35942c40ae update for new backend types 2005-07-23 13:14:13 +00:00
Luke Howard
92df34238a Cleanup of SLAPI internal operation code; use frontendDB rather than
duplicating frontend code, and o->o_callback rather than overriding
entry send clalbacks.

Support for SLAPI internal operation plugins.
2005-07-23 12:03:13 +00:00
Pierangelo Masarati
02870e815b renamed slapi_int_init_connection => slapi_int_connection_init for consistency; blind fix to ITS#3879 2005-07-22 16:57:20 +00:00
Luke Howard
1c6124019f remove redundant variable 2005-07-22 09:40:22 +00:00
Luke Howard
645923b273 Remove redundant ACL check in operational attributes overlay 2005-07-22 09:39:36 +00:00
Luke Howard
db3cc3ea22 Cleanup SLAPI headers 2005-07-22 09:35:27 +00:00
Luke Howard
a8980ffe9e Do not cache group evaluation if result is SLAP_CB_CONTINUE 2005-07-22 08:27:51 +00:00
Luke Howard
3e47ba5aef Fix bug in control merging (this probably still isn't right...) 2005-07-22 08:26:20 +00:00
Luke Howard
77ced839c0 Add caching to slapi_over_acl_group(); performance is terrible otherwise 2005-07-22 08:23:33 +00:00
Luke Howard
e6ed981ab9 Don't fail if no group plugins 2005-07-22 07:55:45 +00:00
Luke Howard
cb786e3330 Remove SLAPI pblock from operation structure 2005-07-22 07:54:17 +00:00
Luke Howard
0799e6a246 more cleanups 2005-07-22 06:46:07 +00:00
Luke Howard
95b0b26ad5 cleanup SLAPI overlay 2005-07-22 06:24:39 +00:00
Luke Howard
f5e67edb79 Fix dangling mutex in SLAPI bind preop handler 2005-07-22 06:16:03 +00:00
Luke Howard
0b631c0d2f fix error in previous commit 2005-07-22 05:38:32 +00:00
Luke Howard
44bb946436 More use of SLAPI accessor macros 2005-07-22 05:33:47 +00:00
Luke Howard
de10624dc3 Use accessor macros for SLAPI parameter blocks, should make it
easier to move into overlay private data
2005-07-22 05:26:15 +00:00
Luke Howard
c477ad064f Set SLAPI_REQUESTOR_ISROOT for internal operations 2005-07-22 05:14:42 +00:00
Luke Howard
6da978d5a0 Support for global ACL overlays, corresponding SLAPI support 2005-07-22 05:01:09 +00:00
Luke Howard
27adb43cbf Move backend_operational() implementation into frontend so global
overlays can be called
2005-07-22 03:40:06 +00:00
Luke Howard
a253fbdab4 terminate function array in slapi_int_get_plugins() 2005-07-22 03:24:09 +00:00
Luke Howard
acae40faa0 SLAPI plugins are no longer global; global SLAPI plugins should be
associated with the frontend
2005-07-22 03:17:36 +00:00
Luke Howard
24f0ee316e function rename 2005-07-22 02:51:55 +00:00
Luke Howard
746bb6033a cleanup 2005-07-21 19:02:56 +00:00
Luke Howard
4f851f3ddb Fix typo 2005-07-21 18:58:49 +00:00
Luke Howard
e2853c98f8 more cleanups 2005-07-21 18:17:57 +00:00
Luke Howard
f9633806da more cleanups 2005-07-21 18:16:32 +00:00
Luke Howard
001754eb65 remove SLAPI cruft 2005-07-21 18:07:16 +00:00
Luke Howard
ee770389d1 Fix some SLAPI bugs 2005-07-21 17:34:16 +00:00
Luke Howard
b8f86c4f28 Add support for post-result SLAPI plugins
Use overlay_op_walk again - needed to match 2.2 SLAPI behaviour
2005-07-21 17:15:44 +00:00
Luke Howard
ffe20229dc Move most of SLAPI frontend into overlay 2005-07-21 16:35:20 +00:00
Luke Howard
7129f9ef91 Factor out common code in SLAPI internal ops
Allow internal operation pblock to forward connection/operation parameters
2005-07-21 08:34:25 +00:00
Luke Howard
d6d202693d Fix order of statements in SLAPI internal modrdn implementation 2005-07-20 08:19:22 +00:00
Luke Howard
f12103f36b Fix regression in SLAPI ACL plugins owing to accidental commit
Support ACL_WADD/ACL_WDEL in SLAPI ACL evaluation/plugins
2005-07-20 08:00:24 +00:00
Luke Howard
25ae11ccd9 Unset intop callback parameters before they go out of scope 2005-07-20 04:24:02 +00:00
Luke Howard
c8ef1e1861 Always set sml_desc when converting from LDAPMods 2005-07-19 09:37:36 +00:00