TNET 4.0 will be made available next week :-) (sorry for the delay).

If you are willing to put TNET up for anonymous ftp please let me know.
Next week I'll then send out a message stating where it may be found.


Michael Temari                                       temari@temari.ae.ge.com
============================================================================
What is TNET you say:

TNET is a networking packaged based on Phil Karns KA9Q package.
TNET runs on standard Minix PC 1.5(.10) and any OS patches needed
are included.

Although I say it runs on Minix PC (which I have) it should not be very
difficult to get it running on any of the other platforms though I have
not tried.


TNET protocols supported are IP, ICMP, UDP, TCP.

TNET drivers:
  SLIP - which also does dialing
  ETHER - upper layer (lower layer needed)
  (any takers for CSLIP and PPP)

Current TNET TCP servers:              Current TNET TCP clients:
  daytimed(13)
  builtin-echo(7)                        whois
  builtin-discard(9)                     nntp
  fingerd(79)                            finger
  ftpd(21)                               ftp
  smtpd(25)                              smtp
  telnetd(23)                            telnet
  timed(37)                              netdate
                                         nslookup, nsquery, nstest
  talkd(under development)               talk(under development)

Writing TNET started Servers:
  When a server program is started by TNET the programs stdin/stdout
  are the network link with the client coming in.  For instance here
  is the source for timed:

     (void) time(&now);
     nettime = now + (time_t) 2208988800L;  /* adjust for 1 Jan 1900 GMT */
     val = (u_long) nettime;
     val = htonl(val);
     (void) write(1, (char *) &val, sizeof(u_long));

Writing Clients/Servers:
  A simple call of:
     int tconnect(protocol, lport, port, ipaddr, flags, netin, netout)
            or
     int client(protocol, lport, port, ipaddr, netin, netout)
         (BTW, the client call is actually:
               tconnect(protocol, &lport, &port, &ipaddr, 1L, netin, netout))

  These calls create the network link and return netin/netout which are file
  descriptors across network link created.

