setfiles: drop ABORT_ON_ERRORS and related code

`setfiles -d` doesn't have any impact on number of errors before it
aborts. It always aborts on first invalid context in spec file.

Signed-off-by: Petr Lautrbach <plautrba@redhat.com>
This commit is contained in:
Petr Lautrbach 2021-01-13 22:09:48 +01:00
parent 9207823c8f
commit be7f54cb1f
4 changed files with 2 additions and 24 deletions

View File

@ -5,8 +5,6 @@ SBINDIR ?= /sbin
MANDIR = $(PREFIX)/share/man MANDIR = $(PREFIX)/share/man
AUDITH ?= $(shell test -f /usr/include/libaudit.h && echo y) AUDITH ?= $(shell test -f /usr/include/libaudit.h && echo y)
ABORT_ON_ERRORS=$(shell grep "^\#define ABORT_ON_ERRORS" setfiles.c | awk -S '{ print $$3 }')
CFLAGS ?= -g -Werror -Wall -W CFLAGS ?= -g -Werror -Wall -W
override LDLIBS += -lselinux -lsepol override LDLIBS += -lselinux -lsepol
@ -26,7 +24,6 @@ restorecon_xattr: restorecon_xattr.o restore.o
man: man:
@cp -af setfiles.8 setfiles.8.man @cp -af setfiles.8 setfiles.8.man
@sed -i "s/ABORT_ON_ERRORS/$(ABORT_ON_ERRORS)/g" setfiles.8.man
install: all install: all
[ -d $(DESTDIR)$(MANDIR)/man8 ] || mkdir -p $(DESTDIR)$(MANDIR)/man8 [ -d $(DESTDIR)$(MANDIR)/man8 ] || mkdir -p $(DESTDIR)$(MANDIR)/man8

View File

@ -47,7 +47,7 @@ setfiles \- установить SELinux-контексты безопаснос
проверить действительность контекстов относительно указанной двоичной политики. проверить действительность контекстов относительно указанной двоичной политики.
.TP .TP
.B \-d .B \-d
показать, какая спецификация соответствует каждому из файлов (не прекращать проверку после получения ошибок ABORT_ON_ERRORS). показать, какая спецификация соответствует каждому из файлов.
.TP .TP
.BI \-e \ directory .BI \-e \ directory
исключить каталог (чтобы исключить более одного каталога, этот параметр необходимо использовать соответствующее количество раз). исключить каталог (чтобы исключить более одного каталога, этот параметр необходимо использовать соответствующее количество раз).

View File

@ -57,8 +57,7 @@ option will force a replacement of the entire context.
check the validity of the contexts against the specified binary policy. check the validity of the contexts against the specified binary policy.
.TP .TP
.B \-d .B \-d
show what specification matched each file (do not abort validation show what specification matched each file.
after ABORT_ON_ERRORS errors).
.TP .TP
.BI \-e \ directory .BI \-e \ directory
directory to exclude (repeat option for more than one directory). directory to exclude (repeat option for more than one directory).

View File

@ -23,14 +23,6 @@ static int nerr;
#define STAT_BLOCK_SIZE 1 #define STAT_BLOCK_SIZE 1
/* setfiles will abort its operation after reaching the
* following number of errors (e.g. invalid contexts),
* unless it is used in "debug" mode (-d option).
*/
#ifndef ABORT_ON_ERRORS
#define ABORT_ON_ERRORS 10
#endif
#define SETFILES "setfiles" #define SETFILES "setfiles"
#define RESTORECON "restorecon" #define RESTORECON "restorecon"
static int iamrestorecon; static int iamrestorecon;
@ -56,15 +48,6 @@ static __attribute__((__noreturn__)) void usage(const char *const name)
exit(-1); exit(-1);
} }
void inc_err(void)
{
nerr++;
if (nerr > ABORT_ON_ERRORS - 1 && !r_opts.debug) {
fprintf(stderr, "Exiting after %d errors.\n", ABORT_ON_ERRORS);
exit(-1);
}
}
void set_rootpath(const char *arg) void set_rootpath(const char *arg)
{ {
if (strlen(arg) == 1 && strncmp(arg, "/", 1) == 0) { if (strlen(arg) == 1 && strncmp(arg, "/", 1) == 0) {
@ -97,7 +80,6 @@ int canoncon(char **contextp)
*contextp = tmpcon; *contextp = tmpcon;
} else if (errno != ENOENT) { } else if (errno != ENOENT) {
rc = -1; rc = -1;
inc_err();
} }
return rc; return rc;