On Tuesday 15 March 2005 12:11 pm, Stephen Smalley wrote:
On Tue, 2005-03-15 at 11:51 -0600, Timothy R. Chavez wrote:
> Hmmm,
>
> I'm getting this now too:
>
> ./auditctl -w /audit/foo
>
> Error sending netlink packet (Connection refused)
Hmmm...that isn't what I get. With a patched 2.6.11 kernel and 0.6.7
auditctl, I see:
# ./auditctl -w /etc/shadow
Error sending netlink packet (Invalid argument)
Error sending rule to kernel
# ./auditctl -e 1
AUDIT_STATUS: enabled=1 flag=1 pid=0 rate_limit=0 backlog_limit=64
lost=0 backlog=0
I added printks to the kernel audit code, and I see them when I do the
auditctl -e, but not when I try the auditctl -w, so it seems like it
isn't even reaching audit_receive(), i.e. malformed netlink packet?
Yeah,
Haha. I forgot I compiled my kernel without audit enabled / audit syscall
enabled, to make sure it compiled.. so :) I'm just dumb and I'm not sure
there's a patch available to correct that.
Anyway, Invalid argument, hmmm. If it's not dying at audit_netlink_ok()
(which will return back an err = -EINVAL), then you should be getting to
audit_receive_watch() -- if you print out the values of
audit_watch->name/filterkey/path from audit_insert_watch, that might clue us
in. I have a feeling that someone how the memset(&watch, 0, sizeof(watch))
that was once in reset_vars() (in auditctl.c) has escaped some how and your
passing in a perm equal to some rediculous value (bigger then 15) because it
was not intialized to 0. Perhaps?
-tim