version 1.216, 2014/01/29 06:18:35 |
version 1.217, 2014/02/22 01:32:19 |
|
|
"r", ruser, |
"r", ruser, |
"u", pw->pw_name, |
"u", pw->pw_name, |
(char *)NULL); |
(char *)NULL); |
r = execute_in_shell(cmd); |
if (result != 1) { |
if (r == -1) { |
/* skip execution if prior predicate failed */ |
fatal("%.200s line %d: match exec '%.100s' " |
debug("%.200s line %d: skipped exec \"%.100s\"", |
"error", filename, linenum, cmd); |
|
} else if (r == 0) { |
|
debug("%.200s line %d: matched " |
|
"'exec \"%.100s\"' ", |
|
filename, linenum, cmd); |
filename, linenum, cmd); |
} else |
} else { |
result = 0; |
r = execute_in_shell(cmd); |
|
if (r == -1) { |
|
fatal("%.200s line %d: match exec " |
|
"'%.100s' error", filename, |
|
linenum, cmd); |
|
} else if (r == 0) { |
|
debug("%.200s line %d: matched " |
|
"'exec \"%.100s\"'", filename, |
|
linenum, cmd); |
|
} else { |
|
debug("%.200s line %d: no match " |
|
"'exec \"%.100s\"'", filename, |
|
linenum, cmd); |
|
result = 0; |
|
} |
|
} |
free(cmd); |
free(cmd); |
} else { |
} else { |
error("Unsupported Match attribute %s", attrib); |
error("Unsupported Match attribute %s", attrib); |