Skip to content

Commit

Permalink
security/keys: add CONFIG_KEYS_COMPAT to Kconfig
Browse files Browse the repository at this point in the history
CONFIG_KEYS_COMPAT is defined in arch-specific Kconfigs and is missing for
several 64-bit architectures : mips, parisc, tile.

At the moment and for those architectures, calling in 32-bit userspace the
keyctl syscall would return an ENOSYS error.

This patch moves the CONFIG_KEYS_COMPAT option to security/keys/Kconfig, to
make sure the compatibility wrapper is registered by default for any 64-bit
architecture as long as it is configured with CONFIG_COMPAT.

[DH: Modified to remove arm64 compat enablement also as requested by Eric
 Biggers]

Signed-off-by: Bilal Amarni <bilal.amarni@gmail.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
cc: Eric Biggers <ebiggers3@gmail.com>
Signed-off-by: James Morris <james.l.morris@oracle.com>
Link: https://patchwork.kernel.org/patch/9565609/
(cherry picked from commit 47b2c3f)
Tested-by: Seunghun Han <kkamagui@gmail.com>
  • Loading branch information
bamarni authored and kkamagui committed Apr 12, 2018
1 parent 7d976fc commit 4370eff
Show file tree
Hide file tree
Showing 5 changed files with 4 additions and 15 deletions.
5 changes: 0 additions & 5 deletions arch/powerpc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1096,11 +1096,6 @@ source "arch/powerpc/Kconfig.debug"

source "security/Kconfig"

config KEYS_COMPAT
bool
depends on COMPAT && KEYS
default y

source "crypto/Kconfig"

config PPC_LIB_RHEAP
Expand Down
3 changes: 0 additions & 3 deletions arch/s390/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -350,9 +350,6 @@ config COMPAT
config SYSVIPC_COMPAT
def_bool y if COMPAT && SYSVIPC

config KEYS_COMPAT
def_bool y if COMPAT && KEYS

config SMP
def_bool y
prompt "Symmetric multi-processing support"
Expand Down
3 changes: 0 additions & 3 deletions arch/sparc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -544,9 +544,6 @@ config SYSVIPC_COMPAT
depends on COMPAT && SYSVIPC
default y

config KEYS_COMPAT
def_bool y if COMPAT && KEYS

endmenu

source "net/Kconfig"
Expand Down
4 changes: 0 additions & 4 deletions arch/x86/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2701,10 +2701,6 @@ config COMPAT_FOR_U64_ALIGNMENT
config SYSVIPC_COMPAT
def_bool y
depends on SYSVIPC

config KEYS_COMPAT
def_bool y
depends on KEYS
endif

endmenu
Expand Down
4 changes: 4 additions & 0 deletions security/keys/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ config KEYS

If you are unsure as to whether this is required, answer N.

config KEYS_COMPAT
def_bool y
depends on COMPAT && KEYS

config PERSISTENT_KEYRINGS
bool "Enable register of persistent per-UID keyrings"
depends on KEYS
Expand Down

0 comments on commit 4370eff

Please sign in to comment.