Commit | Line | Data |
---|---|---|
9eb668c9 BJ |
1 | |
2 | B E R K E L E Y N E T W O R K | |
3 | ||
4 | ||
5 | The code in this directory is the most up-to-date network source | |
6 | on the machine. | |
7 | ||
8 | *** Adding a new machine | |
9 | ||
10 | To add another machine to an existing network, change these programs: | |
11 | ||
12 | * mach.h: | |
13 | add an ifdef entry for the new machines | |
14 | * config.h: | |
15 | add in LOCALx section of config.h | |
16 | the usual information about the machine interconnections | |
17 | add the name of the machine to the machine | |
18 | name table and its type to the machine type table | |
19 | * Paths.h: | |
20 | Change the path names in "Paths.h". | |
21 | * makefile: | |
22 | change the makefile to suit. | |
23 | * nsh.c: | |
24 | Change the path names in "nsh.c". | |
25 | * sub.c: | |
26 | check routine "gothru" | |
27 | * v6mail.c: | |
28 | add machine names to "v6mail.c" | |
29 | ||
30 | To set up a new network, I suggest starting with two machines and | |
31 | get everything up as you like it, then including others. | |
32 | Follow the steps outlined above. A good way to see the specific | |
33 | places where another network has been changed is to | |
34 | grep RAND *.h *.c | |
35 | ||
36 | ||
37 | *** Other files *** | |
38 | interact.c, listen.c - manually send packets | |
39 | speeds.c, speedr.c - send various length packets, use "time" to evaluate | |
40 | store.c, receive.c - send a file (use for backup) | |
41 | nettest.c - run daemons locally, using pipes instead of tty lines | |
42 | setmode.c - set the mode on the tty line driver to "cat" things thru | |
43 | ||
44 | *** Taxonomy of net pgms being sent around: | |
45 | ||
46 | Internal: sendberkmail, prmail, mmail, mwrite | |
47 | External: net, netcp, netlpr, netmail | |
48 | Other: netdaemon, netstart, netq, netrm | |
49 | ||
50 | ||
51 | *** Naming Conventions (I may adopt these if I like them) *** | |
52 | The names of simple variables are composed of three parts. | |
53 | [type char] [string] [type tag] | |
54 | where | |
55 | typechar is one of | |
56 | i integer (int) | |
57 | l long integer (long) | |
58 | ch character (char) | |
59 | s string (char *) | |
60 | f logical (char) | |
61 | the (optional) string is any short descriptive string. | |
62 | the (optional) type tag is noe of (assume string is "foo"): | |
63 | ||
64 | fooMin minimum value of foo, for all foo, foo >= fooMin | |
65 | fooMax maximum value of foo, foo <= fooMax | |
66 | fooMac current maximum of foo, fooMin <= fooMac <= fooMax | |
67 | usually used for array substript | |
68 | fooOld old value of foo, as opposed to fooNew | |
69 | fooNew new value of foo, as opposes to fooOld | |
70 | ||
71 | Example: | |
72 | sdate a string containing a date | |
73 | sdateOld a string containing an old date | |
74 | sdateNew a string containing the "current" date | |
75 | ||
76 | Pointers | |
77 | ||
78 | pointer names are composed of the | |
79 | previous set of names precedd by a character "p", e.g. | |
80 | ||
81 | pch pointer to char (same as string) | |
82 | pi pointer to integer | |
83 | pltime pointer to a long with the time in it | |
84 | ||
85 | Counters | |
86 | Variables that count instances of things are preceded | |
87 | by 'n', e.g. | |
88 | nch number of chars | |
89 | nsdate number of date strings | |
90 | Indices | |
91 | Are stored as integers and preceded by 'i': | |
92 | ich index into char array | |
93 | is same as above | |
94 | ||
95 | Added types: | |
96 | uid userid as set by getuid() | |
97 | sn local name, w/o ':' | |
98 | fd (FILE *) file descriptor | |
99 | mch (char) 1 - letter machine code | |
100 | addr (char *) address, may include ':' | |
101 | ||
102 | Procedure names list | |
103 | parameters appear after procedure name, return value before. | |
104 | (Remember for external names only the first 7 characters are significant.) | |
105 | ||
106 | Compile Time Constants | |
107 | Are in upper-case. | |
108 | (Remember only first 8 characters are significant to the preprocessor). | |
109 | ||
110 | ||
111 | PROBLEMS | |
112 | ||
113 | If you have any problems or questions, don't hesitate | |
114 | to call me. | |
115 | Eric Schmidt | |
116 | 706 International House | |
117 | Berkeley, Cal. 94720 | |
118 | 415-642-9365 | |
119 | 642-9490 (messages) | |
120 | ||
121 | or | |
122 | C.S. Department | |
123 | Evans Hall | |
124 | U.C. Berkeley | |
125 | Berkeley, Cal. 94720 | |
126 | 415-642-4951 | |
127 | 642-1024 (messages) | |
128 | ||
129 | or mail Bell Research mail to "research!ucbvax!schmidt" | |
130 | or mail ARPANET mail to me at "schmidt@berkeley" or "schmidt@parc". |