|
@@ -265,7 +265,7 @@ void audit_log_lost(const char *message)
|
|
}
|
|
}
|
|
|
|
|
|
static int audit_log_config_change(char *function_name, int new, int old,
|
|
static int audit_log_config_change(char *function_name, int new, int old,
|
|
- uid_t loginuid, u32 sessionid, u32 sid,
|
|
|
|
|
|
+ kuid_t loginuid, u32 sessionid, u32 sid,
|
|
int allow_changes)
|
|
int allow_changes)
|
|
{
|
|
{
|
|
struct audit_buffer *ab;
|
|
struct audit_buffer *ab;
|
|
@@ -273,7 +273,7 @@ static int audit_log_config_change(char *function_name, int new, int old,
|
|
|
|
|
|
ab = audit_log_start(NULL, GFP_KERNEL, AUDIT_CONFIG_CHANGE);
|
|
ab = audit_log_start(NULL, GFP_KERNEL, AUDIT_CONFIG_CHANGE);
|
|
audit_log_format(ab, "%s=%d old=%d auid=%u ses=%u", function_name, new,
|
|
audit_log_format(ab, "%s=%d old=%d auid=%u ses=%u", function_name, new,
|
|
- old, loginuid, sessionid);
|
|
|
|
|
|
+ old, from_kuid(&init_user_ns, loginuid), sessionid);
|
|
if (sid) {
|
|
if (sid) {
|
|
char *ctx = NULL;
|
|
char *ctx = NULL;
|
|
u32 len;
|
|
u32 len;
|
|
@@ -293,7 +293,7 @@ static int audit_log_config_change(char *function_name, int new, int old,
|
|
}
|
|
}
|
|
|
|
|
|
static int audit_do_config_change(char *function_name, int *to_change,
|
|
static int audit_do_config_change(char *function_name, int *to_change,
|
|
- int new, uid_t loginuid, u32 sessionid,
|
|
|
|
|
|
+ int new, kuid_t loginuid, u32 sessionid,
|
|
u32 sid)
|
|
u32 sid)
|
|
{
|
|
{
|
|
int allow_changes, rc = 0, old = *to_change;
|
|
int allow_changes, rc = 0, old = *to_change;
|
|
@@ -320,21 +320,21 @@ static int audit_do_config_change(char *function_name, int *to_change,
|
|
return rc;
|
|
return rc;
|
|
}
|
|
}
|
|
|
|
|
|
-static int audit_set_rate_limit(int limit, uid_t loginuid, u32 sessionid,
|
|
|
|
|
|
+static int audit_set_rate_limit(int limit, kuid_t loginuid, u32 sessionid,
|
|
u32 sid)
|
|
u32 sid)
|
|
{
|
|
{
|
|
return audit_do_config_change("audit_rate_limit", &audit_rate_limit,
|
|
return audit_do_config_change("audit_rate_limit", &audit_rate_limit,
|
|
limit, loginuid, sessionid, sid);
|
|
limit, loginuid, sessionid, sid);
|
|
}
|
|
}
|
|
|
|
|
|
-static int audit_set_backlog_limit(int limit, uid_t loginuid, u32 sessionid,
|
|
|
|
|
|
+static int audit_set_backlog_limit(int limit, kuid_t loginuid, u32 sessionid,
|
|
u32 sid)
|
|
u32 sid)
|
|
{
|
|
{
|
|
return audit_do_config_change("audit_backlog_limit", &audit_backlog_limit,
|
|
return audit_do_config_change("audit_backlog_limit", &audit_backlog_limit,
|
|
limit, loginuid, sessionid, sid);
|
|
limit, loginuid, sessionid, sid);
|
|
}
|
|
}
|
|
|
|
|
|
-static int audit_set_enabled(int state, uid_t loginuid, u32 sessionid, u32 sid)
|
|
|
|
|
|
+static int audit_set_enabled(int state, kuid_t loginuid, u32 sessionid, u32 sid)
|
|
{
|
|
{
|
|
int rc;
|
|
int rc;
|
|
if (state < AUDIT_OFF || state > AUDIT_LOCKED)
|
|
if (state < AUDIT_OFF || state > AUDIT_LOCKED)
|
|
@@ -349,7 +349,7 @@ static int audit_set_enabled(int state, uid_t loginuid, u32 sessionid, u32 sid)
|
|
return rc;
|
|
return rc;
|
|
}
|
|
}
|
|
|
|
|
|
-static int audit_set_failure(int state, uid_t loginuid, u32 sessionid, u32 sid)
|
|
|
|
|
|
+static int audit_set_failure(int state, kuid_t loginuid, u32 sessionid, u32 sid)
|
|
{
|
|
{
|
|
if (state != AUDIT_FAIL_SILENT
|
|
if (state != AUDIT_FAIL_SILENT
|
|
&& state != AUDIT_FAIL_PRINTK
|
|
&& state != AUDIT_FAIL_PRINTK
|
|
@@ -607,7 +607,7 @@ static int audit_netlink_ok(struct sk_buff *skb, u16 msg_type)
|
|
}
|
|
}
|
|
|
|
|
|
static int audit_log_common_recv_msg(struct audit_buffer **ab, u16 msg_type,
|
|
static int audit_log_common_recv_msg(struct audit_buffer **ab, u16 msg_type,
|
|
- uid_t auid, u32 ses, u32 sid)
|
|
|
|
|
|
+ kuid_t auid, u32 ses, u32 sid)
|
|
{
|
|
{
|
|
int rc = 0;
|
|
int rc = 0;
|
|
char *ctx = NULL;
|
|
char *ctx = NULL;
|
|
@@ -622,7 +622,7 @@ static int audit_log_common_recv_msg(struct audit_buffer **ab, u16 msg_type,
|
|
audit_log_format(*ab, "pid=%d uid=%u auid=%u ses=%u",
|
|
audit_log_format(*ab, "pid=%d uid=%u auid=%u ses=%u",
|
|
task_tgid_vnr(current),
|
|
task_tgid_vnr(current),
|
|
from_kuid(&init_user_ns, current_uid()),
|
|
from_kuid(&init_user_ns, current_uid()),
|
|
- auid, ses);
|
|
|
|
|
|
+ from_kuid(&init_user_ns, auid), ses);
|
|
if (sid) {
|
|
if (sid) {
|
|
rc = security_secid_to_secctx(sid, &ctx, &len);
|
|
rc = security_secid_to_secctx(sid, &ctx, &len);
|
|
if (rc)
|
|
if (rc)
|
|
@@ -644,7 +644,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
|
|
int err;
|
|
int err;
|
|
struct audit_buffer *ab;
|
|
struct audit_buffer *ab;
|
|
u16 msg_type = nlh->nlmsg_type;
|
|
u16 msg_type = nlh->nlmsg_type;
|
|
- uid_t loginuid; /* loginuid of sender */
|
|
|
|
|
|
+ kuid_t loginuid; /* loginuid of sender */
|
|
u32 sessionid;
|
|
u32 sessionid;
|
|
struct audit_sig_info *sig_data;
|
|
struct audit_sig_info *sig_data;
|
|
char *ctx = NULL;
|
|
char *ctx = NULL;
|