lkml.org 
[lkml]   [2008]   [Jul]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] the loginuid field should be output in all AUDIT_CONFIG_CHANGE audit messages
> shouldn't these be using the "audit_get_loginuid(current)"  and if we
> are going to output loginuid we also should be outputting sessionid

Thanks for your detailed explanation.
I have made a new patch for outputing "loginuid" and "sessionid" by audit_get_loginuid(current) and audit_get_sessionid(current).
If there are some deficiencies, please give me your indication.

Signed-off-by: Zhang Xiliang <zhangxiliang@cn.fujitsu.com>
---
kernel/auditfilter.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/kernel/auditfilter.c b/kernel/auditfilter.c
index 98c50cc..b7d354e 100644
--- a/kernel/auditfilter.c
+++ b/kernel/auditfilter.c
@@ -1022,8 +1022,11 @@ static void audit_update_watch(struct audit_parent *parent,
struct audit_buffer *ab;
ab = audit_log_start(NULL, GFP_KERNEL,
AUDIT_CONFIG_CHANGE);
+ audit_log_format(ab, "auid=%u ses=%u",
+ audit_get_loginuid(current),
+ audit_get_sessionid(current));
audit_log_format(ab,
- "op=updated rules specifying path=");
+ " op=updated rules specifying path=");
audit_log_untrustedstring(ab, owatch->path);
audit_log_format(ab, " with dev=%u ino=%lu\n",
dev, ino);
@@ -1058,7 +1061,10 @@ static void audit_remove_parent_watches(struct audit_parent *parent)
struct audit_buffer *ab;
ab = audit_log_start(NULL, GFP_KERNEL,
AUDIT_CONFIG_CHANGE);
- audit_log_format(ab, "op=remove rule path=");
+ audit_log_format(ab, "auid=%u ses=%u",
+ audit_get_loginuid(current),
+ audit_get_sessionid(current));
+ audit_log_format(ab, " op=remove rule path=");
audit_log_untrustedstring(ab, w->path);
if (r->filterkey) {
audit_log_format(ab, " key=");
--
1.5.4.2

Regards
Zhang Xiliang

Eric Paris said the following on 2008-08-01 1:42:
> On Wed, 2008-07-30 at 11:40 +0800, zhangxiliang wrote:
>> In the audit message which type is "AUDIT_CONFIG_CHANGE", the output format should contain "auid" field.
>
> shouldn't these be using the "audit_get_loginuid(current)" and if we
> are going to output loginuid we also should be outputting sessionid
>
> -Eric
>
>> Signed-off-by: Zhang Xiliang <zhangxiliang@cn.fujitsu.com>
>> ---
>> kernel/auditfilter.c | 6 ++++--
>> 1 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/kernel/auditfilter.c b/kernel/auditfilter.c
>> index 98c50cc..8a184f5 100644
>> --- a/kernel/auditfilter.c
>> +++ b/kernel/auditfilter.c
>> @@ -1022,8 +1022,9 @@ static void audit_update_watch(struct audit_parent *parent,
>> struct audit_buffer *ab;
>> ab = audit_log_start(NULL, GFP_KERNEL,
>> AUDIT_CONFIG_CHANGE);
>> + audit_log_format(ab, "auid=%u", current->loginuid);
>> audit_log_format(ab,
>> - "op=updated rules specifying path=");
>> + " op=updated rules specifying path=");
>> audit_log_untrustedstring(ab, owatch->path);
>> audit_log_format(ab, " with dev=%u ino=%lu\n",
>> dev, ino);
>> @@ -1058,7 +1059,8 @@ static void audit_remove_parent_watches(struct audit_parent *parent)
>> struct audit_buffer *ab;
>> ab = audit_log_start(NULL, GFP_KERNEL,
>> AUDIT_CONFIG_CHANGE);
>> - audit_log_format(ab, "op=remove rule path=");
>> + audit_log_format(ab, "auid=%u", current->loginuid);
>> + audit_log_format(ab, " op=remove rule path=");
>> audit_log_untrustedstring(ab, w->path);
>> if (r->filterkey) {
>> audit_log_format(ab, " key=");
>> --
>> 1.5.4.2
>>
>>
>
>
>
>



\
 
 \ /
  Last update: 2008-08-01 03:51    [W:0.111 / U:4.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site