diff options
| -rw-r--r-- | include/linux/security.h | 20 | ||||
| -rw-r--r-- | security/capability.c | 8 | ||||
| -rw-r--r-- | security/keys/keyctl.c | 7 | ||||
| -rw-r--r-- | security/security.c | 7 |
4 files changed, 0 insertions, 42 deletions
diff --git a/include/linux/security.h b/include/linux/security.h index 73505f0c9b75..ac536eedec90 100644 --- a/include/linux/security.h +++ b/include/linux/security.h | |||
| @@ -1067,13 +1067,6 @@ static inline void security_free_mnt_opts(struct security_mnt_opts *opts) | |||
| 1067 | * Return the length of the string (including terminating NUL) or -ve if | 1067 | * Return the length of the string (including terminating NUL) or -ve if |
| 1068 | * an error. | 1068 | * an error. |
| 1069 | * May also return 0 (and a NULL buffer pointer) if there is no label. | 1069 | * May also return 0 (and a NULL buffer pointer) if there is no label. |
| 1070 | * @key_session_to_parent: | ||
| 1071 | * Forcibly assign the session keyring from a process to its parent | ||
| 1072 | * process. | ||
| 1073 | * @cred: Pointer to process's credentials | ||
| 1074 | * @parent_cred: Pointer to parent process's credentials | ||
| 1075 | * @keyring: Proposed new session keyring | ||
| 1076 | * Return 0 if permission is granted, -ve error otherwise. | ||
| 1077 | * | 1070 | * |
| 1078 | * Security hooks affecting all System V IPC operations. | 1071 | * Security hooks affecting all System V IPC operations. |
| 1079 | * | 1072 | * |
| @@ -1642,9 +1635,6 @@ struct security_operations { | |||
| 1642 | const struct cred *cred, | 1635 | const struct cred *cred, |
| 1643 | key_perm_t perm); | 1636 | key_perm_t perm); |
| 1644 | int (*key_getsecurity)(struct key *key, char **_buffer); | 1637 | int (*key_getsecurity)(struct key *key, char **_buffer); |
| 1645 | int (*key_session_to_parent)(const struct cred *cred, | ||
| 1646 | const struct cred *parent_cred, | ||
| 1647 | struct key *key); | ||
| 1648 | #endif /* CONFIG_KEYS */ | 1638 | #endif /* CONFIG_KEYS */ |
| 1649 | 1639 | ||
| 1650 | #ifdef CONFIG_AUDIT | 1640 | #ifdef CONFIG_AUDIT |
| @@ -2918,9 +2908,6 @@ void security_key_free(struct key *key); | |||
| 2918 | int security_key_permission(key_ref_t key_ref, | 2908 | int security_key_permission(key_ref_t key_ref, |
| 2919 | const struct cred *cred, key_perm_t perm); | 2909 | const struct cred *cred, key_perm_t perm); |
| 2920 | int security_key_getsecurity(struct key *key, char **_buffer); | 2910 | int security_key_getsecurity(struct key *key, char **_buffer); |
| 2921 | int security_key_session_to_parent(const struct cred *cred, | ||
| 2922 | const struct cred *parent_cred, | ||
| 2923 | struct key *key); | ||
| 2924 | 2911 | ||
| 2925 | #else | 2912 | #else |
| 2926 | 2913 | ||
| @@ -2948,13 +2935,6 @@ static inline int security_key_getsecurity(struct key *key, char **_buffer) | |||
| 2948 | return 0; | 2935 | return 0; |
| 2949 | } | 2936 | } |
| 2950 | 2937 | ||
| 2951 | static inline int security_key_session_to_parent(const struct cred *cred, | ||
| 2952 | const struct cred *parent_cred, | ||
| 2953 | struct key *key) | ||
| 2954 | { | ||
| 2955 | return 0; | ||
| 2956 | } | ||
| 2957 | |||
| 2958 | #endif | 2938 | #endif |
| 2959 | #endif /* CONFIG_KEYS */ | 2939 | #endif /* CONFIG_KEYS */ |
| 2960 | 2940 | ||
diff --git a/security/capability.c b/security/capability.c index 247c04edd468..8cc2b8f3b166 100644 --- a/security/capability.c +++ b/security/capability.c | |||
| @@ -826,13 +826,6 @@ static int cap_key_getsecurity(struct key *key, char **_buffer) | |||
| 826 | return 0; | 826 | return 0; |
| 827 | } | 827 | } |
| 828 | 828 | ||
| 829 | static int cap_key_session_to_parent(const struct cred *cred, | ||
| 830 | const struct cred *parent_cred, | ||
| 831 | struct key *key) | ||
| 832 | { | ||
| 833 | return 0; | ||
| 834 | } | ||
| 835 | |||
| 836 | #endif /* CONFIG_KEYS */ | 829 | #endif /* CONFIG_KEYS */ |
| 837 | 830 | ||
| 838 | #ifdef CONFIG_AUDIT | 831 | #ifdef CONFIG_AUDIT |
| @@ -1053,7 +1046,6 @@ void security_fixup_ops(struct security_operations *ops) | |||
| 1053 | set_to_cap_if_null(ops, key_free); | 1046 | set_to_cap_if_null(ops, key_free); |
| 1054 | set_to_cap_if_null(ops, key_permission); | 1047 | set_to_cap_if_null(ops, key_permission); |
| 1055 | set_to_cap_if_null(ops, key_getsecurity); | 1048 | set_to_cap_if_null(ops, key_getsecurity); |
| 1056 | set_to_cap_if_null(ops, key_session_to_parent); | ||
| 1057 | #endif /* CONFIG_KEYS */ | 1049 | #endif /* CONFIG_KEYS */ |
| 1058 | #ifdef CONFIG_AUDIT | 1050 | #ifdef CONFIG_AUDIT |
| 1059 | set_to_cap_if_null(ops, audit_rule_init); | 1051 | set_to_cap_if_null(ops, audit_rule_init); |
diff --git a/security/keys/keyctl.c b/security/keys/keyctl.c index e9c2e7c584d9..34b302b40dea 100644 --- a/security/keys/keyctl.c +++ b/security/keys/keyctl.c | |||
| @@ -1295,13 +1295,6 @@ long keyctl_session_to_parent(void) | |||
| 1295 | mycred->tgcred->session_keyring->uid != mycred->euid) | 1295 | mycred->tgcred->session_keyring->uid != mycred->euid) |
| 1296 | goto not_permitted; | 1296 | goto not_permitted; |
| 1297 | 1297 | ||
| 1298 | /* the LSM must permit the replacement of the parent's keyring with the | ||
| 1299 | * keyring from this process */ | ||
| 1300 | ret = security_key_session_to_parent(mycred, pcred, | ||
| 1301 | key_ref_to_ptr(keyring_r)); | ||
| 1302 | if (ret < 0) | ||
| 1303 | goto not_permitted; | ||
| 1304 | |||
| 1305 | /* if there's an already pending keyring replacement, then we replace | 1298 | /* if there's an already pending keyring replacement, then we replace |
| 1306 | * that */ | 1299 | * that */ |
| 1307 | oldcred = parent->replacement_session_keyring; | 1300 | oldcred = parent->replacement_session_keyring; |
diff --git a/security/security.c b/security/security.c index 5cf9ca6890f6..490f77753b2d 100644 --- a/security/security.c +++ b/security/security.c | |||
| @@ -1262,13 +1262,6 @@ int security_key_getsecurity(struct key *key, char **_buffer) | |||
| 1262 | return security_ops->key_getsecurity(key, _buffer); | 1262 | return security_ops->key_getsecurity(key, _buffer); |
| 1263 | } | 1263 | } |
| 1264 | 1264 | ||
| 1265 | int security_key_session_to_parent(const struct cred *cred, | ||
| 1266 | const struct cred *parent_cred, | ||
| 1267 | struct key *key) | ||
| 1268 | { | ||
| 1269 | return security_ops->key_session_to_parent(cred, parent_cred, key); | ||
| 1270 | } | ||
| 1271 | |||
| 1272 | #endif /* CONFIG_KEYS */ | 1265 | #endif /* CONFIG_KEYS */ |
| 1273 | 1266 | ||
| 1274 | #ifdef CONFIG_AUDIT | 1267 | #ifdef CONFIG_AUDIT |
