>> On 9 Apr 2020, at 20:46, Jeffrey Kain via 4D_Tech <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Why? :)
> 
> Why not?
> 
> The data that is available from the stream can be any arbitrary size. The 
> plugin does not know upfront how many bytes are available, so it needs a 
> limit. There is a default value, which you can override if it doesn’t suit 
> you.
> 
> So please tell me, what is the problem?

The documentation clearly says 32000 is the default maximum to read if you 
**DON’T** specify the maximum. So I have to agree with Rob — what exactly is 
the problem? Is it really so difficult to type a few more characters to 
override the default?

Clearly the default was made in the days when a text variable could only be 
32000 bytes. Changing the default now could potentially break existing code 
that relies on that default. NOT changing the default and allowing it be 
overridden was clearly the right choice from the user’s perspective.

Have any of you actually thought about what would happen if the default were 
much larger? Do you think it should default to the maximum size of a modern 
text variable, 2GB? Let’s say you have multiple listening processes receiving 
data. An attacker sends 2GB+ multiple times simultaneously. Your server is now 
dead, because all of the physical memory has been exhausted.

I’m wondering if anyone who has rather simplistically chimed in on this issue 
knows anything about the vagaries of TCP receive window sizes, or what happens 
when you ask NTK to receive a buffer larger than the OS receive buffer size.

NTK is awesome, keep up the great work, Rob!

- Aparajita
**********************************************************************
4D Internet Users Group (4D iNUG)
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:[email protected]
**********************************************************************

Reply via email to