Notes related to the Coherent version of NET.

Read the file, unixnote, for information on what files you need to do a 
compile and how to extract them.  If you are unfamiliar with net (the TCP/IP 
suite, written by Phil Karn, KA9Q, and preceeding his current project, NOS), 
you need to break out the files in netdoc.lzh and brouse them.  lharc.coh is
an executable version of lharc you can copy to Coherent and run.

Net compiles under Coherent 4.0.1 (The 32 bit version for 80386, or better.)  
All you have to do is link makefile.coh to Makefile and do a make.  There are 
some stuctural differences in the makefiles for Unix and for Coherent so I use 
different files.  To compile bm, you need to edit the file makefile.unx to 
include the #define COH386.

There are two deficiencies in the Coherent version.  Times() doesn't 
return a the long integer value of clock ticks like the Unix times() so I had 
to use time() to get clock ticks.  Therefore, timing has one second granular- 
ity instead of 10 ms.  (Tick(), referred to in the Coherent manual, is non-
existent.)

(Net times and controls events by maintaining a linked list of timers that is 
synchronized with the CPU's internal clock.  In Coherent's /usr/include/sys/-
timeout.h see the tim struct for a similar struct as the one used for this 
linked list.  In Unix machines clock ticks are usually 60 or 100 Hz.  Having 
to use Coherent's time() function which returns seconds since 1/1/1970 is 
probably satisfactory except that short duration processes, like pinging 
yourself, will not return realistic values.)

There is no tmpfile() function in Coherent so temporary files I create with 
tmpnam() are not deleted when you quit net.  They are created in /tmp and are 
deleted if you reboot.  To make them go away upon quitting I guess one would 
have to build a list of them and delete them when exiting.

The shell script mkdep doesn't work under Coherent, so rather than use 
depend.out, I put dependency for the Coherent version in the Makefile.  Be 
sure and keep this up do date.  If you want to refresh it from time to time 
compile and run the program mkdepcoh.  It is rather simple minded so you have 
to delete references to extraneous things like amiga.h, mac.h st.h enet.h and 
slfp.h.

Joe, K5JB
