Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Feb 2005 11:02:57 +0100
From:      des@des.no (=?iso-8859-1?q?Dag-Erling_Sm=F8rgrav?=)
To:        Kelly Yancey <kbyanc@posi.net>
Cc:        Pawel Worach <pawel.worach@telia.com>
Subject:   Re: [patch] Update to libfetch
Message-ID:  <867jl0c3ou.fsf@xps.des.no>
In-Reply-To: <20050221153304.J2022@gateway.posi.net> (Kelly Yancey's message of "Mon, 21 Feb 2005 15:39:48 -0800 (PST)")
References:  <20050221153304.J2022@gateway.posi.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Kelly Yancey <kbyanc@posi.net> writes:
>   Attached is a patch to address concerns raised by Pawel Worach with
> regards to the recent change to set TCP_NOPUSH when sending HTTP
> requests from libfetch.  The previous revision also introduced a call
> to shutdown(2) to close the write half of the socket in order to force
> the queued request to be sent.  While this should be perfectly
> acceptable behavior for a TCP client, it appears that squid provides a
> configuration option to disallow half-closed clients (which Pawel is
> currently using).  As such, after introducing the shutdown(2) call,
> fetch(1) can no longer fetch files via HTTP through such proxies.
>   To address this issue, the attached patch replaces the call to
> shutdown(2) with some socket option fiddling (clearing TCP_NOPUSH and
> setting TCP_NODELAY) which does the same job of forcing the client to
> write the queued request to the network without closing the write half
> of the socket.  This feels a bit hackish to me, but gets the job done.
> Anyway, I would appreciate any feedback.  Thanks,

Doesn't simply reading from the socket or selecting it for reading
flush the output queue?

DES
--=20
Dag-Erling Sm=F8rgrav - des@des.no



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?867jl0c3ou.fsf>