#495 internalModifiersname not updated by DNA plugin
Closed: Fixed None Opened 7 years ago by mreynolds.

The DNA plugin makes its updates directly to the entry in be_txn_pre_op phase. Since this is directly modifying the entry, and not calling op_shared_modify/modify_internal, the last mod attrs do not get updated.


This is not just present in be_txn_pre_op, it also occurs in dna_pre_op_add() and dna_pre_op_modify.

There is a change in behavior of the nsslapd-plugin-track-binddn feature. Previously, if you just added or created a entry, without plugin interference, the internalModifiersname would be the original bind dn. This has been changed to always show the actual plugin that did the add/mod - not the bind dn. So if a plugin did not interfere, then the internalCreatorsname/internalModifersname would be the "database" plugin:

cn=ldbm database,cn=plugins,cn=config

Sending fix out for review...

git merge ticket302
Updating dbc0a95..2bef7e7
Fast-forward
ldap/servers/plugins/dna/dna.c | 4 ++
ldap/servers/slapd/add.c | 56 ++++++++++++++++++++++++++++++++---
ldap/servers/slapd/opshared.c | 8 ++++-
ldap/servers/slapd/proto-slap.h | 1 -
ldap/servers/slapd/slapi-private.h | 6 ++++
5 files changed, 67 insertions(+), 8 deletions(-)

[mareynol@localhost ds]$ git push origin master
Counting objects: 23, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 2.20 KiB, done.
Total 12 (delta 10), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/ds.git
dbc0a95..2bef7e7 master -> master

plugin_get_dn will allocate memory, so you have to free it

For future reference - you don't have to revert the whole commit - just commit another patch that addresses the issue, and reference that commit in the ticket

git merge ticket495
Updating 680cd14..f33e73f
Fast-forward
ldap/servers/plugins/dna/dna.c | 4 ++
ldap/servers/slapd/add.c | 63 +++++++++++++++++++++++++++++++----
ldap/servers/slapd/configdse.c | 1 +
ldap/servers/slapd/opshared.c | 15 ++++++---
ldap/servers/slapd/proto-slap.h | 1 -
ldap/servers/slapd/slapi-private.h | 6 +++
6 files changed, 76 insertions(+), 14 deletions(-)

[mareynol@localhost ds]$ git push origin master
Counting objects: 25, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (13/13), done.
Writing objects: 100% (13/13), 2.38 KiB, done.
Total 13 (delta 11), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/ds.git
680cd14..f33e73f master -> master

Although this was checked into 1.2.11, 1.2.11 was missing a change that is causing problems with the values for internalModifiersname and internalCreatorsname.

git merge internalMod
Updating 3b177a7..d47fd4b
Fast-forward
ldap/servers/slapd/pblock.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)

[mareynol@localhost ds]$ git push origin 389-ds-base-1.2.11
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 863 bytes, done.
Total 6 (delta 4), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/ds.git
3b177a7..d47fd4b 389-ds-base-1.2.11 -> 389-ds-base-1.2.11

Linked to Bugzilla bug: https://bugzilla.redhat.com/show_bug.cgi?id=889083 (''Red Hat Enterprise Linux 6'')

Metadata Update from @rmeggins:
- Issue assigned to mreynolds
- Issue set to the milestone: 1.2.11.17

3 years ago

Login to comment on this ticket.

Metadata