Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Oct 1998 17:30:09 +0200 (CEST)
From:      Andre Albsmeier <andre.albsmeier@mchp.siemens.de>
To:        marcs@znep.com (Marc Slemko)
Cc:        andre.albsmeier@mchp.siemens.de, hackers@FreeBSD.ORG
Subject:   Re: Only "fetch -b" works, what am I doing wrong?
Message-ID:  <199810041530.RAA23757@internal>
In-Reply-To: <Pine.GSO.4.02A.9810020824210.4587-100000@redfish> from Marc Slemko at "Oct 2, 1998  8:26:19 am"

next in thread | previous in thread | raw e-mail | index | archive | help
> On Fri, 2 Oct 1998, Andre Albsmeier wrote:
> 
> > Hi,
> > 
> > I have written a small programm that serves http requests.
> > When using fetch I have to use "fetch -b" because without
> > -b fetch complains with: "fetch: empty reply from myserver.org"
> > 
> > While digging around in http.c, I found out that -b 
> > works around a linux bug. One of the correspondig
> > lines is:
> > 
> > if (sendmsg(s, &msg, fs->fs_linux_bug ? 0 : MSG_EOF) < 0) {
> > 
> > This means, my small http server works when setting flags
> > (of sendmsg) to 0. I assume, the correct way would be to set
> > MSG_EOF but somehow my http server doesn't work with it.
> 
> You are not dealing properly with the case where the client half closes
> the connection before the response is fully sent.  It shouldn't be too
> hard to add some debugging to your code to verify exactly where the
> problem is coming up, if your server is incorrectly assuming that if the
> socket is half closed it should abort, etc.

You were right. I didn't handle my select() loop properly.

Thanks for the help,

	-Andre

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



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