So I added a [clientbuf( message to [tcpserver] to get/set the size of the send buffer. Apparently the actual buffer will be twice this size. I'm still looking for a way to know if the buffer is so full that any further data will block. It seems that even if the select() call returns OK there still may not be enough room for any arbitrary length of data. Probably I need to set the sockets to nonblocking. Latest is in svn, tested on WinXP only so far.
Martin