Eric wrote:
I would like to perform an action if and only if a database operation succeeds,
You can do this.
as well as revert that database operation if the action fails.
You can't do this.  That is, you can't revert another prior operation.
From the documentation I understand I should wrap both in a transaction and 
implement it through these parameters: SLAPI_PLUGIN_BE_POST_MODIFY_FN, 
SLAPI_PLUGIN_BE_POST_ADD_FN, SLAPI_PLUGIN_BE_POST_DELETE_FN.
It might be possible, but you'd have to hack the database code in order to get all of your operations into a single database transaction. BE plugins are called inside the database lock, so you can be assured that your code will be called with the database in a consistent state, but you can't use them to add other operations to the transaction.
However I'm not sure how to write that transaction. Is there a code sample? How 
should I configure the plugin -- nsslapd-plugintype: postperation doesn't seem 
to be the right type...


--
Fedora-directory-users mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-directory-users

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

--
Fedora-directory-users mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-directory-users

Reply via email to