amphp/parallel

Race condition on IPC socket accept

Closed this issue · 0 comments

We write the key to the child before registering it to be received, which is inside accept.

If the child connects fast enough, this will result in a race condition. The race condition will only happen if there are multiple concurrent accepts, because we start to accept only after registering the key. With concurrent pending connects, we might already be in the accept loop.