diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2019-02-08 16:02:59 +0300 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2019-02-08 16:02:59 +0300 |
commit | 317498f3b3335ee9b9944929ffae16f07e1ebd2d (patch) | |
tree | ab79d5cbe4cf135f3cec00bf9f3f6fce081a57db /procps | |
parent | df4e3af9f716e0483bd02fd4ab3ad973ffe5b998 (diff) |
sysctl: allow setting empty values
function old new delta
sysctl_act_on_setting 451 445 -6
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'procps')
-rw-r--r-- | procps/sysctl.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/procps/sysctl.c b/procps/sysctl.c index 5fa7646d1..42de374d2 100644 --- a/procps/sysctl.c +++ b/procps/sysctl.c @@ -119,14 +119,16 @@ static int sysctl_act_on_setting(char *setting) if (cptr) writing = 1; if (writing) { - if (cptr == NULL) { + if (!cptr) { bb_error_msg("error: '%s' must be of the form name=value", outname); retval = EXIT_FAILURE; goto end; } value = cptr + 1; /* point to the value in name=value */ - if (setting == cptr || !*value) { + if (setting == cptr /* "name" can't be empty */ + /* || !*value - WRONG: "sysctl net.ipv4.ip_local_reserved_ports=" is a valid syntax (clears the value) */ + ) { bb_error_msg("error: malformed setting '%s'", outname); retval = EXIT_FAILURE; goto end; |