I haven't had much luck with these in other places, but its still worth trying.
1)The BSD socket options SNDLOWATER and RCVLOWATER are not supported in Windows. THeir purpose is to alter the select() call to return only when a RCVLOWATER bytes are ready for input or SNDLOWATER for output. I can emulate this functionality for reieving, but not sending. Any ideas on how this could be done?
2)A related question- I want a function to peek at n bytes from a socket, or quite if timeout milliseconds pass. In Unix, I could select with n as the rcv low water mark, and read when it returns. In windows, that doesn't work. MY best ideas are to either use an async event to see when data arrives, check if the recv buffer has the data, and if not, clear the event and select again. Is that legal? If not, I could emulate select with successive sleeps and polling. But thats uglier.
If anyone can help, I'd be greatful.