Reword description of SXID_* tunable properties

Message ID 20201022061818.74951-1-siddhesh@sourceware.org
State Committed
Headers
Series Reword description of SXID_* tunable properties |

Commit Message

Siddhesh Poyarekar Oct. 22, 2020, 6:18 a.m. UTC
  The SXID_* tunable properties only influence processes that are
AT_SECURE, so make that a bit more explicit in the documentation and
comment.

Revisiting the code after a few years I managed to confuse myself, so
I imagine there could be others who may have incorrectly assumed like
I did that the SXID_ERASE tunables are not inherited by children of
non-AT_SECURE processes.
---
 elf/dl-tunables.list   | 11 ++++++-----
 manual/README.tunables | 11 ++++++-----
 2 files changed, 12 insertions(+), 10 deletions(-)
  

Comments

Florian Weimer Oct. 22, 2020, 7:59 a.m. UTC | #1
* Siddhesh Poyarekar via Libc-alpha:

> The SXID_* tunable properties only influence processes that are
> AT_SECURE, so make that a bit more explicit in the documentation and
> comment.
>
> Revisiting the code after a few years I managed to confuse myself, so
> I imagine there could be others who may have incorrectly assumed like
> I did that the SXID_ERASE tunables are not inherited by children of
> non-AT_SECURE processes.

Change looks reasonable.  It reflects how I think the implementation
works, but I have not checked whether my assumptions match reality.

Thanks,
Florian
  
Siddhesh Poyarekar Oct. 22, 2020, 8:22 a.m. UTC | #2
On 10/22/20 1:29 PM, Florian Weimer via Libc-alpha wrote:
> Change looks reasonable.  It reflects how I think the implementation
> works, but I have not checked whether my assumptions match reality.

Thanks, I did verify :)

Siddhesh
  

Patch

diff --git a/elf/dl-tunables.list b/elf/dl-tunables.list
index 35634ef24d..e1d8225128 100644
--- a/elf/dl-tunables.list
+++ b/elf/dl-tunables.list
@@ -21,12 +21,13 @@ 
 # minval: Optional minimum acceptable value
 # maxval: Optional maximum acceptable value
 # env_alias: An alias environment variable
-# security_level: Specify security level of the tunable.  Valid values are:
+# security_level: Specify security level of the tunable for AT_SECURE binaries.
+# 		  Valid values are:
 #
-# 	     SXID_ERASE: (default) Don't read for AT_SECURE binaries and
-# 	     		 removed so that child processes can't read it.
-# 	     SXID_IGNORE: Don't read for AT_SECURE binaries, but retained for
-# 	     		  non-AT_SECURE subprocesses.
+# 	     SXID_ERASE: (default) Do not read and do not pass on to
+# 	     child processes.
+# 	     SXID_IGNORE: Do not read, but retain for non-AT_SECURE
+# 	     subprocesses.
 # 	     NONE: Read all the time.
 
 glibc {
diff --git a/manual/README.tunables b/manual/README.tunables
index fff6c2a87e..d8c768abcc 100644
--- a/manual/README.tunables
+++ b/manual/README.tunables
@@ -59,12 +59,13 @@  The list of allowed attributes are:
 
 - env_alias:		An alias environment variable
 
-- security_level:	Specify security level of the tunable.  Valid values:
+- security_level:	Specify security level of the tunable for AT_SECURE
+			binaries.  Valid values are:
 
-			SXID_ERASE: (default) Don't read for AT_SECURE binaries and
-				    removed so that child processes can't read it.
-			SXID_IGNORE: Don't read for AT_SECURE binaries, but retained for
-				     non-AT_SECURE subprocesses.
+			SXID_ERASE: (default) Do not read and do not pass on to
+			child processes.
+			SXID_IGNORE: Do not read, but retain for non-AT_SECURE
+			child processes.
 			NONE: Read all the time.
 
 2. Use TUNABLE_GET/TUNABLE_SET/TUNABLE_SET_WITH_BOUNDS to get and set tunables.