We need to track the pid of the connecting control connection to be
authorflorian <florian@openbsd.org>
Wed, 24 Feb 2021 18:34:14 +0000 (18:34 +0000)
committerflorian <florian@openbsd.org>
Wed, 24 Feb 2021 18:34:14 +0000 (18:34 +0000)
commitb121c2f30cec6477cc9fb0b0cfa350ab3e0db98d
treef65d4f1cbfbfb9f4501407d6ff3abcffcd972845
parent571848146d613cbb00ff3ad38168e75616d9338c
We need to track the pid of the connecting control connection to be
able to send answers back to the correct client in case two are
connecting at the same time. We also need to pass the pid around to
the resolver process so that it can hand it back to us.
Debugged by deraadt and dlg who noticed that answers would always
arrive on the first control connection.

deraadt@ points out that tracking the pid is not the best choice in
case one process wants to hold open two connections but at least this
brings us in line with all the other privsep daemons with control
tools. If we change this we should change it in all daemons.
sbin/unwind/control.c