diff options
Diffstat (limited to 'security/selinux/exports.c')
| -rw-r--r-- | security/selinux/exports.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/security/selinux/exports.c b/security/selinux/exports.c index 64af2d3409ef..c73aeaa008e8 100644 --- a/security/selinux/exports.c +++ b/security/selinux/exports.c | |||
| @@ -39,9 +39,13 @@ EXPORT_SYMBOL_GPL(selinux_string_to_sid); | |||
| 39 | int selinux_secmark_relabel_packet_permission(u32 sid) | 39 | int selinux_secmark_relabel_packet_permission(u32 sid) |
| 40 | { | 40 | { |
| 41 | if (selinux_enabled) { | 41 | if (selinux_enabled) { |
| 42 | struct task_security_struct *tsec = current->security; | 42 | const struct task_security_struct *__tsec; |
| 43 | u32 tsid; | ||
| 43 | 44 | ||
| 44 | return avc_has_perm(tsec->sid, sid, SECCLASS_PACKET, | 45 | __tsec = current_security(); |
| 46 | tsid = __tsec->sid; | ||
| 47 | |||
| 48 | return avc_has_perm(tsid, sid, SECCLASS_PACKET, | ||
| 45 | PACKET__RELABELTO, NULL); | 49 | PACKET__RELABELTO, NULL); |
| 46 | } | 50 | } |
| 47 | return 0; | 51 | return 0; |
