On Thu, 2005-03-24 at 14:32 -0500, Stephen Smalley wrote:
Ok, I see what is happening. You call audit_attach_watch() from
d_move,
but you will never hit an audit_notify_watch(), hence no audit data upon
renames until a subsequent write to the existing file (which never
happens for /etc/shadow, as it is always re-created and renamed for each
transaction). So a natural question is what else should be calling
audit_notify_watch besides permission, exec_permission_lite, and
may_delete? d_move? may_create?
I suppose may_create() won't help you, as the child has a negative
dentry at that point so you have no inode. You will have an inode upon
the subsequent d_instantiate, but can't tell that you are dealing with a
"just created" inode versus an already existing one, so you won't know
that you need to notify of a create. So you are back to post-create
style hooks for calling audit_notify_watch for file creations, right?
--
Stephen Smalley <sds(a)tycho.nsa.gov>
National Security Agency