Don't you need to `accept(3)` here as well? I'm wondering if this progresses at all, or runs into an infinite loop.