Skip to content

Commit 05a344e

Browse files
cschauflerpcmoore
authored andcommitted
netlabel,smack: use lsm_prop for audit data
Replace the secid in the netlbl_audit structure with an lsm_prop. Remove scaffolding that was required when the value was a secid. Signed-off-by: Casey Schaufler <casey@schaufler-ca.com> [PM: fix the subject line] Signed-off-by: Paul Moore <paul@paul-moore.com>
1 parent 13d826e commit 05a344e

File tree

5 files changed

+7
-17
lines changed

5 files changed

+7
-17
lines changed

include/net/netlabel.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ struct calipso_doi;
9797

9898
/* NetLabel audit information */
9999
struct netlbl_audit {
100-
u32 secid;
100+
struct lsm_prop prop;
101101
kuid_t loginuid;
102102
unsigned int sessionid;
103103
};

net/netlabel/netlabel_unlabeled.c

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1534,14 +1534,11 @@ int __init netlbl_unlabel_defconf(void)
15341534
int ret_val;
15351535
struct netlbl_dom_map *entry;
15361536
struct netlbl_audit audit_info;
1537-
struct lsm_prop prop;
15381537

15391538
/* Only the kernel is allowed to call this function and the only time
15401539
* it is called is at bootup before the audit subsystem is reporting
15411540
* messages so don't worry to much about these values. */
1542-
security_current_getlsmprop_subj(&prop);
1543-
/* scaffolding */
1544-
audit_info.secid = prop.scaffold.secid;
1541+
security_current_getlsmprop_subj(&audit_info.prop);
15451542
audit_info.loginuid = GLOBAL_ROOT_UID;
15461543
audit_info.sessionid = 0;
15471544

net/netlabel/netlabel_user.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,9 @@ struct audit_buffer *netlbl_audit_start_common(int type,
9898
from_kuid(&init_user_ns, audit_info->loginuid),
9999
audit_info->sessionid);
100100

101-
if (audit_info->secid != 0 &&
102-
security_secid_to_secctx(audit_info->secid,
103-
&secctx,
104-
&secctx_len) == 0) {
101+
if (lsmprop_is_set(&audit_info->prop) &&
102+
security_lsmprop_to_secctx(&audit_info->prop, &secctx,
103+
&secctx_len) == 0) {
105104
audit_log_format(audit_buf, " subj=%s", secctx);
106105
security_release_secctx(secctx, secctx_len);
107106
}

net/netlabel/netlabel_user.h

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,7 @@
3232
*/
3333
static inline void netlbl_netlink_auditinfo(struct netlbl_audit *audit_info)
3434
{
35-
struct lsm_prop prop;
36-
37-
security_current_getlsmprop_subj(&prop);
38-
/* scaffolding */
39-
audit_info->secid = prop.scaffold.secid;
35+
security_current_getlsmprop_subj(&audit_info->prop);
4036
audit_info->loginuid = audit_get_loginuid(current);
4137
audit_info->sessionid = audit_get_sessionid(current);
4238
}

security/smack/smackfs.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -182,11 +182,9 @@ static inline void smack_catset_bit(unsigned int cat, char *catsetp)
182182
*/
183183
static void smk_netlabel_audit_set(struct netlbl_audit *nap)
184184
{
185-
struct smack_known *skp = smk_of_current();
186-
187185
nap->loginuid = audit_get_loginuid(current);
188186
nap->sessionid = audit_get_sessionid(current);
189-
nap->secid = skp->smk_secid;
187+
nap->prop.smack.skp = smk_of_current();
190188
}
191189

192190
/*

0 commit comments

Comments
 (0)