TCP NETWORK OBJECTS by Ian Smith of the Software Engineering Research Center's Multimedia Lab I think that most of you by looking at the source can figure out most of the stuff involved in what/how to use these objects so I'll skip that. If you want to compile a file using these objects you need (I think) to link with the sys_s and NeXT_s libraries. As I guess you will notice, I didn't hack these objects up to multiplex connections over one TCP socket, I plan on doing that at some future point (or if some nice person volunteers they can do it). There are a lot of choices for doing that, and they all need to be thought out carefully. There is a set of objects like this (UDP TCP SERVER CLIENT) available from SERC for C++ if anyone is interested. Even though I didn't hack up these objects to multiplex connections, you can still hack up network software (at least the first cut) pretty quickly with these. They also seem to be attracting attention for network gaming. Also, if you stop one of the program using these objects before it can close the tcp connection, it may cause problems. Since this is a reliable connection (tcp guarantees delivery) there may be data in a buffer somewhere that is waiting to be sent/delivered. In this case if you run the program again, it may cause the address to not bind correctly and generate an error. I've tried to do what I can about this with setsockopts but without much success. (On the Sparcstations, the setsockopt solution seems to work.... go figure.) If anyone out there can isolate and fix the problem, please send me the workaround. Please send me your suggestions on how I can improve/modify these objects. thanks, ian iansmith@warhol.gatech.edu
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.