Print

Print


Stevens (http://www.unpbook.com/) says on page 209:
> The receive low-watermark is the amount of data that must be in the socket receive buffer for ```select``` to return "readable."

Unfortunately, Linux manual page says:
> ```SO_RCVLOWAT``` and ```SO_SNDLOWAT```
> Specify the minimum number of bytes in the buffer until the socket layer will pass the data to the protocol
> ```SO_SNDLOWAT```) or the user on receiving (```SO_RCVLOWAT```).  These two values are initialized to 1. 
> ```O_SNDLOWAT```  is  not changeable  on  Linux (```setsockopt(2)``` fails with the error ```ENOPROTOOPT```). 
> ```SO_RCVLOWAT``` is changeable only since Linux 2.4.  The ```select(2)``` and ```poll(2)``` system calls currently
> do not respect the ```SO_RCVLOWAT``` setting on Linux, and mark a socket readable when even a single byte
> of data is available.  A subsequent read from the socket will block until ```SO_RCVLOWAT``` bytes are available.

---
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/20#issuecomment-18354444

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1