The code in this directory is the most up-to-date network source on the machine. *** Pre-processor Flags *** This set of code is controlled by this set of conditional compilation flags: TESTING if defined, do not generate tests, etc. which require super-user status. OLDTTY if defined, compile for old 1 character TTY names CCTTY if defined, compile for CC tty name format if neither is defined, use v7 ttyname format PASSWDF compile in code to handle /etc/passwdf - split passwd files OLDPROT use the old protocol, instead of the new protocol V7 use the v7 features FUID use the funny uid's present on Cory and CC ROPTION The local machine mail program has the magic -r option HPASSWD The local machine has the hashed password stuff SPACCT under certain circumstances, allow remote login without acct VAX compile v7 code CORY compile v6 code, generate OLDTTY code, etc. CC compile v6 code, etc. At Berkeley, the conditonal flags are first defined in "whoami.h" on the local machine.. They are VAX, CORY, A, C, D, E, SRC. These set up these correspondences: Flags Implies VAX V7, ROPTION CORY PASSWDF, FUID, OLDTTY,HPASSWD,ROPTION A,C,D,E CC, CCTTY, PASSWDF, FUID, SPACCT SRC CC, OLDTTY, PASSWDF, FUID, SPACCT VANILLA OLDTTY For "normal" version 6 machines, there is a dummy machine definition for "VANILLA" which indicates the v6 UNIX options. Here let's try to account for the machine differences: 1) Cory has: old 1-char tty format /etc/passwdf a mail command which takes the -r option a different crypt 2) CC-A,CC-C,CC-D,CC-E have: CC tty format /etc/passwdf an unimproved mail program a different crypt allow certain accounts to be accessed w/o passwd 3) SRC is like CC but: has old 1-char tty format /etc/passwdf ? doesn't allow rlpr's w/o an account uses the CC crypt 4) VAX: the time system call is different uid and gid are diff a different crypt *** Adding a new machine To add another machine to the network, change these programs: The machine tables are all in config.h. 1. Change the path names in "Paths.h" and "nsh.c", and the makefile to suit. 2. Change "defs.h" to suit. 3. add in LOCALx section of config.h the usual information about the machine interconnections 4. add the name of the machine to the machine name table and its type to the machine type table 5. compile the network specifying the code type (CC, VAX, Cory, VANILLA) and the machine type *** Other files *** interact.c, listen.c - manually send packets speeds.c, speedr.c - send various length packets, use "time" to evaluate store.c, receive.c - send a file (use for backup) nettest.c - run daemons locally, using pipes instead of tty lines setmode.c - set the mode on the tty line driver to "cat" things thru