hooks.c (8f0cfa52a1d4ffacd8e7de906d19662f5da58d58) hooks.c (70a5bb72b55e82fbfbf1e22cae6975fac58a1e2d)
1/*
2 * NSA Security-Enhanced Linux (SELinux) security module
3 *
4 * This file contains the SELinux hook function implementations.
5 *
6 * Authors: Stephen Smalley, <sds@epoch.ncsc.mil>
7 * Chris Vance, <cvance@nai.com>
8 * Wayne Salamon, <wsalamon@nai.com>

--- 5286 unchanged lines hidden (view full) ---

5295 appear to be created. */
5296 if (perm == 0)
5297 return 0;
5298
5299 return avc_has_perm(tsec->sid, ksec->sid,
5300 SECCLASS_KEY, perm, NULL);
5301}
5302
1/*
2 * NSA Security-Enhanced Linux (SELinux) security module
3 *
4 * This file contains the SELinux hook function implementations.
5 *
6 * Authors: Stephen Smalley, <sds@epoch.ncsc.mil>
7 * Chris Vance, <cvance@nai.com>
8 * Wayne Salamon, <wsalamon@nai.com>

--- 5286 unchanged lines hidden (view full) ---

5295 appear to be created. */
5296 if (perm == 0)
5297 return 0;
5298
5299 return avc_has_perm(tsec->sid, ksec->sid,
5300 SECCLASS_KEY, perm, NULL);
5301}
5302
5303static int selinux_key_getsecurity(struct key *key, char **_buffer)
5304{
5305 struct key_security_struct *ksec = key->security;
5306 char *context = NULL;
5307 unsigned len;
5308 int rc;
5309
5310 rc = security_sid_to_context(ksec->sid, &context, &len);
5311 if (!rc)
5312 rc = len;
5313 *_buffer = context;
5314 return rc;
5315}
5316
5303#endif
5304
5305static struct security_operations selinux_ops = {
5306 .name = "selinux",
5307
5308 .ptrace = selinux_ptrace,
5309 .capget = selinux_capget,
5310 .capset_check = selinux_capset_check,

--- 172 unchanged lines hidden (view full) ---

5483 .xfrm_state_pol_flow_match = selinux_xfrm_state_pol_flow_match,
5484 .xfrm_decode_session = selinux_xfrm_decode_session,
5485#endif
5486
5487#ifdef CONFIG_KEYS
5488 .key_alloc = selinux_key_alloc,
5489 .key_free = selinux_key_free,
5490 .key_permission = selinux_key_permission,
5317#endif
5318
5319static struct security_operations selinux_ops = {
5320 .name = "selinux",
5321
5322 .ptrace = selinux_ptrace,
5323 .capget = selinux_capget,
5324 .capset_check = selinux_capset_check,

--- 172 unchanged lines hidden (view full) ---

5497 .xfrm_state_pol_flow_match = selinux_xfrm_state_pol_flow_match,
5498 .xfrm_decode_session = selinux_xfrm_decode_session,
5499#endif
5500
5501#ifdef CONFIG_KEYS
5502 .key_alloc = selinux_key_alloc,
5503 .key_free = selinux_key_free,
5504 .key_permission = selinux_key_permission,
5505 .key_getsecurity = selinux_key_getsecurity,
5491#endif
5492
5493#ifdef CONFIG_AUDIT
5494 .audit_rule_init = selinux_audit_rule_init,
5495 .audit_rule_known = selinux_audit_rule_known,
5496 .audit_rule_match = selinux_audit_rule_match,
5497 .audit_rule_free = selinux_audit_rule_free,
5498#endif

--- 216 unchanged lines hidden ---
5506#endif
5507
5508#ifdef CONFIG_AUDIT
5509 .audit_rule_init = selinux_audit_rule_init,
5510 .audit_rule_known = selinux_audit_rule_known,
5511 .audit_rule_match = selinux_audit_rule_match,
5512 .audit_rule_free = selinux_audit_rule_free,
5513#endif

--- 216 unchanged lines hidden ---