diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2016-11-11 10:54:54 -0500 |
---|---|---|
committer | Evgeny Vereshchagin <evvers@ya.ru> | 2016-11-11 18:54:54 +0300 |
commit | abd67ce74858491565cde157c7b08fda43d3279c (patch) | |
tree | e3830e417fff09b46a8172fa8a0cf70b56d733c8 | |
parent | 110773f6c934c37f058d273ee55cf2fd0010b329 (diff) |
basic/virt: fix userns check on CONFIG_USER_NS=n kernel (#4651)
ENOENT should be treated as "false", but because of the broken errno check it
was treated as an error. So ConditionVirtualization=user-namespaces probably
returned the correct answer, but only by accident.
Fixes #4608.
-rw-r--r-- | src/basic/virt.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/basic/virt.c b/src/basic/virt.c index 69b0f96183..d8d57381ad 100644 --- a/src/basic/virt.c +++ b/src/basic/virt.c @@ -496,7 +496,7 @@ static int userns_has_mapping(const char *name) { f = fopen(name, "re"); if (!f) { log_debug_errno(errno, "Failed to open %s: %m", name); - return errno == -ENOENT ? false : -errno; + return errno == ENOENT ? false : -errno; } n = getline(&buf, &n_allocated, f); |