From: Lennart Poettering Date: Wed, 5 May 2021 20:06:34 +0000 (+0200) Subject: userdb: return ESRCH if we didn't find a single varlink service X-Git-Tag: v249-rc1~254^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=58dbf4c925aadf92a2de62943648b76ae1063c4a;p=thirdparty%2Fsystemd.git userdb: return ESRCH if we didn't find a single varlink service Clearly communicate to callers that we didn't find a single varlink service, when a lookup is attempted. Note that the fallback's to NSS, drop-ins and synthesis might eat up this error again, but we should really make this case reasonably recognizable, in particular as our various tools already handle this condition correctly and print a nice message then. --- diff --git a/src/shared/userdb.c b/src/shared/userdb.c index 3e08b339f5b..33a1442460e 100644 --- a/src/shared/userdb.c +++ b/src/shared/userdb.c @@ -510,7 +510,7 @@ static int userdb_start_query( } if (set_isempty(iterator->links)) - return ret; /* propagate last error we saw if we couldn't connect to anything. */ + return ret < 0 ? ret : -ESRCH; /* propagate last error we saw if we couldn't connect to anything. */ /* We connected to some services, in this case, ignore the ones we failed on */ return 0;