From: Lennart Poettering Date: Tue, 27 Dec 2016 15:50:02 +0000 (+0100) Subject: seccomp: minor simplifications for is_seccomp_available() X-Git-Tag: v233~227^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F4991%2Fhead;p=thirdparty%2Fsystemd.git seccomp: minor simplifications for is_seccomp_available() --- diff --git a/src/shared/seccomp-util.c b/src/shared/seccomp-util.c index 497426f605b..2c73cb8fa43 100644 --- a/src/shared/seccomp-util.c +++ b/src/shared/seccomp-util.c @@ -204,21 +204,22 @@ finish: } static bool is_basic_seccomp_available(void) { - int r; - r = prctl(PR_GET_SECCOMP, 0, 0, 0, 0); - return r >= 0; + return prctl(PR_GET_SECCOMP, 0, 0, 0, 0) >= 0; } static bool is_seccomp_filter_available(void) { - int r; - r = prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0); - return r < 0 && errno == EFAULT; + return prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, NULL, 0, 0) < 0 && + errno == EFAULT; } bool is_seccomp_available(void) { static int cached_enabled = -1; + if (cached_enabled < 0) - cached_enabled = is_basic_seccomp_available() && is_seccomp_filter_available(); + cached_enabled = + is_basic_seccomp_available() && + is_seccomp_filter_available(); + return cached_enabled; }