mirror of
https://github.com/systemd/systemd.git
synced 2026-08-08 17:10:55 +00:00
rtnl: recv_message - don't enforce sender uid
All we care about is that the kernel (pid==0) sent the message. Verifying the sender uid seems to break when using userns. Reported by Stéphane Graber.
This commit is contained in:
@@ -1363,10 +1363,10 @@ static int socket_recv_message(int fd, struct iovec *iov, uint32_t *_group, bool
|
||||
struct ucred *ucred = (void *)CMSG_DATA(cmsg);
|
||||
|
||||
/* from the kernel */
|
||||
if (ucred->uid == 0 && ucred->pid == 0)
|
||||
if (ucred->pid == 0)
|
||||
auth = true;
|
||||
else
|
||||
log_debug("rtnl: ignoring message from uid %u pid %u", ucred->uid, ucred->pid);
|
||||
log_debug("rtnl: ignoring message from pid %u", ucred->pid);
|
||||
} else if (cmsg->cmsg_level == SOL_NETLINK &&
|
||||
cmsg->cmsg_type == NETLINK_PKTINFO &&
|
||||
cmsg->cmsg_len == CMSG_LEN(sizeof(struct nl_pktinfo))) {
|
||||
|
||||
Reference in New Issue
Block a user