Rainer Jung wrote:
> On 19.01.2009 19:48, Rainer Jung wrote:
>> On 19.01.2009 18:33, William A. Rowe, Jr. wrote:
>>> Rainer Jung wrote:
>>>> I built trunk on XP today. When trying to run it, I get a restart loop
>>>> for the child process, and the error log contains repetitions of:
>>>
>>>> [Sun Jan 18 19:20:43 2009] [notice] Child 4556: Starting thread to
>>>> listen on port 8000.
>>>> [Sun Jan 18 19:20:43 2009] [error] (OS 10038)Ein Vorgang bezog sich auf
>>>> ein Objekt, das kein Socket ist. : Child 4556: Encountered too many
>>>> AcceptEx faults accepting client connections. Possible causes: dynamic
>>>> address renewal, or incompatible VPN or firewall software.
>>>
>>> I'd love to know what leads into this WSAENOTSOCK ... failing to recycle
>>> the socket or the listener socket falling apart. Needs review, maybe
>>> some
>>> extra magic to log this distinction.
>>>
>>> The "falling back on 'none'" is going to be a problem till I finish that
>>> code this week. I'm actually attacking two problems, having each listen
>>> thread pay attention to up to 62 different sockets, and adding the
>>> required
>>> classic accept() logic. So... this listener may be accepting on both the
>>> classic listen logic and the AcceptEx logic on different listeners at
>>> the
>>> same time.
> 
> When running with httpd -X, I can't observe the problem. Inspecting the
> structures indicates, that the problem might actually be the listen
> socket in AcceptEx (nlsd), not the accept socket.
> 
> Could be, that there's something wrong with the code that copies the
> listen sockets from the main process to the child.

Exactly; one of the primary possibilities is that a well documented API,
WSADuplicateSocket does not behave for a given socket provider.


Reply via email to