From: Steve Grubb <sgrubb@redhat.com>
To: Richard Guy Briggs <rgb@redhat.com>, Paul Moore <paul@paul-moore.com>
Cc: Linux-Audit Mailing List <linux-audit@redhat.com>,
LKML <linux-kernel@vger.kernel.org>,
linux-fsdevel@vger.kernel.org, linux-api@vger.kernel.org,
Eric Paris <eparis@parisplace.org>, Jan Kara <jack@suse.cz>,
Amir Goldstein <amir73il@gmail.com>
Subject: Re: [PATCH v6 3/3] fanotify,audit: Allow audit to use the full permission event response
Date: Fri, 27 Jan 2023 15:17:41 -0500 [thread overview]
Message-ID: <12154220.O9o76ZdvQC@x2> (raw)
In-Reply-To: <CAHC9VhRWDD6Tk6AEmgoobBkcVKRYbVOte7-F0TGJD2dRk7NKxw@mail.gmail.com>
On Friday, January 27, 2023 3:00:37 PM EST Paul Moore wrote:
> On Wed, Jan 25, 2023 at 5:06 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > On 2023-01-20 13:52, Paul Moore wrote:
> > > On Wed, Jan 18, 2023 at 1:34 PM Steve Grubb <sgrubb@redhat.com> wrote:
> > > > Hello Richard,
> > > >
> > > > I built a new kernel and tested this with old and new user space. It
> > > > is
> > > > working as advertised. The only thing I'm wondering about is why we
> > > > have 3F as the default value when no additional info was sent? Would
> > > > it be better to just make it 0?
> > >
> > > ...
> > >
> > > > On Tuesday, January 17, 2023 4:14:07 PM EST Richard Guy Briggs wrote:
> > > > > diff --git a/kernel/auditsc.c b/kernel/auditsc.c
> > > > > index d1fb821de104..3133c4175c15 100644
> > > > > --- a/kernel/auditsc.c
> > > > > +++ b/kernel/auditsc.c
> > > > > @@ -2877,10 +2878,19 @@ void __audit_log_kern_module(char *name)
> > > > >
> > > > > context->type = AUDIT_KERN_MODULE;
> > > > >
> > > > > }
> > > > >
> > > > > -void __audit_fanotify(u32 response)
> > > > > +void __audit_fanotify(u32 response, struct
> > > > > fanotify_response_info_audit_rule *friar) {
> > > > > - audit_log(audit_context(), GFP_KERNEL,
> > > > > - AUDIT_FANOTIFY, "resp=%u", response);
> > > > > + /* {subj,obj}_trust values are {0,1,2}: no,yes,unknown */
> > > > > + if (friar->hdr.type == FAN_RESPONSE_INFO_NONE) {
> > > > > + audit_log(audit_context(), GFP_KERNEL,
> > > > > AUDIT_FANOTIFY,
> > > > > + "resp=%u fan_type=%u fan_info=3F
> > > > > subj_trust=2
> > > >
> > > > obj_trust=2",
> > > >
> > > > > + response, FAN_RESPONSE_INFO_NONE);
> > > > > + return;
> > > > > + }
> > >
> > > (I'm working under the assumption that the "fan_info=3F" in the record
> > > above is what Steve was referring to in his comment.)
> > >
> > > I vaguely recall Richard commenting on this in the past, although
> > > maybe not ... my thought is that the "3F" is simply the hex encoded
> > > "?" character in ASCII ('man 7 ascii' is your friend). I suppose the
> > > question is what to do in the FAN_RESPONSE_INFO_NONE case.
> > >
> > > Historically when we had a missing field we would follow the "field=?"
> > > pattern, but I don't recall doing that for a field which was
> > > potentially hex encoded, is there an existing case where we use "?"
> > > for a field that is hex encoded? If so, we can swap out the "3F" for
> > > a more obvious "?".
> >
> > I was presuming encoding the zero: "30"
>
> I'm sorry, but you've lost me here.
>
> > > However, another option might be to simply output the current
> > > AUDIT_FANOTIFY record format in the FAN_RESPONSE_INFO_NONE case, e.g.
> > > only "resp=%u". This is a little against the usual guidance of
> > > "fields should not disappear from a record", but considering that
> > > userspace will always need to support the original resp-only format
> > > for compatibility reasons this may be an option.
> >
> > I don't have a strong opinion.
>
> I'm not sure I care too much either. I will admit that the "3F" seems
> to be bordering on the "bit too clever" side of things, but it's easy
> to argue it is in keeping with the general idea of using "?" to denote
> absent/unknown fields.
The translation will be from %X to %u. In that case, someone might think 63
has some meaning. It would be better to leave it as 0 so there's less to
explain.
-Steve
> As Steve was the one who raised the question in this latest round, and
> he knows his userspace tools the best, it seems wise to get his input
> on this.
WARNING: multiple messages have this Message-ID (diff)
From: Steve Grubb <sgrubb@redhat.com>
To: Richard Guy Briggs <rgb@redhat.com>, Paul Moore <paul@paul-moore.com>
Cc: Jan Kara <jack@suse.cz>,
linux-api@vger.kernel.org, Amir Goldstein <amir73il@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
Linux-Audit Mailing List <linux-audit@redhat.com>,
linux-fsdevel@vger.kernel.org, Eric Paris <eparis@parisplace.org>
Subject: Re: [PATCH v6 3/3] fanotify, audit: Allow audit to use the full permission event response
Date: Fri, 27 Jan 2023 15:17:41 -0500 [thread overview]
Message-ID: <12154220.O9o76ZdvQC@x2> (raw)
In-Reply-To: <CAHC9VhRWDD6Tk6AEmgoobBkcVKRYbVOte7-F0TGJD2dRk7NKxw@mail.gmail.com>
On Friday, January 27, 2023 3:00:37 PM EST Paul Moore wrote:
> On Wed, Jan 25, 2023 at 5:06 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > On 2023-01-20 13:52, Paul Moore wrote:
> > > On Wed, Jan 18, 2023 at 1:34 PM Steve Grubb <sgrubb@redhat.com> wrote:
> > > > Hello Richard,
> > > >
> > > > I built a new kernel and tested this with old and new user space. It
> > > > is
> > > > working as advertised. The only thing I'm wondering about is why we
> > > > have 3F as the default value when no additional info was sent? Would
> > > > it be better to just make it 0?
> > >
> > > ...
> > >
> > > > On Tuesday, January 17, 2023 4:14:07 PM EST Richard Guy Briggs wrote:
> > > > > diff --git a/kernel/auditsc.c b/kernel/auditsc.c
> > > > > index d1fb821de104..3133c4175c15 100644
> > > > > --- a/kernel/auditsc.c
> > > > > +++ b/kernel/auditsc.c
> > > > > @@ -2877,10 +2878,19 @@ void __audit_log_kern_module(char *name)
> > > > >
> > > > > context->type = AUDIT_KERN_MODULE;
> > > > >
> > > > > }
> > > > >
> > > > > -void __audit_fanotify(u32 response)
> > > > > +void __audit_fanotify(u32 response, struct
> > > > > fanotify_response_info_audit_rule *friar) {
> > > > > - audit_log(audit_context(), GFP_KERNEL,
> > > > > - AUDIT_FANOTIFY, "resp=%u", response);
> > > > > + /* {subj,obj}_trust values are {0,1,2}: no,yes,unknown */
> > > > > + if (friar->hdr.type == FAN_RESPONSE_INFO_NONE) {
> > > > > + audit_log(audit_context(), GFP_KERNEL,
> > > > > AUDIT_FANOTIFY,
> > > > > + "resp=%u fan_type=%u fan_info=3F
> > > > > subj_trust=2
> > > >
> > > > obj_trust=2",
> > > >
> > > > > + response, FAN_RESPONSE_INFO_NONE);
> > > > > + return;
> > > > > + }
> > >
> > > (I'm working under the assumption that the "fan_info=3F" in the record
> > > above is what Steve was referring to in his comment.)
> > >
> > > I vaguely recall Richard commenting on this in the past, although
> > > maybe not ... my thought is that the "3F" is simply the hex encoded
> > > "?" character in ASCII ('man 7 ascii' is your friend). I suppose the
> > > question is what to do in the FAN_RESPONSE_INFO_NONE case.
> > >
> > > Historically when we had a missing field we would follow the "field=?"
> > > pattern, but I don't recall doing that for a field which was
> > > potentially hex encoded, is there an existing case where we use "?"
> > > for a field that is hex encoded? If so, we can swap out the "3F" for
> > > a more obvious "?".
> >
> > I was presuming encoding the zero: "30"
>
> I'm sorry, but you've lost me here.
>
> > > However, another option might be to simply output the current
> > > AUDIT_FANOTIFY record format in the FAN_RESPONSE_INFO_NONE case, e.g.
> > > only "resp=%u". This is a little against the usual guidance of
> > > "fields should not disappear from a record", but considering that
> > > userspace will always need to support the original resp-only format
> > > for compatibility reasons this may be an option.
> >
> > I don't have a strong opinion.
>
> I'm not sure I care too much either. I will admit that the "3F" seems
> to be bordering on the "bit too clever" side of things, but it's easy
> to argue it is in keeping with the general idea of using "?" to denote
> absent/unknown fields.
The translation will be from %X to %u. In that case, someone might think 63
has some meaning. It would be better to leave it as 0 so there's less to
explain.
-Steve
> As Steve was the one who raised the question in this latest round, and
> he knows his userspace tools the best, it seems wise to get his input
> on this.
--
Linux-audit mailing list
Linux-audit@redhat.com
https://listman.redhat.com/mailman/listinfo/linux-audit
next prev parent reply other threads:[~2023-01-27 20:18 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-17 21:14 [PATCH v6 0/3] fanotify: Allow user space to pass back additional audit info Richard Guy Briggs
2023-01-17 21:14 ` Richard Guy Briggs
2023-01-17 21:14 ` [PATCH v6 1/3] fanotify: Ensure consistent variable type for response Richard Guy Briggs
2023-01-17 21:14 ` Richard Guy Briggs
2023-01-17 21:14 ` [PATCH v6 2/3] fanotify: define struct members to hold response decision context Richard Guy Briggs
2023-01-17 21:14 ` Richard Guy Briggs
2023-01-17 21:14 ` [PATCH v6 3/3] fanotify,audit: Allow audit to use the full permission event response Richard Guy Briggs
2023-01-17 21:14 ` [PATCH v6 3/3] fanotify, audit: " Richard Guy Briggs
2023-01-18 18:34 ` [PATCH v6 3/3] fanotify,audit: " Steve Grubb
2023-01-18 18:34 ` [PATCH v6 3/3] fanotify, audit: " Steve Grubb
2023-01-20 18:52 ` [PATCH v6 3/3] fanotify,audit: " Paul Moore
2023-01-20 18:52 ` Paul Moore
2023-01-25 22:06 ` Richard Guy Briggs
2023-01-25 22:06 ` Richard Guy Briggs
2023-01-27 20:00 ` Paul Moore
2023-01-27 20:00 ` Paul Moore
2023-01-27 20:17 ` Steve Grubb [this message]
2023-01-27 20:17 ` [PATCH v6 3/3] fanotify, audit: " Steve Grubb
2023-01-20 18:58 ` [PATCH v6 3/3] fanotify,audit: " Paul Moore
2023-01-20 18:58 ` Paul Moore
2023-01-25 22:11 ` Richard Guy Briggs
2023-01-25 22:11 ` Richard Guy Briggs
2023-01-27 20:02 ` Paul Moore
2023-01-27 20:02 ` Paul Moore
2023-01-18 18:24 ` [PATCH v6 0/3] fanotify: Allow user space to pass back additional audit info Jan Kara
2023-01-18 18:24 ` Jan Kara
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=12154220.O9o76ZdvQC@x2 \
--to=sgrubb@redhat.com \
--cc=amir73il@gmail.com \
--cc=eparis@parisplace.org \
--cc=jack@suse.cz \
--cc=linux-api@vger.kernel.org \
--cc=linux-audit@redhat.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=paul@paul-moore.com \
--cc=rgb@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.