Howdy --

I have a setuid-root executable from which I'm trying to start or stop a
service. However, when invoking systemctl from this executable -- for which
geteuid() returns 0 -- the control socket is rejected when the ruid does
not match (such that the executable was invoked from a less-privileged
user).

2042 17:02:00.508893788 0 systemd (1) > recvmsg
fd=14(<u>ffff883f648b4280->ffff883f648b4980 /run/systemd/private)
2043 17:02:00.508897318 0 systemd (1) < recvmsg res=45 size=45 data=.AUTH
EXTERNAL 30..NEGOTIATE_UNIX_FD..BEGIN.. tuple=NULL

2068 17:02:00.510329428 0 systemd (1) > sendmsg
fd=14(<u>ffff883f648b4280->ffff883f648b4980 /run/systemd/private) size=24
tuple=NULL
2069 17:02:00.510344760 0 systemd (1) < sendmsg res=24
data=REJECTED..ERROR..ERROR..

What's going on, and why?
_______________________________________________
systemd-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to