ftp.nice.ch/pub/next/developer/resources/classes/tcp_network_objects.N.bs.tar.gz#/distrib

README
 
rec_tcp
 
rec_tcp.m
[View rec_tcp.m] 
tcp.h
[View tcp.h] 
tcp.m
[View tcp.m] 
trans_tcp
 
trans_tcp.m
[View trans_tcp.m] 

README

        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.