bus-proxyd: check return values of getpeercred() and getpeersec()

If we can't get the remote peer or security creds, bail out.

Spotted by coverity.
This commit is contained in:
Daniel Mack 2014-10-07 12:36:09 +02:00
parent 8bf13eb1e0
commit 55534fb5e4

View file

@ -1146,8 +1146,17 @@ int main(int argc, char *argv[]) {
sd_is_socket(out_fd, AF_UNIX, 0, 0) > 0;
if (is_unix) {
getpeercred(in_fd, &ucred);
getpeersec(in_fd, &peersec);
r = getpeercred(in_fd, &ucred);
if (r < 0) {
log_error("Failed to get peer creds: %s", strerror(-r));
goto finish;
}
r = getpeersec(in_fd, &peersec);
if (r < 0) {
log_error("Failed to get security creds: %s", strerror(-r));
goto finish;
}
}
if (arg_drop_privileges) {