On 01/11/2010, at 8:47 PM, RF wrote:

>> 
>> BTW: the webserver does NOT read the whole of the client's request.
>> It only reads the GET line. I see no workaround because there's no
>> way to KNOW how much has been sent.
> 
> You gotta read the rest of the request.

Precisely HOW do I know when the request ends? 

In advance .. how many bytes? Since at present demux/faio
will block the caller fthread until N bytes are read or the end of the file
or an error .. what if none of these occur? In particular,
there's no end of file on a socket (unless the browser client
shuts down its write half, which it may not do).

> I'm really rusty here, and
> I am not a TCP guy (IANATCPG) but won't closing a socket with unread
> data cause something unpleasant to happen?

I have no idea, but I don't think so, I don't see how the client
can know, assuming it has actually finished sending the data
to the server's OS buffers.

If it hasn't, because the OS buffers are full, then we want
something unpleasant to happen, because the client
is a DNS attacker: socket buffers are big enough to hold
a GET request line.

> Plus there could be something important in there.


There can't be, because there's no logic to respond to
anything else than a GET line.

--
john skaller
skal...@users.sourceforge.net





------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store 
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
Felix-language mailing list
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to