In message <[EMAIL PROTECTED]>, Mark Himsley writes: >My basic question is: how do I stop commons/net from setting the TCP push >flag on the socket connection. > >I've looked through the source of WhoisClient, FingerClient, SocketClient, >SocketFactory, DefaultSocketFactory and as yet don't have a clue why the >push flag is set ant the query is fragmented.
I'm going to have to punt this to someone else (maybe you if you've got the interest/time) to fix and patch, but if the push flag is being set, it's being done automatically by the JVM's class library in native code. There's probably a call to OutputStream.flush() somewhere and the underlying native code is turning that into TCP push. Why that's happening in the middle of as small amount of data as occurs in a whois query, I don't know. This is what happens when code written to work around the limitations of JDK 1.0.2 and 1.1 finds itself running in a J2SE 1.4 world. If somebody could update the I/O stuff to avoid using flush(), that would fix things. Some of the stuff in the org.apache.commons.net.io package could use an overhaul as some of it is rather inefficient. We should at least at it to the todo list. I can't volunteer to dig into it for another couple of weeks :( daniel --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
