diff options
author | Casey Schaufler <casey@schaufler-ca.com> | 2020-08-12 03:39:42 +0300 |
---|---|---|
committer | Casey Schaufler <cschaufler@localhost.localdomain> | 2020-09-12 01:31:30 +0300 |
commit | a2af031885071604452f03cd4e0eafdbd8014767 (patch) | |
tree | 92abd83bc42c16f9ec0f52da4184495ed0645cfc /security/smack/smack.h | |
parent | 36be81293dbe35aca487917c2d76941bf734d2ad (diff) | |
download | linux-a2af031885071604452f03cd4e0eafdbd8014767.tar.xz |
Smack: Set socket labels only once
Refactor the IP send checks so that the netlabel value
is set only when necessary, not on every send. Some functions
get renamed as the changes made the old name misleading.
Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
Diffstat (limited to 'security/smack/smack.h')
-rw-r--r-- | security/smack/smack.h | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/security/smack/smack.h b/security/smack/smack.h index e9e817d09785..c5d745a3ada8 100644 --- a/security/smack/smack.h +++ b/security/smack/smack.h @@ -100,7 +100,12 @@ struct socket_smack { struct smack_known *smk_out; /* outbound label */ struct smack_known *smk_in; /* inbound label */ struct smack_known *smk_packet; /* TCP peer label */ + int smk_state; /* netlabel socket states */ }; +#define SMK_NETLBL_UNSET 0 +#define SMK_NETLBL_UNLABELED 1 +#define SMK_NETLBL_LABELED 2 +#define SMK_NETLBL_REQSKB 3 /* * Inode smack data @@ -197,19 +202,6 @@ enum { #define SMACK_CIPSO_OPTION "-CIPSO" /* - * How communications on this socket are treated. - * Usually it's determined by the underlying netlabel code - * but there are certain cases, including single label hosts - * and potentially single label interfaces for which the - * treatment can not be known in advance. - * - * The possibility of additional labeling schemes being - * introduced in the future exists as well. - */ -#define SMACK_UNLABELED_SOCKET 0 -#define SMACK_CIPSO_SOCKET 1 - -/* * CIPSO defaults. */ #define SMACK_CIPSO_DOI_DEFAULT 3 /* Historical */ |