If at least one entry fails, return EXIT_FAILURE in sysctl

This commit is contained in:
sin 2014-04-17 17:05:14 +01:00
parent 3985929b6d
commit edc39cef27

View File

@ -122,6 +122,7 @@ main(int argc, char *argv[])
char *value; char *value;
char *p; char *p;
int i; int i;
int r = EXIT_SUCCESS;
argv0 = argv[0]; argv0 = argv[0];
argv++; argv++;
@ -133,6 +134,7 @@ main(int argc, char *argv[])
for (i = 0; i < argc; i++) { for (i = 0; i < argc; i++) {
for (p = argv[i]; *p; p++) { for (p = argv[i]; *p; p++) {
if (p[0] == '.' && p[1] == '.') { if (p[0] == '.' && p[1] == '.') {
r = EXIT_FAILURE;
weprintf("malformed input: %s\n", argv[i]); weprintf("malformed input: %s\n", argv[i]);
break; break;
} }
@ -142,6 +144,7 @@ main(int argc, char *argv[])
p = strchr(argv[i], '='); p = strchr(argv[i], '=');
if (p) { if (p) {
if (p[1] == '\0') { if (p[1] == '\0') {
r = EXIT_FAILURE;
weprintf("malformed input: %s\n", argv[i]); weprintf("malformed input: %s\n", argv[i]);
continue; continue;
} }
@ -155,12 +158,14 @@ main(int argc, char *argv[])
if (variable) { if (variable) {
if (value) { if (value) {
if (setsysctl(variable, value) < 0) { if (setsysctl(variable, value) < 0) {
r = EXIT_FAILURE;
weprintf("failed to set sysctl for %s\n", variable); weprintf("failed to set sysctl for %s\n", variable);
continue; continue;
} }
} }
else { else {
if (getsysctl(variable, &value) < 0) { if (getsysctl(variable, &value) < 0) {
r = EXIT_FAILURE;
weprintf("failed to get sysctl for %s\n", variable); weprintf("failed to get sysctl for %s\n", variable);
continue; continue;
} }
@ -170,5 +175,5 @@ main(int argc, char *argv[])
} }
} }
return EXIT_SUCCESS; return r;
} }