LSM: wireup Linux Security Module syscalls
authorCasey Schaufler <casey@schaufler-ca.com>
Tue, 12 Sep 2023 20:56:51 +0000 (13:56 -0700)
committerPaul Moore <paul@paul-moore.com>
Mon, 13 Nov 2023 03:54:42 +0000 (22:54 -0500)
Wireup lsm_get_self_attr, lsm_set_self_attr and lsm_list_modules
system calls.

Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Cc: linux-api@vger.kernel.org
Reviewed-by: Mickaël Salaün <mic@digikod.net>
[PM: forward ported beyond v6.6 due merge window changes]
Signed-off-by: Paul Moore <paul@paul-moore.com>
22 files changed:
arch/alpha/kernel/syscalls/syscall.tbl
arch/arm/tools/syscall.tbl
arch/arm64/include/asm/unistd.h
arch/arm64/include/asm/unistd32.h
arch/m68k/kernel/syscalls/syscall.tbl
arch/microblaze/kernel/syscalls/syscall.tbl
arch/mips/kernel/syscalls/syscall_n32.tbl
arch/mips/kernel/syscalls/syscall_n64.tbl
arch/mips/kernel/syscalls/syscall_o32.tbl
arch/parisc/kernel/syscalls/syscall.tbl
arch/powerpc/kernel/syscalls/syscall.tbl
arch/s390/kernel/syscalls/syscall.tbl
arch/sh/kernel/syscalls/syscall.tbl
arch/sparc/kernel/syscalls/syscall.tbl
arch/x86/entry/syscalls/syscall_32.tbl
arch/x86/entry/syscalls/syscall_64.tbl
arch/xtensa/kernel/syscalls/syscall.tbl
include/uapi/asm-generic/unistd.h
tools/perf/arch/mips/entry/syscalls/syscall_n64.tbl
tools/perf/arch/powerpc/entry/syscalls/syscall.tbl
tools/perf/arch/s390/entry/syscalls/syscall.tbl
tools/perf/arch/x86/entry/syscalls/syscall_64.tbl

index 18c842ca6c32c1eee80d8bb4c55b2b9d9e9cc8a3..b04af0c9fcbcce20450cac97fe94ade417b94f71 100644 (file)
 564    common  futex_wake                      sys_futex_wake
 565    common  futex_wait                      sys_futex_wait
 566    common  futex_requeue                   sys_futex_requeue
+567    common  lsm_get_self_attr               sys_lsm_get_self_attr
+568    common  lsm_set_self_attr               sys_lsm_set_self_attr
+569    common  lsm_list_modules                sys_lsm_list_modules
index 584f9528c99644d1b10511d06acd03a72d7d4637..43313beefae778b5935bfa3a3107e51bd50544b2 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 531effca5f1fc0e83d187bbf1c35749bcc740683..abe10a833fcddded2b54bbd2c875b4ddc7646387 100644 (file)
@@ -39,7 +39,7 @@
 #define __ARM_NR_compat_set_tls                (__ARM_NR_COMPAT_BASE + 5)
 #define __ARM_NR_COMPAT_END            (__ARM_NR_COMPAT_BASE + 0x800)
 
-#define __NR_compat_syscalls           457
+#define __NR_compat_syscalls           460
 #endif
 
 #define __ARCH_WANT_SYS_CLONE
index 9f7c1bf99526797367f4197ab6a434abaf02eb73..ab1a7c2b6653e1707c0544e543c9277cbeeb4871 100644 (file)
@@ -919,6 +919,12 @@ __SYSCALL(__NR_futex_wake, sys_futex_wake)
 __SYSCALL(__NR_futex_wait, sys_futex_wait)
 #define __NR_futex_requeue 456
 __SYSCALL(__NR_futex_requeue, sys_futex_requeue)
