policycoreutils/setfiles: stdout messages don't need program prefix

I suggested that if you run a command for its informational output (by
passing  `-v`), you don't expect it to be prefixed with the program name.
Prefixing is used for error messages, so you can tell where your shell
script blew up :).  If a script is running a command for its informational
output, it's usually the script's responsibility to make sure it's in
context, e.g. providing headers if there are multiple sections of output.

Removing the program name from setfiles/restorecon output is particularly
useful because it generates very long lines.  But also, it actually helps
highlight where there are error messages - the prefix will make them
stand out visually.

Signed-off-by: Alan Jenkins <alan.christopher.jenkins@gmail.com>
This commit is contained in:
Alan Jenkins 2017-03-26 17:22:43 +01:00 committed by James Carter
parent d0fafe035d
commit 1da6fb0610

View File

@ -142,9 +142,15 @@ static int __attribute__ ((format(printf, 2, 3)))
log_callback(int type, const char *fmt, ...)
{
int rc;
FILE *out = (type == SELINUX_INFO) ? stdout : stderr;
FILE *out;
va_list ap;
fprintf(out, "%s: ", r_opts.progname);
if (type == SELINUX_INFO) {
out = stdout;
} else {
out = stderr;
fprintf(out, "%s: ", r_opts.progname);
}
va_start(ap, fmt);
rc = vfprintf(out, fmt, ap);
va_end(ap);