Re: commBind/commResetFD problems in Solaris 2.5.1

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Thu, 15 Jul 1999 01:06:55 +0200

valko@linux.karinthy.hu wrote:

> Before 2.2, only comm_open calls commBind, when a new outgoing connection
> is initiated. However, since 2.2, commBind is also called from commResetFD.

This is true for most Squid 2.X releases.

Set
maximum_single_addr_tries 1
to disable this and get rid of a number of problems related to
commResetFD. The retry feature implemented with commResetFD is
technically not needed in Squid 2.2 as the same thing is also done at a
higher level in the code.

> After playing with this code a little bit, I have found a rearrangement
> of the code that makes the error messages disappear:
>
> new = socket()
> bind(new)
> dup2(new, old)
> close(new)

The world of BSD sockets emulation never finishes to make wonders. Third
OS known to me which fails the emulation in some aspect or another ;-)

I'll include this change in my next snapshot release, for whatever it is
worth.

--
Henrik Nordstrom
Spare time Squid hacker
Received on Wed Jul 14 1999 - 17:40:26 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:47:23 MST