+#define __NR_lsm_get_self_attr 457
+__SYSCALL(__NR_lsm_get_self_attr, sys_lsm_get_self_attr)
+#define __NR_lsm_set_self_attr 458
+__SYSCALL(__NR_lsm_set_self_attr, sys_lsm_set_self_attr)
+#define __NR_lsm_list_modules 459
+__SYSCALL(__NR_lsm_list_modules, sys_lsm_list_modules)
 
 /*
  * Please add new compat syscalls above this comment and update
index 7a4b780e82cbdc9f4bec452159ce95537c5997c5..90629ffc6732291198f0b07a7a6d0d4c2ef88c1a 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 5b6a0b02b7de0ad46704c99d8c533961df19a0ba..c395dece73b4d198eab437007abe091cc9860b13 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index a842b41c8e064cf76e7e7a6b49a448b85885721a..4a876c4e77d6af892fcb9c5e33fa39bf90a1378a 100644 (file)
 454    n32     futex_wake                      sys_futex_wake
 455    n32     futex_wait                      sys_futex_wait
 456    n32     futex_requeue                   sys_futex_requeue
+457    n32     lsm_get_self_attr               sys_lsm_get_self_attr
+458    n32     lsm_set_self_attr               sys_lsm_set_self_attr
+459    n32     lsm_list_modules                sys_lsm_list_modules
index 116ff501bf9263ac82a184e4fa408205e52292dd..b74c8571f063257169e441e1361bf40fecc6bb40 100644 (file)
 454    n64     futex_wake                      sys_futex_wake
 455    n64     futex_wait                      sys_futex_wait
 456    n64     futex_requeue                   sys_futex_requeue
+457    n64     lsm_get_self_attr               sys_lsm_get_self_attr
+458    n64     lsm_set_self_attr               sys_lsm_set_self_attr
+459    n64     lsm_list_modules                sys_lsm_list_modules
index 525cc54bc63bf729cd82f82b52e8f8b8683bc7b6..bf41906e1f688818a0501a2e3d062153a550ae9b 100644 (file)
 454    o32     futex_wake                      sys_futex_wake
 455    o32     futex_wait                      sys_futex_wait
 456    o32     futex_requeue                   sys_futex_requeue
+457    o32     lsm_get_self_attr               sys_lsm_get_self_attr
+458    032     lsm_set_self_attr               sys_lsm_set_self_attr
+459    o32     lsm_list_modules                sys_lsm_list_modules
index a47798fed54e392943dea454ab59a3b00189c244..ccc0a679e774bdef46ed1a5b83431d4ec10e990b 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 7fab411378f2dd7dda7b136e8fec9b28186e0fea..a6f37e2333cbe369302dbf9972f74e731c046609 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 86fec9b080f61bd0a5ef09395649cf15a9c90502..4b818e9ee832cbdc849c372d7852caf5e7ee7ada 100644 (file)
 454  common    futex_wake              sys_futex_wake                  sys_futex_wake
 455  common    futex_wait              sys_futex_wait                  sys_futex_wait
 456  common    futex_requeue           sys_futex_requeue               sys_futex_requeue
+457  common    lsm_get_self_attr       sys_lsm_get_self_attr           sys_lsm_get_self_attr
+458  common    lsm_set_self_attr       sys_lsm_set_self_attr           sys_lsm_set_self_attr
+459  common    lsm_list_modules        sys_lsm_list_modules            sys_lsm_list_modules
index 363fae0fe9bf4860a23f3e091980797f60c3d7c9..1a3d88d1a07ffa36a1a52d165a74caeb884b19d5 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 7bcaa3d5ea442efd473e881932ac4b769222ff8f..e0e8cec623583615edb630a6f6f5cff6b71cf36f 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index c8fac520580353dd7350fbc6ad61963042db4eb8..6e45e693f3390b8690c36deaa116d1e99e6f7224 100644 (file)
 454    i386    futex_wake              sys_futex_wake
 455    i386    futex_wait              sys_futex_wait
 456    i386    futex_requeue           sys_futex_requeue
+457    i386    lsm_get_self_attr       sys_lsm_get_self_attr
+458    i386    lsm_set_self_attr       sys_lsm_set_self_attr
+459    i386    lsm_list_modules        sys_lsm_list_modules
index 8cb8bf68721cf6fab663bdeaf0299899784ee0bf..d3b41d059d4dbabb03705ba58f0f96ec16c69160 100644 (file)
 454    common  futex_wake              sys_futex_wake
 455    common  futex_wait              sys_futex_wait
 456    common  futex_requeue           sys_futex_requeue
+457    common  lsm_get_self_attr       sys_lsm_get_self_attr
+458    common  lsm_set_self_attr       sys_lsm_set_self_attr
+459    common  lsm_list_modules        sys_lsm_list_modules
 
 #
 # Due to a historical design error, certain syscalls are numbered differently
index 06eefa9c1458863a316d7273daf0463a6a4db075..284784ea5a468d7c464b1570da214cb409b0a6c6 100644 (file)
 454    common  futex_wake                      sys_futex_wake
 455    common  futex_wait                      sys_futex_wait
 456    common  futex_requeue                   sys_futex_requeue
+457    common  lsm_get_self_attr               sys_lsm_get_self_attr
+458    common  lsm_set_self_attr               sys_lsm_set_self_attr
+459    common  lsm_list_modules                sys_lsm_list_modules
index 756b013fb8324bd7a320e60cebec2ca692faa149..55cc0bcfb58d5f600082ae5c7615540b8f48ea34 100644 (file)
@@ -829,8 +829,15 @@ __SYSCALL(__NR_futex_wait, sys_futex_wait)
 #define __NR_futex_requeue 456
 __SYSCALL(__NR_futex_requeue, sys_futex_requeue)
 
+#define __NR_lsm_get_self_attr 457
+__SYSCALL(__NR_lsm_get_self_attr, sys_lsm_get_self_attr)
+#define __NR_lsm_set_self_attr 458
+__SYSCALL(__NR_lsm_set_self_attr, sys_lsm_set_self_attr)
+#define __NR_lsm_list_modules 459
+__SYSCALL(__NR_lsm_list_modules, sys_lsm_list_modules)
+
 #undef __NR_syscalls
-#define __NR_syscalls 457
+#define __NR_syscalls 460
 
 /*
  * 32 bit systems traditionally used different
index 80be0e98ea0c5488ef27a08637e8a12b991c6eae..81c772c0f5c8ec881881a4b7341138c09b6bd4fa 100644 (file)
 450    common  set_mempolicy_home_node         sys_set_mempolicy_home_node
 451    n64     cachestat                       sys_cachestat
 452    n64     fchmodat2                       sys_fchmodat2
+453    n64     lsm_get_self_attr               sys_lsm_get_self_attr
+454    n64     lsm_set_self_attr               sys_lsm_set_self_attr
+455    n64     lsm_list_modules                sys_lsm_list_modules
index e1412519b4ad9ae2a38750a1c4e3dce63ce83ecb..861c6ca0a8c34ac75bb9200e4ea87750266feff1 100644 (file)
 450    nospu   set_mempolicy_home_node         sys_set_mempolicy_home_node
 451    common  cachestat                       sys_cachestat
 452    common  fchmodat2                       sys_fchmodat2
+453    common  lsm_get_self_attr               sys_lsm_get_self_attr
+454    common  lsm_set_self_attr               sys_lsm_set_self_attr
+455    common  lsm_list_modules                sys_lsm_list_modules
index cc0bc144b6616226b7df2aa717a7e57b798756d5..5a422443cb162ab3f1fadb4118d301131057fa30 100644 (file)
 450  common    set_mempolicy_home_node sys_set_mempolicy_home_node     sys_set_mempolicy_home_node
 451  common    cachestat               sys_cachestat                   sys_cachestat
 452  common    fchmodat2               sys_fchmodat2                   sys_fchmodat2
+453  common    lsm_get_self_attr       sys_lsm_get_self_attr   sys_lsm_get_self_attr
+454  common    lsm_set_self_attr       sys_lsm_set_self_attr   sys_lsm_set_self_attr
+455  common    lsm_list_modules        sys_lsm_list_modules    sys_lsm_list_modules
index 2a62eaf30d69a3f016be8587e85d4a409d19f777..e692c88105a60d18165a772af91f2d0d9760094e 100644 (file)
 451    common  cachestat               sys_cachestat
 452    common  fchmodat2               sys_fchmodat2
 453    64      map_shadow_stack        sys_map_shadow_stack
+454    common  lsm_get_self_attr       sys_lsm_get_self_attr
+455    common  lsm_set_self_attr       sys_lsm_set_self_attr
+456    common  lsm_list_modules        sys_lsm_list_modules
 
 #
 # Due to a historical design error, certain syscalls are numbered differently