]> Git Repo - J-linux.git/commitdiff
TOMOYO: fix __setup handlers return values
authorRandy Dunlap <[email protected]>
Tue, 22 Feb 2022 21:45:33 +0000 (13:45 -0800)
committerTetsuo Handa <[email protected]>
Wed, 23 Feb 2022 22:45:07 +0000 (07:45 +0900)
__setup() handlers should return 1 if the parameter is handled.
Returning 0 causes the entire string to be added to init's
environment strings (limited to 32 strings), unnecessarily polluting it.

Using the documented strings "TOMOYO_loader=string1" and
"TOMOYO_trigger=string2" causes an Unknown parameter message:
  Unknown kernel command line parameters
    "BOOT_IMAGE=/boot/bzImage-517rc5 TOMOYO_loader=string1 \
     TOMOYO_trigger=string2", will be passed to user space.

and these strings are added to init's environment string space:
  Run /sbin/init as init process
    with arguments:
     /sbin/init
    with environment:
     HOME=/
     TERM=linux
     BOOT_IMAGE=/boot/bzImage-517rc5
     TOMOYO_loader=string1
     TOMOYO_trigger=string2

With this change, these __setup handlers act as expected,
and init's environment is not polluted with these strings.

Fixes: 0e4ae0e0dec63 ("TOMOYO: Make several options configurable.")
Signed-off-by: Randy Dunlap <[email protected]>
Reported-by: Igor Zhbanov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Cc: James Morris <[email protected]>
Cc: Kentaro Takeda <[email protected]>
Cc: [email protected]
Cc: "Serge E. Hallyn" <[email protected]>
Signed-off-by: Tetsuo Handa <[email protected]>
security/tomoyo/load_policy.c

index 3445ae6fd4794eaf430384ec63622004bc93f8fb..363b65be87ab768ed4993df1e5a361892958b3ab 100644 (file)
@@ -24,7 +24,7 @@ static const char *tomoyo_loader;
 static int __init tomoyo_loader_setup(char *str)
 {
        tomoyo_loader = str;
-       return 0;
+       return 1;
 }
 
 __setup("TOMOYO_loader=", tomoyo_loader_setup);
@@ -64,7 +64,7 @@ static const char *tomoyo_trigger;
 static int __init tomoyo_trigger_setup(char *str)
 {
        tomoyo_trigger = str;
-       return 0;
+       return 1;
 }
 
 __setup("TOMOYO_trigger=", tomoyo_trigger_setup);
This page took 0.048372 seconds and 4 git commands to generate.