On Fri, Feb 17, 2017 at 08:52:59AM -0800, Andy Lutomirski wrote:
quoted
To resolve this tie lets add EPOLL_CTL_DUP operation which simply takes
target file descriptor number and installs it into a caller's file table,
thus we can use kcmp() syscall and figure out which exactly file to be
added into eventpoll on restore procedure.
This is a scary thing to let an unprivileged process do.
I'm wondering if there might be a nicer way to address this using a
better interface in /proc.
Well, I tend to agree. Need to add security checking if the target
file is accessable by a caller. As to better interface to procfs
nothing comes to mind immediately. Another potential problem is that
since it is never guaranteed that target file number listed in fdinfo
matching existing /proc/pid/fd/N, so that I think we will have to
use this dup functionality for every target file, which of course
not that fast. Probably need to think more if I manage to invent
some better and faster interface to find where exactly target file
belong in the whole process tree of a container.
Thanks for pointing about this security problem, Andy!