diff --git a/servers/slapd/slapi/plugin.c b/servers/slapd/slapi/plugin.c index 8c7e1801ad..b4e99b9884 100644 --- a/servers/slapd/slapi/plugin.c +++ b/servers/slapd/slapi/plugin.c @@ -637,8 +637,11 @@ doPluginFNs( * failure (confirmed with SLAPI specification). */ if ( !SLAPI_PLUGIN_IS_POST_FN( funcType ) && rc != 0 ) { - /* make sure errors are negative */ - if ( rc > 0 ) rc = 0 - rc; + /* + * Plugins generally return negative error codes + * to indicate failure, although in the case of + * bind plugins they may return SLAPI_BIND_xxx + */ break; } } diff --git a/servers/slapd/slapi/slapi_ext.c b/servers/slapd/slapi/slapi_ext.c index 86e4e2a398..c73bec57b1 100644 --- a/servers/slapd/slapi/slapi_ext.c +++ b/servers/slapd/slapi/slapi_ext.c @@ -330,7 +330,7 @@ int slapi_x_clear_object_extensions(int objecttype, void *object) } for ( i = 0; i < registered_extensions.extensions[objecttype].count; i++ ) { - newExtension( eblock, objecttype, object, parent, i ); + newExtension( eblock, objecttype, object, parent, i ); } return 0;