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>
diff --git a/procps/sysctl.c b/procps/sysctl.c
index 5fa7646..42de374 100644
--- a/procps/sysctl.c
+++ b/procps/sysctl.c
@@ -119,14 +119,16 @@
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;