Commit Graph

58 Commits

Author SHA1 Message Date
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
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
6911e0022b Plug some leaks in SLAPI modifications handling 2005-08-06 14:58:25 +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
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
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
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
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
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
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
db3cc3ea22 Cleanup SLAPI headers 2005-07-22 09:35:27 +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
001754eb65 remove SLAPI cruft 2005-07-21 18:07:16 +00:00
Luke Howard
4832af0a50 Fix callback API for cast safety
Copy controls returned by backend to pblock before they go out of scope
2005-07-19 08:39:56 +00:00
Luke Howard
9e9c4b5397 Implement more of SLAPI 5.x - all SLAPI internal operations now take pblocks
as the canonical argument (wrappers for old APIs are provided)
2005-07-19 06:48:45 +00:00
Hallvard Furuseth
81ecb0b153 assert expects int. (int)<nonnull ptr/long> can be 0. Use assert(arg!=0/NULL). 2005-07-18 06:22:33 +00:00
Howard Chu
5acd0c574b Added authz-regexp, slapi plugin retrieval 2005-03-01 20:08:36 +00:00
Luke Howard
0cf2e8746e ITS#3556 (SLAPI does not work on 64-bit platforms) 2005-02-20 02:13:14 +00:00
Pierangelo Masarati
28b18b1869 minor cleanup 2005-01-09 21:25:12 +00:00
Kurt Zeilenga
dc0eacd40b Happy New Year! 2005-01-01 20:49:32 +00:00
Luke Howard
5f6996c8bf Add SLAPI_X_GROUP_TARGET_ENTRY so that group plugin can use target entry 2004-08-26 04:24:29 +00:00
Luke Howard
d45b89823f Support pre-operation and post-operations for backend_group()
This allows computed attribute plugins to also provide their attributes to
the ACL engine, for example
2004-08-25 15:20:19 +00:00
Howard Chu
1b98cd6262 Fix SLAPI_ADD_RESCONTROLS 2004-03-02 20:31:37 +00:00
Kurt Zeilenga
3c598e89fb Happy new year 2004-01-01 19:15:16 +00:00
Luke Howard
516fd0ff50 First round of SLAPI cleanups - use slapi_int_XXX for internal functions
(slapi_x_XXX is still reserved for exported functions that are not part
of the SLAPI specification)
2003-12-16 15:49:31 +00:00
Luke Howard
0bcddbc908 Don't leak SLAPI_RESCONTROLS when free'ing parameter block - these
are allocated by the plugin
2003-12-16 05:59:50 +00:00
Howard Chu
32752fb396 ITS#2836 add SLAPI_ADD_RESCONTROL support, fix SLAPI_RES_CONTROLS def 2003-12-04 00:52:03 +00:00
Kurt Zeilenga
62e6779e4c Cleanup rcsid comments 2003-11-29 18:03:43 +00:00
Kurt Zeilenga
f6b9ac1338 Update notices and acknowledgements 2003-11-26 16:05:06 +00:00
Kurt Zeilenga
35dc15ad66 Normalize to IBM's OPL notice (with permission). 2003-11-20 05:11:37 +00:00
Kurt Zeilenga
986aabae01 Update to basic notice. 2003-11-20 04:59:01 +00:00
Howard Chu
7fd47cedb7 ITS#2735 - plug memory leaks 2003-09-24 00:32:27 +00:00
Luke Howard
0edb270b9e Support for ACL plugins 2003-08-31 08:17:21 +00:00
Luke Howard
a08fb7de7e Expose SASL context to SLAPI plugins (SLAPI_X_CONN_SASL_CONTEXT)
Useful for plugins that may wish to collude with the SASL library to,
for example, retrieve a user's authorization data from a Kerberos ticket
for access control purposes
2003-08-30 17:29:14 +00:00
Luke Howard
d29ed4407c Always call modification postoperation plugins even if a
preoperation plugin has removed all modifications and
thus there are none to pass to the backend.

Accept SSF as a valid parameter block value.

Fix completely broken slapi_access_allowed()
2003-07-03 23:17:54 +00:00
Kurt Zeilenga
4b3545cd2e Update IBM copyrights
Kurt Zeilenga, IBM Corporation
2003-05-25 02:03:07 +00:00
Pierangelo Masarati
d1cc80694f reworking of slapi headers 2003-01-27 14:44:39 +00:00
Luke Howard
265261bf60 Added some OpenLDAP extensions for determining ldapi:// sock/peername
and whether connection is UDP
2003-01-22 14:41:51 +00:00
Luke Howard
faf8d43a6f First pass at replacing proprietary OpenLDAP virtual attribute API
(which existed briefly for a day!) with Sun ONE DS 5.x computed
attribute API
2003-01-22 13:06:46 +00:00