home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: SHell self-extracting ARchive
(archive/shar).
You can browse this item here: 2144
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Newsgroup Content (archive/news)
| magic
| Supported |
100%
| dexvert
| SHell self-extracting ARchive (archive/shar)
| magic
| Supported |
100%
| dexvert
| Internet Message Format (text/imf)
| magic
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| news or mail, ASCII text
| default
| |
100%
| TrID
| E-Mail message (Var. 2)
| default
| |
100%
| checkBytes
| Printable ASCII
| default
| |
100%
| perlTextCheck
| Likely Text (Perl)
| default
| |
100%
| siegfried
| fmt/329 Shell Archive Format
| default
| |
100%
| detectItEasy
| Format: plain text[LF]
| default (weak)
| |
100%
| xdgMime
| message/rfc822
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 46 72 6f 6d 3a 20 65 72 | 69 63 40 73 61 63 74 6f |From: er|ic@sacto|
|00000010| 68 30 2e 53 41 43 2e 43 | 41 2e 55 53 20 28 45 72 |h0.SAC.C|A.US (Er|
|00000020| 69 63 20 4a 2e 20 4e 69 | 68 69 6c 6c 29 0a 4e 65 |ic J. Ni|hill).Ne|
|00000030| 77 73 67 72 6f 75 70 73 | 3a 20 61 6c 74 2e 73 6f |wsgroups|: alt.so|
|00000040| 75 72 63 65 73 2c 70 75 | 62 6e 65 74 2e 73 6f 75 |urces,pu|bnet.sou|
|00000050| 72 63 65 73 0a 53 75 62 | 6a 65 63 74 3a 20 63 69 |rces.Sub|ject: ci|
|00000060| 74 33 30 31 2e 70 61 72 | 74 32 0a 4d 65 73 73 61 |t301.par|t2.Messa|
|00000070| 67 65 2d 49 44 3a 20 3c | 34 33 37 39 40 73 61 63 |ge-ID: <|4379@sac|
|00000080| 74 6f 68 30 2e 53 41 43 | 2e 43 41 2e 55 53 3e 0a |toh0.SAC|.CA.US>.|
|00000090| 44 61 74 65 3a 20 32 35 | 20 4e 6f 76 20 39 30 20 |Date: 25| Nov 90 |
|000000a0| 32 31 3a 32 38 3a 31 30 | 20 47 4d 54 0a 0a 23 21 |21:28:10| GMT..#!|
|000000b0| 20 2f 62 69 6e 2f 73 68 | 0a 23 20 54 68 69 73 20 | /bin/sh|.# This |
|000000c0| 69 73 20 61 20 73 68 65 | 6c 6c 20 61 72 63 68 69 |is a she|ll archi|
|000000d0| 76 65 2c 20 6d 65 61 6e | 69 6e 67 3a 0a 23 20 31 |ve, mean|ing:.# 1|
|000000e0| 2e 20 52 65 6d 6f 76 65 | 20 65 76 65 72 79 74 68 |. Remove| everyth|
|000000f0| 69 6e 67 20 61 62 6f 76 | 65 20 74 68 65 20 23 21 |ing abov|e the #!|
|00000100| 20 2f 62 69 6e 2f 73 68 | 20 6c 69 6e 65 2e 0a 23 | /bin/sh| line..#|
|00000110| 20 32 2e 20 53 61 76 65 | 20 74 68 65 20 72 65 73 | 2. Save| the res|
|00000120| 75 6c 74 69 6e 67 20 74 | 65 78 74 20 69 6e 20 61 |ulting t|ext in a|
|00000130| 20 66 69 6c 65 2e 0a 23 | 20 33 2e 20 45 78 65 63 | file..#| 3. Exec|
|00000140| 75 74 65 20 74 68 65 20 | 66 69 6c 65 20 77 69 74 |ute the |file wit|
|00000150| 68 20 2f 62 69 6e 2f 73 | 68 20 28 6e 6f 74 20 63 |h /bin/s|h (not c|
|00000160| 73 68 29 20 74 6f 20 63 | 72 65 61 74 65 3a 0a 23 |sh) to c|reate:.#|
|00000170| 09 64 6f 63 73 0a 23 20 | 54 68 69 73 20 61 72 63 |.docs.# |This arc|
|00000180| 68 69 76 65 20 63 72 65 | 61 74 65 64 3a 20 53 75 |hive cre|ated: Su|
|00000190| 6e 20 4e 6f 76 20 32 35 | 20 31 32 3a 34 39 3a 30 |n Nov 25| 12:49:0|
|000001a0| 32 20 31 39 39 30 0a 65 | 78 70 6f 72 74 20 50 41 |2 1990.e|xport PA|
|000001b0| 54 48 3b 20 50 41 54 48 | 3d 2f 62 69 6e 3a 2f 75 |TH; PATH|=/bin:/u|
|000001c0| 73 72 2f 62 69 6e 3a 24 | 50 41 54 48 0a 69 66 20 |sr/bin:$|PATH.if |
|000001d0| 74 65 73 74 20 21 20 2d | 64 20 27 64 6f 63 73 27 |test ! -|d 'docs'|
|000001e0| 0a 74 68 65 6e 0a 09 65 | 63 68 6f 20 73 68 61 72 |.then..e|cho shar|
|000001f0| 3a 20 22 63 72 65 61 74 | 69 6e 67 20 64 69 72 65 |: "creat|ing dire|
|00000200| 63 74 6f 72 79 20 27 64 | 6f 63 73 27 22 0a 09 6d |ctory 'd|ocs'"..m|
|00000210| 6b 64 69 72 20 27 64 6f | 63 73 27 0a 66 69 0a 65 |kdir 'do|cs'.fi.e|
|00000220| 63 68 6f 20 73 68 61 72 | 3a 20 22 65 6e 74 65 72 |cho shar|: "enter|
|00000230| 69 6e 67 20 64 69 72 65 | 63 74 6f 72 79 20 27 64 |ing dire|ctory 'd|
|00000240| 6f 63 73 27 22 0a 63 64 | 20 27 64 6f 63 73 27 0a |ocs'".cd| 'docs'.|
|00000250| 65 63 68 6f 20 73 68 61 | 72 3a 20 22 65 78 74 72 |echo sha|r: "extr|
|00000260| 61 63 74 69 6e 67 20 27 | 63 6f 70 79 72 69 67 68 |acting '|copyrigh|
|00000270| 74 2e 64 6f 63 27 22 20 | 27 28 31 31 34 38 20 63 |t.doc'" |'(1148 c|
|00000280| 68 61 72 61 63 74 65 72 | 73 29 27 0a 69 66 20 74 |haracter|s)'.if t|
|00000290| 65 73 74 20 2d 66 20 27 | 63 6f 70 79 72 69 67 68 |est -f '|copyrigh|
|000002a0| 74 2e 64 6f 63 27 0a 74 | 68 65 6e 0a 09 65 63 68 |t.doc'.t|hen..ech|
|000002b0| 6f 20 73 68 61 72 3a 20 | 22 77 69 6c 6c 20 6e 6f |o shar: |"will no|
|000002c0| 74 20 6f 76 65 72 2d 77 | 72 69 74 65 20 65 78 69 |t over-w|rite exi|
|000002d0| 73 74 69 6e 67 20 66 69 | 6c 65 20 27 63 6f 70 79 |sting fi|le 'copy|
|000002e0| 72 69 67 68 74 2e 64 6f | 63 27 22 0a 65 6c 73 65 |right.do|c'".else|
|000002f0| 0a 63 61 74 20 3c 3c 20 | 5c 53 48 41 52 5f 45 4f |.cat << |\SHAR_EO|
|00000300| 46 20 3e 20 27 63 6f 70 | 79 72 69 67 68 74 2e 64 |F > 'cop|yright.d|
|00000310| 6f 63 27 0a 20 20 20 20 | 20 20 20 20 20 20 20 20 |oc'. | |
|00000320| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 43 69 | | Ci|
|00000330| 74 61 64 65 6c 2f 55 58 | 20 72 65 6c 65 61 73 65 |tadel/UX| release|
|00000340| 20 33 2e 30 31 2d 31 64 | 0a 20 20 20 20 20 43 6f | 3.01-1d|. Co|
|00000350| 70 79 72 69 67 68 74 20 | 28 63 29 20 31 39 38 39 |pyright |(c) 1989|
|00000360| 20 62 79 20 41 72 74 20 | 43 61 6e 63 72 6f 20 40 | by Art |Cancro @|
|00000370| 20 57 65 73 74 63 68 65 | 73 74 65 72 20 44 61 74 | Westche|ster Dat|
|00000380| 61 20 43 6f 6e 74 72 6f | 6c 20 53 79 73 74 65 6d |a Contro|l System|
|00000390| 73 0a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |s. | |
|000003a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 41 | | A|
|000003b0| 6c 6c 20 52 69 67 68 74 | 73 20 52 65 73 65 72 76 |ll Right|s Reserv|
|000003c0| 65 64 0a 20 20 20 20 20 | 0a 20 20 20 54 68 69 73 |ed. |. This|
|000003d0| 20 70 61 63 6b 61 67 65 | 20 6d 61 79 20 62 65 20 | package| may be |
|000003e0| 75 73 65 64 20 62 79 20 | 61 6e 79 6f 6e 65 20 66 |used by |anyone f|
|000003f0| 6f 72 20 61 6e 79 20 72 | 65 61 73 6f 6e 20 61 6e |or any r|eason an|
|00000400| 64 20 64 69 73 74 72 69 | 62 75 74 65 64 20 61 73 |d distri|buted as|
|00000410| 0a 77 69 64 65 6c 79 20 | 61 73 20 70 6f 73 73 69 |.widely |as possi|
|00000420| 62 6c 65 20 70 72 6f 76 | 69 64 65 64 20 6e 6f 20 |ble prov|ided no |
|00000430| 66 69 6e 61 6e 63 69 61 | 6c 20 63 6f 6d 70 65 6e |financia|l compen|
|00000440| 73 61 74 69 6f 6e 20 66 | 6f 72 20 74 68 65 20 70 |sation f|or the p|
|00000450| 61 63 6b 61 67 65 20 69 | 73 0a 69 6d 70 6f 73 65 |ackage i|s.impose|
|00000460| 64 2e 20 4d 6f 64 69 66 | 69 63 61 74 69 6f 6e 73 |d. Modif|ications|
|00000470| 20 6d 61 64 65 20 74 6f | 20 74 68 65 20 70 61 63 | made to| the pac|
|00000480| 6b 61 67 65 20 6d 61 79 | 20 4e 4f 54 20 62 65 20 |kage may| NOT be |
|00000490| 64 69 73 74 72 69 62 75 | 74 65 64 2c 20 69 6e 20 |distribu|ted, in |
|000004a0| 61 6e 79 0a 66 6f 72 6d | 61 74 2c 20 77 69 74 68 |any.form|at, with|
|000004b0| 6f 75 74 20 77 72 69 74 | 74 65 6e 20 70 65 72 6d |out writ|ten perm|
|000004c0| 69 73 73 69 6f 6e 20 66 | 72 6f 6d 20 74 68 65 20 |ission f|rom the |
|000004d0| 61 75 74 68 6f 72 2e 20 | 55 73 65 20 6f 66 20 74 |author. |Use of t|
|000004e0| 68 69 73 20 70 61 63 6b | 61 67 65 0a 63 65 72 74 |his pack|age.cert|
|000004f0| 69 66 69 65 73 20 79 6f | 75 72 20 61 67 72 65 65 |ifies yo|ur agree|
|00000500| 6d 65 6e 74 20 74 6f 20 | 63 6f 6d 70 6c 79 20 62 |ment to |comply b|
|00000510| 79 20 74 68 65 20 6c 69 | 63 65 6e 63 65 20 72 75 |y the li|cence ru|
|00000520| 6c 65 73 20 6f 75 74 6c | 69 6e 65 64 20 69 6e 20 |les outl|ined in |
|00000530| 74 68 69 73 20 66 69 6c | 65 2e 0a 54 68 65 20 61 |this fil|e..The a|
|00000540| 75 74 68 6f 72 20 61 73 | 73 75 6d 65 73 20 6e 6f |uthor as|sumes no|
|00000550| 20 72 65 73 70 6f 6e 73 | 69 62 69 6c 69 74 79 20 | respons|ibility |
|00000560| 66 6f 72 20 74 68 65 20 | 65 66 66 65 63 74 73 20 |for the |effects |
|00000570| 6f 66 20 61 6e 79 20 70 | 72 6f 67 72 61 6d 73 20 |of any p|rograms |
|00000580| 69 6e 63 6c 75 64 65 64 | 0a 69 6e 20 74 68 69 73 |included|.in this|
|00000590| 20 70 61 63 6b 61 67 65 | 20 6f 6e 20 61 6e 79 20 | package| on any |
|000005a0| 6f 66 20 74 68 65 20 75 | 73 65 72 27 73 20 68 61 |of the u|ser's ha|
|000005b0| 72 64 77 61 72 65 20 6f | 72 20 73 6f 66 74 77 61 |rdware o|r softwa|
|000005c0| 72 65 2e 0a 20 20 0a 20 | 20 54 68 69 73 20 70 61 |re.. . | This pa|
|000005d0| 63 6b 61 67 65 20 69 73 | 20 75 73 65 72 20 73 75 |ckage is| user su|
|000005e0| 70 70 6f 72 74 65 64 20 | 73 68 61 72 65 77 61 72 |pported |sharewar|
|000005f0| 65 2e 20 49 74 73 20 63 | 6f 6e 74 65 6e 74 73 20 |e. Its c|ontents |
|00000600| 72 65 70 72 65 73 65 6e | 74 20 63 6f 75 6e 74 6c |represen|t countl|
|00000610| 65 73 73 0a 68 6f 75 72 | 73 20 6f 66 20 77 6f 72 |ess.hour|s of wor|
|00000620| 6b 2e 20 49 66 20 79 6f | 75 20 64 6f 20 73 65 74 |k. If yo|u do set|
|00000630| 20 75 70 20 61 20 73 79 | 73 74 65 6d 20 75 73 69 | up a sy|stem usi|
|00000640| 6e 67 20 74 68 69 73 20 | 72 65 6c 65 61 73 65 2c |ng this |release,|
|00000650| 20 70 6c 65 61 73 65 20 | 73 65 6e 64 20 61 0a 63 | please |send a.c|
|00000660| 6f 6e 74 72 69 62 75 74 | 69 6f 6e 20 6f 66 20 24 |ontribut|ion of $|
|00000670| 32 30 20 74 6f 3a 0a 20 | 0a 20 20 20 20 20 20 20 |20 to:. |. |
|00000680| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 57 65 73 | | Wes|
|00000690| 74 63 68 65 73 74 65 72 | 20 44 61 74 61 20 43 6f |tchester| Data Co|
|000006a0| 6e 74 72 6f 6c 20 53 79 | 73 74 65 6d 73 0a 20 20 |ntrol Sy|stems. |
|000006b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006c0| 20 20 20 20 20 20 20 20 | 20 20 4f 6e 65 20 4b 69 | | One Ki|
|000006d0| 72 62 79 20 50 6c 61 7a | 61 0a 20 20 20 20 20 20 |rby Plaz|a. |
|000006e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 45 61 | | Ea|
|000006f0| 73 74 20 57 68 69 74 65 | 20 50 6c 61 69 6e 73 2c |st White| Plains,|
|00000700| 20 4e 59 20 31 30 36 30 | 34 2d 32 37 31 38 0a 20 | NY 1060|4-2718. |
|00000710| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000720| 20 20 20 41 54 54 4e 3a | 20 20 43 69 74 61 64 65 | ATTN:| Citade|
|00000730| 6c 2f 55 58 20 63 6f 6d | 6d 75 6e 69 63 61 74 69 |l/UX com|municati|
|00000740| 6f 6e 73 0a 20 0a 20 20 | 55 4e 49 58 20 69 73 20 |ons. . |UNIX is |
|00000750| 61 20 74 72 61 64 65 6d | 61 72 6b 20 6f 66 20 41 |a tradem|ark of A|
|00000760| 54 26 54 20 20 2f 20 20 | 58 65 6e 69 78 20 69 73 |T&T / |Xenix is|
|00000770| 20 61 20 74 72 61 64 65 | 6d 61 72 6b 20 6f 66 20 | a trade|mark of |
|00000780| 4d 69 63 72 6f 73 6f 66 | 74 2c 20 49 6e 63 2e 0a |Microsof|t, Inc..|
|00000790| 53 48 41 52 5f 45 4f 46 | 0a 66 69 0a 65 63 68 6f |SHAR_EOF|.fi.echo|
|000007a0| 20 73 68 61 72 3a 20 22 | 65 78 74 72 61 63 74 69 | shar: "|extracti|
|000007b0| 6e 67 20 27 68 61 63 6b | 2e 64 6f 63 27 22 20 27 |ng 'hack|.doc'" '|
|000007c0| 28 32 32 34 36 36 20 63 | 68 61 72 61 63 74 65 72 |(22466 c|haracter|
|000007d0| 73 29 27 0a 69 66 20 74 | 65 73 74 20 2d 66 20 27 |s)'.if t|est -f '|
|000007e0| 68 61 63 6b 2e 64 6f 63 | 27 0a 74 68 65 6e 0a 09 |hack.doc|'.then..|
|000007f0| 65 63 68 6f 20 73 68 61 | 72 3a 20 22 77 69 6c 6c |echo sha|r: "will|
|00000800| 20 6e 6f 74 20 6f 76 65 | 72 2d 77 72 69 74 65 20 | not ove|r-write |
|00000810| 65 78 69 73 74 69 6e 67 | 20 66 69 6c 65 20 27 68 |existing| file 'h|
|00000820| 61 63 6b 2e 64 6f 63 27 | 22 0a 65 6c 73 65 0a 63 |ack.doc'|".else.c|
|00000830| 61 74 20 3c 3c 20 5c 53 | 48 41 52 5f 45 4f 46 20 |at << \S|HAR_EOF |
|00000840| 3e 20 27 68 61 63 6b 2e | 64 6f 63 27 0a 20 68 61 |> 'hack.|doc'. ha|
|00000850| 63 6b 2e 64 6f 63 20 66 | 6f 72 20 43 69 74 61 64 |ck.doc f|or Citad|
|00000860| 65 6c 2f 55 58 0a 20 77 | 72 69 74 74 65 6e 20 62 |el/UX. w|ritten b|
|00000870| 79 20 41 72 74 20 43 61 | 6e 63 72 6f 20 2f 20 4f |y Art Ca|ncro / O|
|00000880| 63 74 6f 62 65 72 20 31 | 39 38 38 0a 20 20 20 0a |ctober 1|988. .|
|00000890| 20 20 4d 6f 73 74 20 6f | 66 20 74 68 69 73 20 64 | Most o|f this d|
|000008a0| 6f 63 75 6d 65 6e 74 20 | 77 61 73 20 74 61 6b 65 |ocument |was take|
|000008b0| 6e 20 66 72 6f 6d 20 74 | 68 65 20 6f 72 69 67 69 |n from t|he origi|
|000008c0| 6e 61 6c 20 68 61 63 6b | 2e 64 6f 63 20 66 72 6f |nal hack|.doc fro|
|000008d0| 6d 20 43 69 74 61 64 65 | 6c 2d 43 50 2f 4d 0a 61 |m Citade|l-CP/M.a|
|000008e0| 6e 64 20 43 69 74 61 64 | 65 6c 2d 38 36 2e 20 4d |nd Citad|el-86. M|
|000008f0| 6f 73 74 20 6f 66 20 74 | 68 65 20 63 6f 6e 63 65 |ost of t|he conce|
|00000900| 70 74 73 20 75 73 65 64 | 20 69 6e 20 43 69 74 61 |pts used| in Cita|
|00000910| 64 65 6c 2f 55 58 20 61 | 72 65 20 74 68 65 20 73 |del/UX a|re the s|
|00000920| 61 6d 65 2c 20 62 75 74 | 20 74 68 65 0a 66 69 6c |ame, but| the.fil|
|00000930| 65 6e 61 6d 65 73 20 61 | 6e 64 20 73 74 72 75 63 |enames a|nd struc|
|00000940| 74 75 72 65 73 20 61 72 | 65 20 64 69 66 66 65 72 |tures ar|e differ|
|00000950| 65 6e 74 2e 20 0a 20 20 | 0a 20 20 48 65 72 65 20 |ent. . |. Here |
|00000960| 61 72 65 20 74 68 65 20 | 6d 61 6a 6f 72 20 66 69 |are the |major fi|
|00000970| 6c 65 73 20 74 6f 20 62 | 65 20 64 69 73 63 75 73 |les to b|e discus|
|00000980| 73 65 64 3a 0a 20 20 0a | 20 20 6d 73 67 6d 61 69 |sed:. .| msgmai|
|00000990| 6e 20 20 20 20 20 20 20 | 20 20 54 68 65 20 62 69 |n | The bi|
|000009a0| 67 20 63 69 72 63 75 6c | 61 72 20 66 69 6c 65 20 |g circul|ar file |
|000009b0| 74 68 61 74 20 63 6f 6e | 74 61 69 6e 73 20 6d 65 |that con|tains me|
|000009c0| 73 73 61 67 65 20 74 65 | 78 74 0a 20 20 71 75 69 |ssage te|xt. qui|
|000009d0| 63 6b 72 6f 6f 6d 20 20 | 20 20 20 20 20 43 6f 6e |ckroom | Con|
|000009e0| 74 61 69 6e 73 20 72 6f | 6f 6d 20 69 6e 66 6f 20 |tains ro|om info |
|000009f0| 73 75 63 68 20 61 73 20 | 72 6f 6f 6d 20 6e 61 6d |such as |room nam|
|00000a00| 65 73 2c 20 73 74 61 74 | 73 2c 20 65 74 63 2e 0a |es, stat|s, etc..|
|00000a10| 20 20 66 75 6c 6c 72 6f | 6f 6d 20 20 20 20 20 20 | fullro|om |
|00000a20| 20 20 4f 6e 65 20 66 75 | 6c 6c 72 6d 20 66 69 6c | One fu|llrm fil|
|00000a30| 65 20 70 65 72 20 72 6f | 6f 6d 3a 20 6d 65 73 73 |e per ro|om: mess|
|00000a40| 61 67 65 20 6e 75 6d 62 | 65 72 73 20 61 6e 64 20 |age numb|ers and |
|00000a50| 70 6f 69 6e 74 65 72 73 | 2e 0a 20 20 75 73 65 72 |pointers|.. user|
|00000a60| 73 75 70 70 20 20 20 20 | 20 20 20 20 43 6f 6e 74 |supp | Cont|
|00000a70| 61 69 6e 73 20 69 6e 66 | 6f 20 66 6f 72 20 65 61 |ains inf|o for ea|
|00000a80| 63 68 20 75 73 65 72 20 | 6f 6e 20 74 68 65 20 73 |ch user |on the s|
|00000a90| 79 73 74 65 6d 2e 0a 20 | 20 0a 20 20 20 20 54 68 |ystem.. | . Th|
|00000aa0| 65 20 66 75 6e 64 61 6d | 65 6e 74 61 6c 20 73 74 |e fundam|ental st|
|00000ab0| 72 75 63 74 75 72 65 20 | 6f 66 20 74 68 65 20 73 |ructure |of the s|
|00000ac0| 79 73 74 65 6d 20 69 73 | 20 76 65 72 79 20 73 69 |ystem is| very si|
|00000ad0| 6d 70 6c 65 2e 20 6d 73 | 67 6d 61 69 6e 0a 69 73 |mple. ms|gmain.is|
|00000ae0| 20 61 20 63 69 72 63 75 | 6c 61 72 20 66 69 6c 65 | a circu|lar file|
|00000af0| 2e 20 20 4e 65 77 20 6d | 65 73 73 61 67 65 73 20 |. New m|essages |
|00000b00| 61 72 65 20 73 69 6d 70 | 6c 79 20 77 72 69 74 74 |are simp|ly writt|
|00000b10| 65 6e 20 61 72 6f 75 6e | 64 20 74 68 65 20 62 75 |en aroun|d the bu|
|00000b20| 66 66 65 72 0a 69 6e 20 | 61 6e 20 65 6e 64 6c 65 |ffer.in |an endle|
|00000b30| 73 73 20 63 69 72 63 6c | 65 2c 20 6f 76 65 72 77 |ss circl|e, overw|
|00000b40| 72 69 74 69 6e 67 20 6f | 6c 64 20 6d 65 73 73 61 |riting o|ld messa|
|00000b50| 67 65 73 20 69 6e 20 74 | 68 65 69 72 20 77 61 79 |ges in t|heir way|
|00000b60| 2e 20 20 54 68 65 72 65 | 20 69 73 0a 6e 6f 20 6f |. There| is.no o|
|00000b70| 74 68 65 72 20 77 61 79 | 20 6f 66 20 64 65 6c 65 |ther way| of dele|
|00000b80| 74 69 6e 67 20 6d 65 73 | 73 61 67 65 73 2c 20 61 |ting mes|sages, a|
|00000b90| 6e 64 20 74 65 78 74 20 | 69 73 20 6e 65 76 65 72 |nd text |is never|
|00000ba0| 20 73 68 75 66 66 6c 65 | 64 20 6f 6e 20 64 69 73 | shuffle|d on dis|
|00000bb0| 6b 2e 0a 4d 65 73 73 61 | 67 65 73 20 61 72 65 20 |k..Messa|ges are |
|00000bc0| 6e 75 6d 62 65 72 65 64 | 20 63 6f 6e 73 65 63 75 |numbered| consecu|
|00000bd0| 74 69 76 65 6c 79 20 61 | 6e 64 20 73 74 61 72 74 |tively a|nd start|
|00000be0| 20 77 69 74 68 20 61 6e | 20 46 46 20 28 68 65 78 | with an| FF (hex|
|00000bf0| 29 0a 62 79 74 65 2e 20 | 20 45 78 63 65 70 74 20 |).byte. | Except |
|00000c00| 66 6f 72 20 74 68 69 73 | 20 46 46 20 73 74 61 72 |for this| FF star|
|00000c10| 74 2d 6f 66 2d 6d 65 73 | 73 61 67 65 20 62 79 74 |t-of-mes|sage byt|
|00000c20| 65 2c 20 61 6c 6c 20 62 | 79 74 65 73 20 69 6e 20 |e, all b|ytes in |
|00000c30| 74 68 65 20 6d 65 73 73 | 61 67 65 0a 66 69 6c 65 |the mess|age.file|
|00000c40| 20 68 61 76 65 20 74 68 | 65 20 68 69 67 68 20 62 | have th|e high b|
|00000c50| 69 74 20 73 65 74 20 74 | 6f 20 30 2e 20 20 54 68 |it set t|o 0. Th|
|00000c60| 69 73 20 6d 65 61 6e 73 | 20 74 68 61 74 20 69 6e |is means| that in|
|00000c70| 20 70 72 69 6e 63 69 70 | 6c 65 20 69 74 20 69 73 | princip|le it is|
|00000c80| 0a 74 72 69 76 69 61 6c | 20 74 6f 20 73 63 61 6e |.trivial| to scan|
|00000c90| 20 74 68 72 6f 75 67 68 | 20 74 68 65 20 6d 65 73 | through| the mes|
|00000ca0| 73 61 67 65 20 66 69 6c | 65 20 61 6e 64 20 6c 6f |sage fil|e and lo|
|00000cb0| 63 61 74 65 20 6d 65 73 | 73 61 67 65 20 4e 20 69 |cate mes|sage N i|
|00000cc0| 66 20 69 74 0a 65 78 69 | 73 74 73 2c 20 6f 72 20 |f it.exi|sts, or |
|00000cd0| 72 65 74 75 72 6e 20 65 | 72 72 6f 72 2e 20 20 28 |return e|rror. (|
|00000ce0| 43 6f 6d 70 6c 65 78 69 | 74 69 65 73 2c 20 61 73 |Complexi|ties, as|
|00000cf0| 20 75 73 75 61 6c 2c 20 | 63 72 6f 70 20 75 70 20 | usual, |crop up |
|00000d00| 77 68 65 6e 20 77 65 0a | 74 72 79 20 66 6f 72 20 |when we.|try for |
|00000d10| 65 66 66 69 63 69 65 6e | 63 79 2e 2e 2e 29 0a 20 |efficien|cy...). |
|00000d20| 20 20 20 45 61 63 68 20 | 72 6f 6f 6d 20 69 73 20 | Each |room is |
|00000d30| 62 61 73 69 63 61 6c 6c | 79 20 6a 75 73 74 20 61 |basicall|y just a|
|00000d40| 20 6c 69 73 74 20 6f 66 | 20 6d 65 73 73 61 67 65 | list of| message|
|00000d50| 20 6e 75 6d 62 65 72 73 | 2e 20 20 45 61 63 68 20 | numbers|. Each |
|00000d60| 74 69 6d 65 0a 77 65 20 | 65 6e 74 65 72 20 61 20 |time.we |enter a |
|00000d70| 6e 65 77 20 6d 65 73 73 | 61 67 65 20 69 6e 20 61 |new mess|age in a|
|00000d80| 20 72 6f 6f 6d 2c 20 77 | 65 20 73 6c 69 64 65 20 | room, w|e slide |
|00000d90| 61 6c 6c 20 74 68 65 20 | 6f 6c 64 20 6d 65 73 73 |all the |old mess|
|00000da0| 61 67 65 2d 6e 75 6d 62 | 65 72 73 0a 64 6f 77 6e |age-numb|ers.down|
|00000db0| 20 61 20 73 6c 6f 74 2c | 20 61 6e 64 20 70 72 6f | a slot,| and pro|
|00000dc0| 62 61 62 6c 79 20 74 68 | 65 20 6f 6c 64 65 73 74 |bably th|e oldest|
|00000dd0| 20 6f 6e 65 20 66 61 6c | 6c 73 20 6f 66 66 20 74 | one fal|ls off t|
|00000de0| 68 65 20 62 6f 74 74 6f | 6d 2e 09 52 65 61 64 69 |he botto|m..Readi|
|00000df0| 6e 67 0a 61 20 72 6f 6f | 6d 20 69 73 20 6a 75 73 |ng.a roo|m is jus|
|00000e00| 74 20 61 20 6d 61 74 74 | 65 72 20 6c 6f 6f 6b 69 |t a matt|er looki|
|00000e10| 6e 67 20 75 70 20 74 68 | 65 20 6d 65 73 73 61 67 |ng up th|e messag|
|00000e20| 65 73 20 6f 6e 65 20 62 | 79 20 6f 6e 65 20 61 6e |es one b|y one an|
|00000e30| 64 20 70 72 69 6e 74 69 | 6e 67 0a 74 68 65 6d 20 |d printi|ng.them |
|00000e40| 6f 75 74 2e 20 20 49 66 | 20 74 68 65 20 6d 65 73 |out. If| the mes|
|00000e50| 73 61 67 65 20 68 61 73 | 20 62 65 65 6e 20 6f 76 |sage has| been ov|
|00000e60| 65 72 77 72 69 74 74 65 | 6e 20 61 6c 72 65 61 64 |erwritte|n alread|
|00000e70| 79 2c 20 77 65 20 6a 75 | 73 74 20 69 67 6e 6f 72 |y, we ju|st ignor|
|00000e80| 65 20 69 74 2e 0a 20 20 | 20 20 49 6d 70 6c 65 6d |e it.. | Implem|
|00000e90| 65 6e 74 69 6e 67 20 74 | 68 65 20 22 6e 65 77 20 |enting t|he "new |
|00000ea0| 6d 65 73 73 61 67 65 22 | 20 66 75 6e 63 74 69 6f |message"| functio|
|00000eb0| 6e 20 69 73 20 61 6c 73 | 6f 20 74 72 69 76 69 61 |n is als|o trivia|
|00000ec0| 6c 20 69 6e 20 70 72 69 | 6e 63 69 70 6c 65 3a 0a |l in pri|nciple:.|
|00000ed0| 77 65 20 6a 75 73 74 20 | 6b 65 65 70 20 74 72 61 |we just |keep tra|
|00000ee0| 63 6b 2c 20 66 6f 72 20 | 65 61 63 68 20 63 61 6c |ck, for |each cal|
|00000ef0| 6c 65 72 20 69 6e 20 74 | 68 65 20 75 73 65 72 6c |ler in t|he userl|
|00000f00| 6f 67 2c 20 6f 66 20 74 | 68 65 20 68 69 67 68 65 |og, of t|he highe|
|00000f10| 73 74 2d 6e 75 6d 62 65 | 72 65 64 0a 6d 65 73 73 |st-numbe|red.mess|
|00000f20| 61 67 65 20 77 68 69 63 | 68 20 65 78 69 73 74 65 |age whic|h existe|
|00000f30| 64 20 6f 6e 20 74 68 65 | 20 3e 6c 61 73 74 3c 20 |d on the| >last< |
|00000f40| 63 61 6c 6c 2e 20 20 28 | 52 65 6d 65 6d 62 65 72 |call. (|Remember|
|00000f50| 2c 20 6d 65 73 73 61 67 | 65 20 6e 75 6d 62 65 72 |, messag|e number|
|00000f60| 73 20 61 72 65 0a 73 69 | 6d 70 6c 79 20 61 73 73 |s are.si|mply ass|
|00000f70| 69 67 6e 65 64 20 73 65 | 71 75 65 6e 74 69 61 6c |igned se|quential|
|00000f80| 6c 79 20 65 61 63 68 20 | 74 69 6d 65 20 61 20 6d |ly each |time a m|
|00000f90| 65 73 73 61 67 65 20 69 | 73 20 63 72 65 61 74 65 |essage i|s create|
|00000fa0| 64 2e 20 20 54 68 69 73 | 0a 73 65 71 75 65 6e 63 |d. This|.sequenc|
|00000fb0| 65 20 69 73 20 67 6c 6f | 62 61 6c 20 74 6f 20 74 |e is glo|bal to t|
|00000fc0| 68 65 20 65 6e 74 69 72 | 65 20 73 79 73 74 65 6d |he entir|e system|
|00000fd0| 2c 20 6e 6f 74 20 6c 6f | 63 61 6c 20 77 69 74 68 |, not lo|cal with|
|00000fe0| 69 6e 20 61 20 72 6f 6f | 6d 2e 29 20 20 49 66 0a |in a roo|m.) If.|
|00000ff0| 77 65 20 69 67 6e 6f 72 | 65 20 61 6c 6c 20 6d 65 |we ignor|e all me|
|00001000| 73 73 61 67 65 2d 6e 75 | 6d 62 65 72 73 20 69 6e |ssage-nu|mbers in|
|00001010| 20 74 68 65 20 72 6f 6f | 6d 20 6c 65 73 73 20 74 | the roo|m less t|
|00001020| 68 61 6e 20 74 68 69 73 | 2c 20 6f 6e 6c 79 20 6e |han this|, only n|
|00001030| 65 77 20 6d 65 73 73 61 | 67 65 73 0a 77 69 6c 6c |ew messa|ges.will|
|00001040| 20 62 65 20 70 72 69 6e | 74 65 64 2e 20 20 56 6f | be prin|ted. Vo|
|00001050| 69 6c 61 21 20 0a 0a 09 | 09 6d 65 73 73 61 67 65 |ila! ...|.message|
|00001060| 20 66 6f 72 6d 61 74 20 | 6f 6e 20 64 69 73 6b 09 | format |on disk.|
|00001070| 28 6d 73 67 6d 61 69 6e | 29 0a 0a 20 20 45 61 63 |(msgmain|).. Eac|
|00001080| 68 20 6d 65 73 73 61 67 | 65 20 62 65 67 69 6e 73 |h messag|e begins|
|00001090| 20 77 69 74 68 20 61 6e | 20 46 46 20 62 79 74 65 | with an| FF byte|
|000010a0| 2e 20 54 68 65 20 6e 65 | 78 74 20 62 79 74 65 20 |. The ne|xt byte |
|000010b0| 77 69 6c 6c 20 74 68 65 | 6e 20 62 65 20 4d 45 53 |will the|n be MES|
|000010c0| 5f 4e 4f 52 4d 41 4c 2c | 0a 4d 45 53 5f 41 4e 4f |_NORMAL,|.MES_ANO|
|000010d0| 4e 2c 20 6f 72 20 4d 45 | 53 5f 41 4e 4f 4e 32 2c |N, or ME|S_ANON2,|
|000010e0| 20 64 65 70 65 6e 64 69 | 6e 67 20 6f 6e 20 77 68 | dependi|ng on wh|
|000010f0| 65 74 68 65 72 20 74 68 | 65 20 6d 65 73 73 61 67 |ether th|e messag|
|00001100| 65 20 69 6e 20 61 6e 6f | 6e 79 6d 6f 75 73 20 6f |e in ano|nymous o|
|00001110| 72 20 6e 6f 74 2e 0a 54 | 68 65 20 6e 65 78 74 20 |r not..T|he next |
|00001120| 62 79 74 65 20 69 73 20 | 65 69 74 68 65 72 20 61 |byte is |either a|
|00001130| 20 30 20 6f 72 20 31 2e | 20 49 66 20 69 74 20 69 | 0 or 1.| If it i|
|00001140| 73 20 30 2c 20 74 68 65 | 20 6d 65 73 73 61 67 65 |s 0, the| message|
|00001150| 20 77 69 6c 6c 20 62 65 | 20 70 72 69 6e 74 65 64 | will be| printed|
|00001160| 0a 77 69 74 68 20 74 68 | 65 20 66 6f 72 6d 61 74 |.with th|e format|
|00001170| 74 65 72 20 61 73 20 75 | 73 75 61 6c 2e 20 49 66 |ter as u|sual. If|
|00001180| 20 69 74 20 69 73 20 61 | 20 31 2c 20 74 68 65 20 | it is a| 1, the |
|00001190| 6d 65 73 73 61 67 65 20 | 69 73 20 64 75 6d 70 65 |message |is dumpe|
|000011a0| 64 20 62 79 74 65 20 62 | 79 0a 62 79 74 65 20 64 |d byte b|y.byte d|
|000011b0| 69 72 65 63 74 6c 79 20 | 74 6f 20 74 68 65 20 73 |irectly |to the s|
|000011c0| 63 72 65 65 6e 2e 20 41 | 66 74 65 72 20 74 68 65 |creen. A|fter the|
|000011d0| 73 65 20 74 68 72 65 65 | 20 6f 70 65 6e 69 6e 67 |se three| opening|
|000011e0| 20 62 79 74 65 73 2c 20 | 74 68 65 20 72 65 6d 61 | bytes, |the rema|
|000011f0| 69 6e 64 65 72 20 6f 66 | 0a 74 68 65 20 6d 65 73 |inder of|.the mes|
|00001200| 73 61 67 65 20 63 6f 6e | 73 69 73 74 73 20 6f 66 |sage con|sists of|
|00001210| 20 61 20 73 65 71 75 65 | 6e 63 65 20 6f 66 20 63 | a seque|nce of c|
|00001220| 68 61 72 61 63 74 65 72 | 20 73 74 72 69 6e 67 73 |haracter| strings|
|00001230| 2e 20 20 45 61 63 68 20 | 73 74 72 69 6e 67 0a 62 |. Each |string.b|
|00001240| 65 67 69 6e 73 20 77 69 | 74 68 20 61 20 74 79 70 |egins wi|th a typ|
|00001250| 65 20 62 79 74 65 20 69 | 6e 64 69 63 61 74 69 6e |e byte i|ndicatin|
|00001260| 67 20 74 68 65 20 6d 65 | 61 6e 69 6e 67 20 6f 66 |g the me|aning of|
|00001270| 20 74 68 65 20 73 74 72 | 69 6e 67 20 61 6e 64 20 | the str|ing and |
|00001280| 69 73 0a 65 6e 64 65 64 | 20 77 69 74 68 20 61 20 |is.ended| with a |
|00001290| 6e 75 6c 6c 2e 20 20 41 | 6c 6c 20 73 74 72 69 6e |null. A|ll strin|
|000012a0| 67 73 20 61 72 65 20 70 | 72 69 6e 74 61 62 6c 65 |gs are p|rintable|
|000012b0| 20 41 53 43 49 49 3a 20 | 69 6e 20 70 61 72 74 69 | ASCII: |in parti|
|000012c0| 63 75 6c 61 72 2c 0a 61 | 6c 6c 20 6e 75 6d 62 65 |cular,.a|ll numbe|
|000012d0| 72 73 20 61 72 65 20 69 | 6e 20 41 53 43 49 49 20 |rs are i|n ASCII |
|000012e0| 72 61 74 68 65 72 20 74 | 68 61 6e 20 62 69 6e 61 |rather t|han bina|
|000012f0| 72 79 2e 20 20 54 68 69 | 73 20 69 73 20 66 6f 72 |ry. Thi|s is for|
|00001300| 20 73 69 6d 70 6c 69 63 | 69 74 79 2c 0a 62 6f 74 | simplic|ity,.bot|
|00001310| 68 20 69 6e 20 69 6d 70 | 6c 65 6d 65 6e 74 69 6e |h in imp|lementin|
|00001320| 67 20 74 68 65 20 73 79 | 73 74 65 6d 20 61 6e 64 |g the sy|stem and|
|00001330| 20 69 6e 20 69 6d 70 6c | 65 6d 65 6e 74 69 6e 67 | in impl|ementing|
|00001340| 20 6f 74 68 65 72 20 63 | 6f 64 65 20 74 6f 0a 77 | other c|ode to.w|
|00001350| 6f 72 6b 20 77 69 74 68 | 20 74 68 65 20 73 79 73 |ork with| the sys|
|00001360| 74 65 6d 2e 20 20 46 6f | 72 20 69 6e 73 74 61 6e |tem. Fo|r instan|
|00001370| 63 65 2c 20 61 20 64 61 | 74 61 62 61 73 65 20 64 |ce, a da|tabase d|
|00001380| 72 69 76 65 6e 20 6f 66 | 66 20 43 69 74 61 64 65 |riven of|f Citade|
|00001390| 6c 20 61 72 63 68 69 76 | 65 73 0a 63 61 6e 20 64 |l archiv|es.can d|
|000013a0| 6f 20 77 69 6c 64 63 61 | 72 64 20 6d 61 74 63 68 |o wildca|rd match|
|000013b0| 69 6e 67 20 77 69 74 68 | 6f 75 74 20 77 6f 72 72 |ing with|out worr|
|000013c0| 79 69 6e 67 20 61 62 6f | 75 74 20 75 6e 70 61 63 |ying abo|ut unpac|
|000013d0| 6b 69 6e 67 20 62 69 6e | 61 72 79 20 64 61 74 61 |king bin|ary data|
|000013e0| 20 73 75 63 68 0a 61 73 | 20 64 61 74 65 73 20 66 | such.as| dates f|
|000013f0| 69 72 73 74 2e 20 20 54 | 6f 20 70 72 6f 76 69 64 |irst. T|o provid|
|00001400| 65 20 6c 61 74 65 72 20 | 64 6f 77 6e 77 61 72 64 |e later |downward|
|00001410| 20 63 6f 6d 70 61 74 61 | 62 69 6c 69 74 79 0a 61 | compata|bility.a|
|00001420| 6c 6c 20 73 6f 66 74 77 | 61 72 65 20 73 68 6f 75 |ll softw|are shou|
|00001430| 6c 64 20 62 65 20 77 72 | 69 74 74 65 6e 20 74 6f |ld be wr|itten to|
|00001440| 20 49 47 4e 4f 52 45 20 | 66 69 65 6c 64 73 20 6e | IGNORE |fields n|
|00001450| 6f 74 20 63 75 72 72 65 | 6e 74 6c 79 20 64 65 66 |ot curre|ntly def|
|00001460| 69 6e 65 64 2e 0a 0a 09 | 09 20 20 54 68 65 20 74 |ined....|. The t|
|00001470| 79 70 65 20 62 79 74 65 | 73 20 63 75 72 72 65 6e |ype byte|s curren|
|00001480| 74 6c 79 20 64 65 66 69 | 6e 65 64 20 61 72 65 3a |tly defi|ned are:|
|00001490| 20 09 0a 0a 42 59 54 45 | 09 4d 6e 65 6d 6f 6e 69 | ...BYTE|.Mnemoni|
|000014a0| 63 09 43 6f 6d 6d 65 6e | 74 73 0a 0a 54 09 44 61 |c.Commen|ts..T.Da|
|000014b0| 74 65 2f 54 69 6d 65 09 | 41 20 6c 6f 6e 67 20 63 |te/Time.|A long c|
|000014c0| 6f 6e 74 61 69 6e 69 6e | 67 20 74 68 65 20 64 61 |ontainin|g the da|
|000014d0| 74 65 20 61 6e 64 20 74 | 69 6d 65 20 6f 66 20 74 |te and t|ime of t|
|000014e0| 68 65 20 6d 65 73 73 61 | 67 65 20 69 6e 0a 20 20 |he messa|ge in. |
|000014f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001500| 20 20 20 20 20 20 73 74 | 61 6e 64 61 72 64 20 55 | st|andard U|
|00001510| 4e 49 58 20 66 6f 72 6d | 61 74 20 28 74 68 65 20 |NIX form|at (the |
|00001520| 6e 75 6d 62 65 72 20 6f | 66 20 73 65 63 6f 6e 64 |number o|f second|
|00001530| 73 20 73 69 6e 63 65 0a | 20 20 20 20 20 20 20 20 |s since.| |
|00001540| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001550| 4a 61 6e 75 61 72 79 20 | 31 2c 20 31 39 37 30 29 |January |1, 1970)|
|00001560| 0a 50 09 50 61 74 68 09 | 09 43 6f 6d 70 6c 65 74 |.P.Path.|.Complet|
|00001570| 65 20 70 61 74 68 20 6f | 66 20 6d 65 73 73 61 67 |e path o|f messag|
|00001580| 65 2c 20 61 73 20 69 6e | 20 74 68 65 20 55 73 65 |e, as in| the Use|
|00001590| 4e 65 74 20 6e 65 77 73 | 0a 09 09 09 70 72 6f 74 |Net news|....prot|
|000015a0| 6f 63 6f 6c 2e 20 41 20 | 75 73 65 72 20 73 68 6f |ocol. A |user sho|
|000015b0| 75 6c 64 20 62 65 20 61 | 62 6c 65 20 74 6f 20 73 |uld be a|ble to s|
|000015c0| 65 6e 64 20 55 55 43 50 | 20 6d 61 69 6c 20 74 6f |end UUCP| mail to|
|000015d0| 0a 09 09 09 74 68 69 73 | 20 70 61 74 68 2e 20 28 |....this| path. (|
|000015e0| 4e 6f 74 65 20 74 68 61 | 74 20 79 6f 75 72 20 73 |Note tha|t your s|
|000015f0| 79 73 74 65 6d 20 6e 61 | 6d 65 20 77 69 6c 6c 20 |ystem na|me will |
|00001600| 6e 6f 74 20 62 65 0a 09 | 09 09 74 61 63 6b 65 64 |not be..|..tacked|
|00001610| 20 6f 6e 74 6f 20 74 68 | 69 73 20 75 6e 74 69 6c | onto th|is until|
|00001620| 20 79 6f 75 27 72 65 20 | 73 65 6e 64 69 6e 67 20 | you're |sending |
|00001630| 74 68 65 20 6d 65 73 73 | 61 67 65 20 74 6f 0a 09 |the mess|age to..|
|00001640| 09 09 73 6f 6d 65 6f 6e | 65 20 65 6c 73 65 29 0a |..someon|e else).|
|00001650| 49 09 49 44 20 6f 6e 20 | 6f 72 69 67 09 41 20 6c |I.ID on |orig.A l|
|00001660| 6f 6e 67 20 63 6f 6e 74 | 61 69 6e 69 6e 67 20 74 |ong cont|aining t|
|00001670| 68 65 20 6d 65 73 73 61 | 67 65 20 49 44 20 6f 6e |he messa|ge ID on|
|00001680| 20 74 68 65 20 73 79 73 | 74 65 6d 20 74 68 65 0a | the sys|tem the.|
|00001690| 09 09 09 6d 65 73 73 61 | 67 65 20 6f 72 69 67 69 |...messa|ge origi|
|000016a0| 6e 61 74 65 64 20 6f 6e | 2e 0a 41 09 41 75 74 68 |nated on|..A.Auth|
|000016b0| 6f 72 09 09 4e 61 6d 65 | 20 6f 66 20 6f 72 69 67 |or..Name| of orig|
|000016c0| 69 6e 61 74 6f 72 20 6f | 66 20 6d 65 73 73 61 67 |inator o|f messag|
|000016d0| 65 2e 0a 52 09 52 65 63 | 69 70 69 65 6e 74 09 4f |e..R.Rec|ipient.O|
|000016e0| 6e 6c 79 20 70 72 65 73 | 65 6e 74 20 69 6e 20 4d |nly pres|ent in M|
|000016f0| 61 69 6c 20 6d 65 73 73 | 61 67 65 73 2e 0a 4f 09 |ail mess|ages..O.|
|00001700| 52 6f 6f 6d 09 09 52 6f | 6f 6d 20 6f 66 20 6f 72 |Room..Ro|om of or|
|00001710| 69 67 69 6e 2e 0a 4e 09 | 4e 6f 64 65 6e 61 6d 65 |igin..N.|Nodename|
|00001720| 09 43 6f 6e 74 61 69 6e | 73 20 6e 61 6d 65 20 6f |.Contain|s name o|
|00001730| 66 20 73 79 73 74 65 6d | 20 6d 65 73 73 61 67 65 |f system| message|
|00001740| 20 6f 72 69 67 69 6e 61 | 74 65 64 20 6f 6e 2e 0a | origina|ted on..|
|00001750| 44 09 44 65 73 74 69 6e | 61 74 69 6f 6e 09 43 6f |D.Destin|ation.Co|
|00001760| 6e 74 61 69 6e 73 20 6e | 61 6d 65 20 6f 66 20 74 |ntains n|ame of t|
|00001770| 68 65 20 73 79 73 74 65 | 6d 20 74 68 69 73 20 6d |he syste|m this m|
|00001780| 65 73 73 61 67 65 20 73 | 68 6f 75 6c 64 0a 09 09 |essage s|hould...|
|00001790| 09 62 65 20 73 65 6e 74 | 20 74 6f 2c 20 66 6f 72 |.be sent| to, for|
|000017a0| 20 6d 61 69 6c 20 72 6f | 75 74 69 6e 67 2e 0a 4d | mail ro|uting..M|
|000017b0| 09 4d 65 73 73 61 67 65 | 20 54 65 78 74 09 4e 6f |.Message| Text.No|
|000017c0| 72 6d 61 6c 20 41 53 43 | 49 49 2c 20 6e 65 77 6c |rmal ASC|II, newl|
|000017d0| 69 6e 65 73 20 73 65 70 | 65 72 61 74 65 64 20 62 |ines sep|erated b|
|000017e0| 79 20 43 52 27 73 20 6f | 72 20 4c 46 27 73 2c 0a |y CR's o|r LF's,.|
|000017f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001800| 20 20 20 20 20 20 20 20 | 6e 75 6c 6c 20 74 65 72 | |null ter|
|00001810| 6d 69 6e 61 74 65 64 20 | 61 73 20 61 6c 77 61 79 |minated |as alway|
|00001820| 73 2e 0a 20 20 0a 09 09 | 09 45 58 41 4d 50 4c 45 |s.. ...|.EXAMPLE|
|00001830| 0a 0a 4c 65 74 20 3c 46 | 46 3e 20 62 65 20 61 20 |..Let <F|F> be a |
|00001840| 30 78 46 46 20 62 79 74 | 65 2c 20 61 6e 64 20 3c |0xFF byt|e, and <|
|00001850| 30 3e 20 62 65 20 61 20 | 6e 75 6c 6c 20 28 30 78 |0> be a |null (0x|
|00001860| 30 30 29 20 62 79 74 65 | 2e 20 20 54 68 65 6e 20 |00) byte|. Then |
|00001870| 61 20 6d 65 73 73 61 67 | 65 0a 77 68 69 63 68 20 |a messag|e.which |
|00001880| 70 72 69 6e 74 73 20 61 | 73 2e 2e 2e 0a 0a 41 70 |prints a|s.....Ap|
|00001890| 72 20 31 32 2c 20 31 39 | 38 38 20 32 33 3a 31 36 |r 12, 19|88 23:16|
|000018a0| 20 46 72 6f 6d 20 54 65 | 73 74 20 55 73 65 72 20 | From Te|st User |
|000018b0| 49 6e 20 4e 65 74 77 6f | 72 6b 20 54 65 73 74 3e |In Netwo|rk Test>|
|000018c0| 20 40 6c 69 66 65 73 79 | 73 0a 48 61 76 65 20 61 | @lifesy|s.Have a|
|000018d0| 20 6e 69 63 65 20 64 61 | 79 21 0a 0a 20 6d 69 67 | nice da|y!.. mig|
|000018e0| 68 74 20 62 65 20 73 74 | 6f 72 65 64 20 61 73 2e |ht be st|ored as.|
|000018f0| 2e 2e 0a 3c 46 46 3e 3c | 34 30 3e 3c 30 3e 49 31 |...<FF><|40><0>I1|
|00001900| 32 33 34 35 3c 30 3e 50 | 6e 65 69 67 68 62 6f 72 |2345<0>P|neighbor|
|00001910| 21 6c 69 66 65 73 79 73 | 21 74 65 73 74 5f 75 73 |!lifesys|!test_us|
|00001920| 65 72 3c 30 3e 54 35 37 | 36 39 31 38 39 38 38 3c |er<0>T57|6918988<|
|00001930| 30 3e 20 20 20 20 28 63 | 6f 6e 74 69 6e 75 65 64 |0> (c|ontinued|
|00001940| 29 0a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 7c 4d 65 |).------|-----|Me|
|00001950| 73 67 20 49 44 23 7c 2d | 2d 4d 65 73 73 61 67 65 |sg ID#|-|-Message|
|00001960| 20 50 61 74 68 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | Path---|--------|
|00001970| 2d 2d 2d 2d 7c 2d 2d 44 | 61 74 65 2d 2d 2d 2d 2d |----|--D|ate-----|
|00001980| 2d 0a 0a 41 54 68 65 20 | 54 65 73 74 20 55 73 65 |-..AThe |Test Use|
|00001990| 72 3c 30 3e 4f 4e 65 74 | 77 6f 72 6b 20 54 65 73 |r<0>ONet|work Tes|
|000019a0| 74 3c 30 3e 4e 6c 69 66 | 65 73 79 73 3c 30 3e 4d |t<0>Nlif|esys<0>M|
|000019b0| 48 61 76 65 20 61 20 6e | 69 63 65 20 64 61 79 21 |Have a n|ice day!|
|000019c0| 3c 30 3e 0a 7c 2d 2d 2d | 2d 2d 41 75 74 68 6f 72 |<0>.|---|--Author|
|000019d0| 2d 2d 2d 2d 2d 7c 2d 52 | 6f 6f 6d 20 6e 61 6d 65 |-----|-R|oom name|
|000019e0| 2d 2d 2d 2d 2d 7c 2d 6e | 6f 64 65 6e 61 6d 65 2d |-----|-n|odename-|
|000019f0| 7c 2d 2d 4d 65 73 73 61 | 67 65 20 74 65 78 74 2d ||--Messa|ge text-|
|00001a00| 2d 2d 2d 2d 2d 2d 2d 2d | 0a 0a 20 57 65 69 72 64 |--------|.. Weird|
|00001a10| 20 74 68 69 6e 67 73 20 | 63 61 6e 20 68 61 70 70 | things |can happ|
|00001a20| 65 6e 20 69 66 20 66 69 | 65 6c 64 73 20 61 72 65 |en if fi|elds are|
|00001a30| 20 6d 69 73 73 69 6e 67 | 2c 20 65 73 70 65 63 69 | missing|, especi|
|00001a40| 61 6c 6c 79 20 69 66 20 | 79 6f 75 20 75 73 65 20 |ally if |you use |
|00001a50| 74 68 65 0a 6e 65 74 77 | 6f 72 6b 65 72 2e 20 42 |the.netw|orker. B|
|00001a60| 75 74 20 62 61 73 69 63 | 61 6c 6c 79 2c 20 74 68 |ut basic|ally, th|
|00001a70| 65 20 64 61 74 65 2c 20 | 61 75 74 68 6f 72 2c 20 |e date, |author, |
|00001a80| 72 6f 6f 6d 2c 20 61 6e | 64 20 6e 6f 64 65 6e 61 |room, an|d nodena|
|00001a90| 6d 65 20 6d 61 79 20 62 | 65 20 69 6e 20 61 6e 79 |me may b|e in any|
|00001aa0| 0a 6f 72 64 65 72 2e 20 | 42 75 74 20 74 68 65 20 |.order. |But the |
|00001ab0| 6c 65 61 64 69 6e 67 20 | 66 69 65 6c 64 73 20 61 |leading |fields a|
|00001ac0| 6e 64 20 74 68 65 20 6d | 65 73 73 61 67 65 20 74 |nd the m|essage t|
|00001ad0| 65 78 74 20 6d 75 73 74 | 20 72 65 6d 61 69 6e 20 |ext must| remain |
|00001ae0| 69 6e 20 74 68 65 20 73 | 61 6d 65 0a 70 6c 61 63 |in the s|ame.plac|
|00001af0| 65 2e 0a 0a 09 09 09 20 | 20 20 20 4e 65 74 77 6f |e...... | Netwo|
|00001b00| 72 6b 69 6e 67 0a 0a 43 | 69 74 61 64 65 6c 20 6e |rking..C|itadel n|
|00001b10| 6f 64 65 73 20 6e 65 74 | 77 6f 72 6b 20 62 79 20 |odes net|work by |
|00001b20| 73 68 61 72 69 6e 67 20 | 6f 6e 65 20 6f 72 20 6d |sharing |one or m|
|00001b30| 6f 72 65 20 72 6f 6f 6d | 73 20 76 69 61 20 75 75 |ore room|s via uu|
|00001b40| 63 70 2e 20 41 6e 79 20 | 43 69 74 61 64 65 6c 20 |cp. Any |Citadel |
|00001b50| 6e 6f 64 65 0a 63 61 6e | 20 63 68 6f 6f 73 65 20 |node.can| choose |
|00001b60| 74 6f 20 73 68 61 72 65 | 20 6d 65 73 73 61 67 65 |to share| message|
|00001b70| 73 20 77 69 74 68 20 61 | 6e 79 20 6f 74 68 65 72 |s with a|ny other|
|00001b80| 20 43 69 74 61 64 65 6c | 20 6e 6f 64 65 2c 20 74 | Citadel| node, t|
|00001b90| 68 72 6f 75 67 68 20 74 | 68 65 20 73 65 6e 64 69 |hrough t|he sendi|
|00001ba0| 6e 67 0a 6f 66 20 73 70 | 6f 6f 6c 20 66 69 6c 65 |ng.of sp|ool file|
|00001bb0| 73 2e 20 54 68 65 20 73 | 65 6e 64 69 6e 67 20 73 |s. The s|ending s|
|00001bc0| 79 73 74 65 6d 20 74 61 | 6b 65 73 20 61 6c 6c 20 |ystem ta|kes all |
|00001bd0| 6d 65 73 73 61 67 65 73 | 20 69 74 20 68 61 73 6e |messages| it hasn|
|00001be0| 27 74 20 73 65 6e 74 20 | 79 65 74 2c 20 61 6e 64 |'t sent |yet, and|
|00001bf0| 0a 73 70 6f 6f 6c 73 20 | 74 68 65 6d 20 74 6f 20 |.spools |them to |
|00001c00| 74 68 65 20 72 65 63 69 | 65 76 69 6e 67 20 73 79 |the reci|eving sy|
|00001c10| 73 74 65 6d 2c 20 77 68 | 69 63 68 20 70 6f 73 74 |stem, wh|ich post|
|00001c20| 73 20 74 68 65 6d 20 69 | 6e 20 74 68 65 20 72 6f |s them i|n the ro|
|00001c30| 6f 6d 73 2e 0a 0a 43 6f | 6d 70 6c 65 78 69 74 69 |oms...Co|mplexiti|
|00001c40| 65 73 20 61 72 69 73 65 | 20 70 72 69 6d 61 72 69 |es arise| primari|
|00001c50| 6c 79 20 66 72 6f 6d 20 | 74 68 65 20 70 6f 73 73 |ly from |the poss|
|00001c60| 69 62 69 6c 69 74 79 20 | 6f 66 20 64 65 6e 73 65 |ibility |of dense|
|00001c70| 6c 79 20 63 6f 6e 6e 65 | 63 74 65 64 0a 6e 65 74 |ly conne|cted.net|
|00001c80| 77 6f 72 6b 73 3a 20 6f | 6e 65 20 64 6f 65 73 20 |works: o|ne does |
|00001c90| 6e 6f 74 20 77 69 73 68 | 20 74 6f 20 61 63 63 75 |not wish| to accu|
|00001ca0| 6d 75 6c 61 74 65 20 6d | 75 6c 74 69 70 6c 65 20 |mulate m|ultiple |
|00001cb0| 63 6f 70 69 65 73 20 6f | 66 20 61 20 67 69 76 65 |copies o|f a give|
|00001cc0| 6e 0a 6d 65 73 73 61 67 | 65 2c 20 77 68 69 63 68 |n.messag|e, which|
|00001cd0| 20 63 61 6e 20 65 61 73 | 69 6c 79 20 68 61 70 70 | can eas|ily happ|
|00001ce0| 65 6e 2e 20 20 4e 6f 72 | 20 64 6f 65 73 20 6f 6e |en. Nor| does on|
|00001cf0| 65 20 77 61 6e 74 20 74 | 6f 20 73 65 65 20 6f 6c |e want t|o see ol|
|00001d00| 64 20 6d 65 73 73 61 67 | 65 73 0a 70 65 72 63 6f |d messag|es.perco|
|00001d10| 6c 61 74 69 6e 67 20 69 | 6e 64 65 66 69 6e 69 74 |lating i|ndefinit|
|00001d20| 65 6c 79 20 74 68 72 6f | 75 67 68 20 74 68 65 20 |ely thro|ugh the |
|00001d30| 73 79 73 74 65 6d 2e 0a | 0a 54 68 69 73 20 70 72 |system..|.This pr|
|00001d40| 6f 62 6c 65 6d 20 69 73 | 20 68 61 6e 64 6c 65 64 |oblem is| handled|
|00001d50| 20 62 79 20 61 20 73 69 | 6d 70 6c 65 20 62 72 75 | by a si|mple bru|
|00001d60| 74 65 2d 66 6f 72 63 65 | 20 6d 65 63 68 61 6e 69 |te-force| mechani|
|00001d70| 73 6d 3a 20 65 61 63 68 | 20 6e 6f 64 65 0a 6b 65 |sm: each| node.ke|
|00001d80| 65 70 73 20 61 20 6c 69 | 73 74 20 6f 66 20 61 6c |eps a li|st of al|
|00001d90| 6c 20 6d 65 73 73 61 67 | 65 73 20 69 74 20 68 61 |l messag|es it ha|
|00001da0| 73 20 73 65 65 6e 20 72 | 65 63 65 6e 74 6c 79 2c |s seen r|ecently,|
|00001db0| 20 72 65 63 6f 72 64 69 | 6e 67 20 6f 72 69 67 69 | recordi|ng origi|
|00001dc0| 6e 0a 73 79 73 74 65 6d | 2c 20 63 72 65 61 74 69 |n.system|, creati|
|00001dd0| 6f 6e 20 64 61 74 65 2c | 20 61 6e 64 20 61 75 74 |on date,| and aut|
|00001de0| 68 6f 72 2e 20 57 68 65 | 6e 20 70 72 6f 63 65 73 |hor. Whe|n proces|
|00001df0| 73 69 6e 67 20 72 65 63 | 69 65 76 65 64 20 6d 65 |sing rec|ieved me|
|00001e00| 73 73 61 67 65 73 2c 20 | 6f 6e 65 73 0a 77 68 69 |ssages, |ones.whi|
|00001e10| 63 68 20 68 61 76 65 20 | 61 6c 72 65 61 64 79 20 |ch have |already |
|00001e20| 62 65 65 6e 20 73 65 65 | 6e 2c 20 6f 72 20 77 68 |been see|n, or wh|
|00001e30| 69 63 68 20 61 72 65 20 | 74 6f 6f 20 6f 6c 64 20 |ich are |too old |
|00001e40| 74 6f 20 62 65 20 72 65 | 6d 65 6d 62 65 72 65 64 |to be re|membered|
|00001e50| 2c 0a 61 72 65 20 73 6b | 69 70 70 65 64 2e 20 20 |,.are sk|ipped. |
|00001e60| 4d 65 73 73 61 67 65 73 | 20 63 61 6e 20 70 65 72 |Messages| can per|
|00001e70| 63 6f 6c 61 74 65 20 6f | 75 74 77 61 72 64 20 74 |colate o|utward t|
|00001e80| 68 72 6f 75 67 68 20 61 | 20 6c 61 72 67 65 20 6e |hrough a| large n|
|00001e90| 65 74 77 6f 72 6b 0a 77 | 69 74 68 20 6e 6f 20 67 |etwork.w|ith no g|
|00001ea0| 6c 6f 62 61 6c 20 72 6f | 75 74 69 6e 67 20 6f 72 |lobal ro|uting or|
|00001eb0| 20 63 6f 6e 74 72 6f 6c | 2c 20 62 75 74 20 64 6f | control|, but do|
|00001ec0| 20 6e 6f 74 20 72 65 70 | 72 6f 64 75 63 65 20 77 | not rep|roduce w|
|00001ed0| 69 6c 64 6c 79 20 6f 72 | 0a 63 79 63 6c 65 20 69 |ildly or|.cycle i|
|00001ee0| 6e 64 65 66 69 6e 69 74 | 65 6c 79 2e 20 41 6c 73 |ndefinit|ely. Als|
|00001ef0| 6f 2c 20 77 68 65 6e 20 | 73 65 6e 64 69 6e 67 20 |o, when |sending |
|00001f00| 6d 65 73 73 61 67 65 73 | 20 74 6f 20 61 6e 6f 74 |messages| to anot|
|00001f10| 68 65 72 20 73 79 73 74 | 65 6d 2c 20 74 68 65 0a |her syst|em, the.|
|00001f20| 6e 65 74 77 6f 72 6b 65 | 72 20 63 61 6e 20 6c 6f |networke|r can lo|
|00001f30| 6f 6b 20 61 74 20 61 20 | 6d 65 73 73 61 67 65 27 |ok at a |message'|
|00001f40| 73 20 50 20 28 70 61 74 | 68 29 20 66 69 65 6c 64 |s P (pat|h) field|
|00001f50| 20 66 6f 72 20 74 68 65 | 20 72 65 63 65 69 76 69 | for the| receivi|
|00001f60| 6e 67 20 73 79 73 74 65 | 6d 27 73 0a 6e 61 6d 65 |ng syste|m's.name|
|00001f70| 2e 20 49 66 20 69 74 20 | 66 69 6e 64 73 20 69 74 |. If it |finds it|
|00001f80| 2c 20 74 68 65 20 73 79 | 73 74 65 6d 20 61 6c 72 |, the sy|stem alr|
|00001f90| 65 61 64 79 20 68 61 73 | 20 73 65 65 6e 20 74 68 |eady has| seen th|
|00001fa0| 61 74 20 6d 65 73 73 61 | 67 65 2c 20 73 6f 20 69 |at messa|ge, so i|
|00001fb0| 74 20 64 6f 65 73 6e 27 | 74 0a 73 65 6e 64 20 69 |t doesn'|t.send i|
|00001fc0| 74 20 61 20 6e 65 77 20 | 63 6f 70 79 2e 20 4e 6f |t a new |copy. No|
|00001fd0| 74 65 20 74 68 61 74 20 | 73 6f 6d 65 20 6f 6c 64 |te that |some old|
|00001fe0| 65 72 20 76 65 72 73 69 | 6f 6e 73 20 64 6f 20 6e |er versi|ons do n|
|00001ff0| 6f 74 20 73 75 70 70 6f | 72 74 20 74 68 65 20 50 |ot suppo|rt the P|
|00002000| 20 66 69 65 6c 64 2c 0a | 73 6f 20 6d 61 6b 65 20 | field,.|so make |
|00002010| 73 75 72 65 20 74 68 61 | 74 20 69 74 20 77 6f 72 |sure tha|t it wor|
|00002020| 6b 73 20 61 64 65 71 75 | 61 74 65 6c 79 20 77 69 |ks adequ|ately wi|
|00002030| 74 68 6f 75 74 20 74 68 | 69 73 20 6c 61 73 74 20 |thout th|is last |
|00002040| 66 65 61 74 75 72 65 20 | 28 61 6c 74 68 6f 75 67 |feature |(althoug|
|00002050| 68 0a 69 74 20 73 68 6f | 75 6c 64 20 62 65 20 69 |h.it sho|uld be i|
|00002060| 6d 70 6c 65 6d 65 6e 74 | 65 64 20 62 65 63 61 75 |mplement|ed becau|
|00002070| 73 65 20 69 74 20 73 61 | 76 65 73 20 6c 6f 74 73 |se it sa|ves lots|
|00002080| 20 6f 66 20 63 6f 6e 6e | 65 63 74 20 74 69 6d 65 | of conn|ect time|
|00002090| 29 2e 0a 0a 54 68 65 20 | 61 62 6f 76 65 20 64 69 |)...The |above di|
|000020a0| 73 63 75 73 73 69 6f 6e | 20 73 68 6f 75 6c 64 20 |scussion| should |
|000020b0| 6d 61 6b 65 20 74 68 65 | 20 66 75 6e 63 74 69 6f |make the| functio|
|000020c0| 6e 20 6f 66 20 74 68 65 | 20 0a 66 69 65 6c 64 73 |n of the| .fields|
|000020d0| 20 72 65 61 73 6f 6e 61 | 62 6c 79 20 63 6c 65 61 | reasona|bly clea|
|000020e0| 72 3a 0a 0a 20 6f 20 20 | 54 72 61 76 65 6c 6c 69 |r:.. o |Travelli|
|000020f0| 6e 67 20 6d 65 73 73 61 | 67 65 73 20 6e 65 65 64 |ng messa|ges need|
|00002100| 20 74 6f 20 63 61 72 72 | 79 20 6f 72 69 67 69 6e | to carr|y origin|
|00002110| 61 6c 20 6d 65 73 73 61 | 67 65 2d 69 64 2c 20 73 |al messa|ge-id, s|
|00002120| 79 73 74 65 6d 20 6f 66 | 20 6f 72 69 67 69 6e 2c |ystem of| origin,|
|00002130| 0a 20 20 20 20 64 61 74 | 65 20 6f 66 20 6f 72 69 |. dat|e of ori|
|00002140| 67 69 6e 2c 20 61 6e 64 | 20 61 75 74 68 6f 72 20 |gin, and| author |
|00002150| 77 69 74 68 20 74 68 65 | 6d 2c 20 74 6f 20 6b 65 |with the|m, to ke|
|00002160| 65 70 20 72 65 70 72 6f | 64 75 63 74 69 6f 6e 20 |ep repro|duction |
|00002170| 61 6e 64 0a 20 20 20 20 | 63 79 63 6c 69 6e 67 20 |and. |cycling |
|00002180| 75 6e 64 65 72 20 63 6f | 6e 74 72 6f 6c 2e 20 50 |under co|ntrol. P|
|00002190| 61 74 68 20 69 73 20 68 | 69 67 68 6c 79 20 72 65 |ath is h|ighly re|
|000021a0| 63 63 6f 6d 65 6e 64 65 | 64 2e 0a 0a 28 55 6e 63 |ccomende|d...(Unc|
|000021b0| 6f 69 6e 63 69 64 65 6e | 74 61 6c 6c 79 29 20 74 |oinciden|tally) t|
|000021c0| 68 65 20 66 6f 72 6d 61 | 74 20 75 73 65 64 20 74 |he forma|t used t|
|000021d0| 6f 20 74 72 61 6e 73 6d | 69 74 20 6d 65 73 73 61 |o transm|it messa|
|000021e0| 67 65 73 20 66 6f 72 20 | 6e 65 74 77 6f 72 6b 69 |ges for |networki|
|000021f0| 6e 67 0a 70 75 72 70 6f | 73 65 73 20 69 73 20 70 |ng.purpo|ses is p|
|00002200| 72 65 63 69 73 65 6c 79 | 20 74 68 61 74 20 75 73 |recisely| that us|
|00002210| 65 64 20 6f 6e 20 64 69 | 73 6b 2c 20 65 78 63 65 |ed on di|sk, exce|
|00002220| 70 74 20 74 68 61 74 20 | 74 68 65 72 65 20 6d 61 |pt that |there ma|
|00002230| 79 20 62 65 20 61 6e 79 | 20 61 6d 6f 75 6e 74 0a |y be any| amount.|
|00002240| 6f 66 20 67 61 72 62 61 | 67 65 20 62 65 74 77 65 |of garba|ge betwe|
|00002250| 65 6e 20 74 68 65 20 6e | 75 6c 6c 20 65 6e 64 69 |en the n|ull endi|
|00002260| 6e 67 20 61 20 6d 65 73 | 73 61 67 65 20 61 6e 64 |ng a mes|sage and|
|00002270| 20 74 68 65 20 3c 46 46 | 3e 20 73 74 61 72 74 69 | the <FF|> starti|
|00002280| 6e 67 20 74 68 65 20 6e | 65 78 74 0a 6f 6e 65 2e |ng the n|ext.one.|
|00002290| 20 54 68 69 73 20 61 6c | 6c 6f 77 73 20 67 72 65 | This al|lows gre|
|000022a0| 61 74 65 72 20 63 6f 6d | 70 61 74 69 62 69 6c 69 |ater com|patibili|
|000022b0| 74 79 20 69 66 20 73 6c | 69 67 68 74 20 70 72 6f |ty if sl|ight pro|
|000022c0| 62 6c 65 6d 73 20 63 72 | 6f 70 20 75 70 2e 20 54 |blems cr|op up. T|
|000022d0| 68 65 20 63 75 72 72 65 | 6e 74 0a 64 69 73 74 72 |he curre|nt.distr|
|000022e0| 69 62 75 74 69 6f 6e 20 | 69 6e 63 6c 75 64 65 73 |ibution |includes|
|000022f0| 20 6e 65 74 70 72 6f 63 | 2e 63 2c 20 77 68 69 63 | netproc|.c, whic|
|00002300| 68 20 69 73 20 62 61 73 | 69 63 61 6c 6c 79 20 61 |h is bas|ically a|
|00002310| 20 64 61 74 61 62 61 73 | 65 20 69 6e 74 65 67 72 | databas|e integr|
|00002320| 61 74 6f 72 3b 0a 70 6c | 65 61 73 65 20 73 65 65 |ator;.pl|ease see|
|00002330| 20 6e 65 74 77 6f 72 6b | 2e 64 6f 63 20 6f 6e 20 | network|.doc on |
|00002340| 69 74 73 20 6f 70 65 72 | 61 74 69 6f 6e 20 61 6e |its oper|ation an|
|00002350| 64 20 66 75 6e 63 74 69 | 6f 6e 61 6c 69 74 79 20 |d functi|onality |
|00002360| 28 69 66 20 61 6e 79 29 | 2e 0a 0a 09 09 09 70 6f |(if any)|......po|
|00002370| 72 74 61 62 69 6c 69 74 | 79 20 70 72 6f 62 6c 65 |rtabilit|y proble|
|00002380| 6d 73 0a 0a 54 68 65 20 | 6d 61 6a 6f 72 20 70 72 |ms..The |major pr|
|00002390| 6f 62 6c 65 6d 20 73 65 | 65 6d 73 20 74 6f 20 62 |oblem se|ems to b|
|000023a0| 65 20 74 68 61 74 20 6e | 6f 20 74 77 6f 20 74 74 |e that n|o two tt|
|000023b0| 79 20 64 65 76 69 63 65 | 73 20 61 72 65 20 65 78 |y device|s are ex|
|000023c0| 61 63 74 6c 79 20 61 6c | 69 6b 65 2e 20 59 6f 75 |actly al|ike. You|
|000023d0| 0a 77 69 6c 6c 20 70 72 | 6f 62 61 62 6c 79 20 6e |.will pr|obably n|
|000023e0| 65 65 64 20 74 6f 20 61 | 64 6a 75 73 74 20 74 68 |eed to a|djust th|
|000023f0| 65 20 73 65 74 74 69 6e | 67 73 20 74 6f 20 66 69 |e settin|gs to fi|
|00002400| 74 20 79 6f 75 72 20 73 | 79 73 74 65 6d 3b 20 63 |t your s|ystem; c|
|00002410| 68 65 63 6b 20 74 68 65 | 0a 73 74 74 79 62 62 73 |heck the|.sttybbs|
|00002420| 28 29 20 72 6f 75 74 69 | 6e 65 20 66 6f 72 20 74 |() routi|ne for t|
|00002430| 68 69 73 2e 0a 0a 09 09 | 09 22 52 6f 6f 6d 22 20 |his.....|."Room" |
|00002440| 72 65 63 6f 72 64 73 20 | 28 71 75 69 63 6b 72 6f |records |(quickro|
|00002450| 6f 6d 2f 66 75 6c 6c 72 | 6f 6f 6d 29 0a 0a 54 68 |om/fullr|oom)..Th|
|00002460| 65 20 72 6f 6f 6d 73 20 | 61 72 65 20 62 61 73 69 |e rooms |are basi|
|00002470| 63 61 6c 6c 79 20 69 6e | 64 69 63 65 73 20 69 6e |cally in|dices in|
|00002480| 74 6f 20 6d 73 67 6d 61 | 69 6e 2c 20 74 68 65 20 |to msgma|in, the |
|00002490| 6d 65 73 73 61 67 65 20 | 66 69 6c 65 2e 0a 41 73 |message |file..As|
|000024a0| 20 6e 6f 74 65 64 20 69 | 6e 20 74 68 65 20 6f 76 | noted i|n the ov|
|000024b0| 65 72 76 69 65 77 2c 20 | 65 61 63 68 20 69 73 20 |erview, |each is |
|000024c0| 65 73 73 65 6e 74 69 61 | 6c 6c 79 20 61 6e 20 61 |essentia|lly an a|
|000024d0| 72 72 61 79 20 6f 66 20 | 70 6f 69 6e 74 65 72 73 |rray of |pointers|
|000024e0| 20 69 6e 74 6f 0a 74 68 | 65 20 6d 65 73 73 61 67 | into.th|e messag|
|000024f0| 65 20 66 69 6c 65 2e 20 | 20 54 68 65 20 70 6f 69 |e file. | The poi|
|00002500| 6e 74 65 72 73 20 63 6f | 6e 73 69 73 74 20 6f 66 |nters co|nsist of|
|00002510| 20 61 20 33 32 2d 62 69 | 74 20 6d 65 73 73 61 67 | a 32-bi|t messag|
|00002520| 65 20 49 44 20 6e 75 6d | 62 65 72 0a 28 77 65 20 |e ID num|ber.(we |
|00002530| 77 69 6c 6c 20 77 72 61 | 70 20 61 72 6f 75 6e 64 |will wra|p around|
|00002540| 20 61 74 20 33 32 20 62 | 69 74 73 20 66 6f 72 20 | at 32 b|its for |
|00002550| 74 68 65 73 65 20 70 75 | 72 70 6f 73 65 73 29 20 |these pu|rposes) |
|00002560| 74 6f 67 65 74 68 65 72 | 20 77 69 74 68 20 61 20 |together| with a |
|00002570| 33 32 2d 62 69 74 0a 66 | 69 6c 65 20 70 6f 69 6e |32-bit.f|ile poin|
|00002580| 74 65 72 20 77 69 74 68 | 69 6e 20 6d 73 67 6d 61 |ter with|in msgma|
|00002590| 69 6e 20 74 65 6c 6c 69 | 6e 67 20 75 73 20 77 68 |in telli|ng us wh|
|000025a0| 65 72 65 20 74 68 65 20 | 6d 65 73 73 61 67 65 20 |ere the |message |
|000025b0| 62 65 67 69 6e 73 2e 0a | 0a 53 69 6e 63 65 20 6d |begins..|.Since m|
|000025c0| 65 73 73 61 67 65 73 20 | 61 72 65 20 6e 75 6d 62 |essages |are numb|
|000025d0| 65 72 65 64 20 73 65 71 | 75 65 6e 74 69 61 6c 6c |ered seq|uentiall|
|000025e0| 79 20 61 6e 64 20 77 72 | 69 74 74 65 6e 20 63 69 |y and wr|itten ci|
|000025f0| 72 63 75 6c 61 72 6c 79 | 2c 20 74 68 65 0a 73 65 |rcularly|, the.se|
|00002600| 74 20 6f 66 20 6d 65 73 | 73 61 67 65 73 20 65 78 |t of mes|sages ex|
|00002610| 69 73 74 69 6e 67 20 69 | 6e 20 6d 73 67 6d 61 69 |isting i|n msgmai|
|00002620| 6e 20 77 69 6c 6c 20 61 | 6c 77 61 79 73 20 66 6f |n will a|lways fo|
|00002630| 72 6d 20 61 20 63 6f 6e | 74 69 6e 75 6f 75 73 0a |rm a con|tinuous.|
|00002640| 73 65 71 75 65 6e 63 65 | 20 61 74 20 61 6e 79 20 |sequence| at any |
|00002650| 67 69 76 65 6e 20 74 69 | 6d 65 2e 20 20 54 68 75 |given ti|me. Thu|
|00002660| 73 2c 20 62 79 20 72 65 | 6d 65 6d 62 65 72 69 6e |s, by re|memberin|
|00002670| 67 20 74 68 65 20 49 44 | 20 6e 75 6d 62 65 72 73 |g the ID| numbers|
|00002680| 20 6f 66 20 74 68 65 0a | 6f 6c 64 65 73 74 20 61 | of the.|oldest a|
|00002690| 6e 64 20 6e 65 77 65 73 | 74 20 6d 65 73 73 61 67 |nd newes|t messag|
|000026a0| 65 73 20 69 6e 20 74 68 | 65 20 6d 65 73 73 61 67 |es in th|e messag|
|000026b0| 65 20 66 69 6c 65 2c 20 | 77 65 20 63 61 6e 20 63 |e file, |we can c|
|000026c0| 68 65 63 6b 20 74 6f 20 | 73 65 65 0a 69 66 20 61 |heck to |see.if a|
|000026d0| 20 6d 65 73 73 61 67 65 | 20 65 78 69 73 74 73 20 | message| exists |
|000026e0| 3e 62 65 66 6f 72 65 3c | 20 67 6f 69 6e 67 20 74 |>before<| going t|
|000026f0| 6f 20 6d 73 67 6d 61 69 | 6e 2c 20 73 61 76 69 6e |o msgmai|n, savin|
|00002700| 67 20 6f 75 72 73 65 6c | 76 65 73 20 28 61 6e 64 |g oursel|ves (and|
|00002710| 20 74 68 65 0a 64 69 73 | 6b 20 64 72 69 76 65 29 | the.dis|k drive)|
|00002720| 20 74 68 65 20 70 61 69 | 6e 20 6f 66 20 66 75 74 | the pai|n of fut|
|00002730| 69 6c 65 20 73 65 65 6b | 73 20 69 6e 20 73 65 61 |ile seek|s in sea|
|00002740| 72 63 68 20 6f 66 20 74 | 68 65 20 6e 6f 6e 65 78 |rch of t|he nonex|
|00002750| 69 73 74 65 6e 74 2e 0a | 54 68 69 73 20 69 6e 66 |istent..|This inf|
|00002760| 6f 72 6d 61 74 69 6f 6e | 20 69 73 20 72 65 63 6f |ormation| is reco|
|00002770| 72 64 65 64 20 69 6e 20 | 6f 6c 64 65 73 74 20 61 |rded in |oldest a|
|00002780| 6e 64 20 6e 65 77 65 73 | 74 2c 20 33 32 20 62 69 |nd newes|t, 32 bi|
|00002790| 74 20 6e 75 6d 62 65 72 | 73 2e 0a 59 6f 75 27 6c |t number|s..You'l|
|000027a0| 6c 20 62 65 20 73 65 65 | 69 6e 67 20 6d 6f 72 65 |l be see|ing more|
|000027b0| 20 6f 66 20 74 68 65 73 | 65 2e 2e 2e 0a 0a 54 68 | of thes|e.....Th|
|000027c0| 65 20 6e 65 77 65 73 74 | 20 69 73 20 73 69 6d 70 |e newest| is simp|
|000027d0| 6c 79 20 69 6e 63 72 65 | 6d 65 6e 74 65 64 20 65 |ly incre|mented e|
|000027e0| 61 63 68 20 74 69 6d 65 | 20 77 65 20 65 6e 74 65 |ach time| we ente|
|000027f0| 72 20 61 0a 6e 65 77 20 | 6d 65 73 73 61 67 65 20 |r a.new |message |
|00002800| 69 6e 20 74 68 65 20 6d | 65 73 73 61 67 65 20 66 |in the m|essage f|
|00002810| 69 6c 65 73 2e 20 20 4f | 6c 64 65 73 74 20 69 73 |iles. O|ldest is|
|00002820| 20 69 6e 63 72 65 6d 65 | 6e 74 65 64 0a 65 61 63 | increme|nted.eac|
|00002830| 68 20 74 69 6d 65 20 77 | 65 20 6f 76 65 72 77 72 |h time w|e overwr|
|00002840| 69 74 65 20 61 6e 20 46 | 46 20 28 73 74 61 72 74 |ite an F|F (start|
|00002850| 2d 6f 66 2d 6d 65 73 73 | 61 67 65 29 20 62 79 74 |-of-mess|age) byt|
|00002860| 65 20 69 6e 20 74 68 65 | 20 63 6f 75 72 73 65 0a |e in the| course.|
|00002870| 6f 66 20 77 72 69 74 69 | 6e 67 20 61 20 6e 65 77 |of writi|ng a new|
|00002880| 20 6d 65 73 73 61 67 65 | 20 69 6e 74 6f 20 74 68 | message| into th|
|00002890| 65 20 66 69 6c 65 73 2e | 20 20 54 68 69 73 20 63 |e files.| This c|
|000028a0| 6f 72 72 65 73 70 6f 6e | 64 73 20 74 6f 20 64 65 |orrespon|ds to de|
|000028b0| 61 64 0a 72 65 63 6b 6f | 6e 69 6e 67 20 2d 2d 20 |ad.recko|ning -- |
|000028c0| 63 75 72 72 65 6e 74 20 | 63 6f 64 65 20 6e 65 76 |current |code nev|
|000028d0| 65 72 20 63 68 65 63 6b | 73 20 74 6f 20 73 65 65 |er check|s to see|
|000028e0| 20 74 68 61 74 20 74 68 | 65 20 6d 65 73 73 61 67 | that th|e messag|
|000028f0| 65 20 6e 75 6d 62 65 72 | 0a 6f 66 20 74 68 65 20 |e number|.of the |
|00002900| 6d 65 73 73 61 67 65 20 | 77 65 20 61 72 65 20 6f |message |we are o|
|00002910| 76 65 72 77 72 69 74 69 | 6e 67 20 69 73 20 77 68 |verwriti|ng is wh|
|00002920| 61 74 20 77 65 20 74 68 | 69 6e 6b 20 69 74 20 69 |at we th|ink it i|
|00002930| 73 2e 20 20 49 6e 20 61 | 20 67 61 72 62 61 67 65 |s. In a| garbage|
|00002940| 64 0a 66 69 6c 65 20 77 | 69 74 68 20 65 78 74 72 |d.file w|ith extr|
|00002950| 61 20 46 46 20 62 79 74 | 65 73 20 61 72 6f 75 6e |a FF byt|es aroun|
|00002960| 64 2c 20 74 68 69 73 20 | 63 6f 75 6c 64 20 63 61 |d, this |could ca|
|00002970| 75 73 65 20 6f 6c 64 65 | 73 74 20 74 6f 0a 63 6f |use olde|st to.co|
|00002980| 75 6e 74 20 74 6f 6f 20 | 72 61 70 69 64 6c 79 2c |unt too |rapidly,|
|00002990| 20 65 76 65 6e 74 75 61 | 6c 6c 79 20 70 65 72 68 | eventua|lly perh|
|000029a0| 61 70 73 20 6f 76 65 72 | 74 61 6b 69 6e 67 20 6e |aps over|taking n|
|000029b0| 65 77 65 73 74 2c 0a 61 | 74 20 77 68 69 63 68 20 |ewest,.a|t which |
|000029c0| 74 69 6d 65 20 74 68 65 | 20 73 79 73 74 65 6d 20 |time the| system |
|000029d0| 77 69 6c 6c 20 6c 6f 6f | 6b 20 63 6f 6d 70 6c 65 |will loo|k comple|
|000029e0| 74 65 6c 79 20 65 6d 70 | 74 79 2e 20 54 68 69 73 |tely emp|ty. This|
|000029f0| 20 73 68 6f 75 6c 64 20 | 6e 65 76 65 72 0a 68 61 | should |never.ha|
|00002a00| 70 70 65 6e 2c 20 62 75 | 74 20 69 74 27 73 20 61 |ppen, bu|t it's a|
|00002a10| 6c 77 61 79 73 20 73 61 | 66 65 20 74 6f 20 74 61 |lways sa|fe to ta|
|00002a20| 6b 65 20 62 61 63 6b 75 | 70 73 2e 0a 0a 54 68 61 |ke backu|ps...Tha|
|00002a30| 74 20 73 68 6f 75 6c 64 | 20 62 65 20 65 6e 6f 75 |t should| be enou|
|00002a40| 67 68 20 62 61 63 6b 67 | 72 6f 75 6e 64 20 74 6f |gh backg|round to|
|00002a50| 20 74 61 63 6b 6c 65 20 | 61 20 66 75 6c 6c 2d 73 | tackle |a full-s|
|00002a60| 63 61 6c 65 20 72 6f 6f | 6d 2e 20 20 46 72 6f 6d |cale roo|m. From|
|00002a70| 20 63 69 74 61 64 65 6c | 2e 68 3a 0a 0a 73 74 72 | citadel|.h:..str|
|00002a80| 75 63 74 20 71 75 69 63 | 6b 72 6f 6f 6d 20 7b 0a |uct quic|kroom {.|
|00002a90| 09 63 68 61 72 20 51 52 | 6e 61 6d 65 5b 32 30 5d |.char QR|name[20]|
|00002aa0| 3b 09 09 2f 2a 20 4d 61 | 78 2e 20 6c 65 6e 20 69 |;../* Ma|x. len i|
|00002ab0| 73 20 31 39 2c 20 70 6c | 75 73 20 6e 75 6c 6c 20 |s 19, pl|us null |
|00002ac0| 74 65 72 6d 20 20 20 2a | 2f 0a 09 63 68 61 72 20 |term *|/..char |
|00002ad0| 51 52 70 61 73 73 77 64 | 5b 31 30 5d 3b 09 09 2f |QRpasswd|[10];../|
|00002ae0| 2a 20 4f 6e 6c 79 20 76 | 61 6c 69 64 20 69 66 20 |* Only v|alid if |
|00002af0| 69 74 27 73 20 61 20 70 | 72 69 76 61 74 65 20 72 |it's a p|rivate r|
|00002b00| 6d 20 20 2a 2f 0a 09 6c | 6f 6e 67 20 51 52 72 6f |m */..l|ong QRro|
|00002b10| 6f 6d 61 69 64 65 3b 09 | 09 2f 2a 20 55 73 65 72 |omaide;.|./* User|
|00002b20| 20 6e 75 6d 62 65 72 20 | 6f 66 20 72 6f 6f 6d 20 | number |of room |
|00002b30| 61 69 64 65 20 20 20 20 | 20 20 20 20 20 2a 2f 0a |aide | */.|
|00002b40| 09 6c 6f 6e 67 20 51 52 | 68 69 67 68 65 73 74 3b |.long QR|highest;|
|00002b50| 09 09 09 2f 2a 20 48 69 | 67 68 65 73 74 20 6d 65 |.../* Hi|ghest me|
|00002b60| 73 73 61 67 65 20 4e 55 | 4d 42 45 52 20 69 6e 20 |ssage NU|MBER in |
|00002b70| 72 6f 6f 6d 20 20 20 2a | 2f 0a 09 63 68 61 72 20 |room *|/..char |
|00002b80| 51 52 67 65 6e 3b 09 09 | 09 2f 2a 20 47 65 6e 65 |QRgen;..|./* Gene|
|00002b90| 72 61 74 69 6f 6e 20 6e | 75 6d 62 65 72 20 6f 66 |ration n|umber of|
|00002ba0| 20 72 6f 6f 6d 20 20 20 | 20 20 20 20 20 2a 2f 0a | room | */.|
|00002bb0| 09 75 6e 73 69 67 6e 65 | 64 20 51 52 66 6c 61 67 |.unsigne|d QRflag|
|00002bc0| 73 3b 09 09 2f 2a 20 53 | 65 65 20 66 6c 61 67 20 |s;../* S|ee flag |
|00002bd0| 76 61 6c 75 65 73 20 62 | 65 6c 6f 77 20 20 20 20 |values b|elow |
|00002be0| 20 20 20 20 20 20 20 20 | 2a 2f 0a 09 63 68 61 72 | |*/..char|
|00002bf0| 20 51 52 64 69 72 6e 61 | 6d 65 5b 31 35 5d 3b 09 | QRdirna|me[15];.|
|00002c00| 09 2f 2a 20 44 69 72 65 | 63 74 6f 72 79 20 6e 61 |./* Dire|ctory na|
|00002c10| 6d 65 2c 20 69 66 20 61 | 70 70 6c 69 63 61 62 6c |me, if a|pplicabl|
|00002c20| 65 20 20 20 20 2a 2f 0a | 09 09 7d 3b 0a 0a 23 64 |e */.|..};..#d|
|00002c30| 65 66 69 6e 65 20 51 52 | 5f 42 55 53 59 09 09 31 |efine QR|_BUSY..1|
|00002c40| 09 09 2f 2a 20 52 6f 6f | 6d 20 69 73 20 62 65 69 |../* Roo|m is bei|
|00002c50| 6e 67 20 75 70 64 61 74 | 65 64 2c 20 57 41 49 54 |ng updat|ed, WAIT|
|00002c60| 20 20 20 20 20 20 2a 2f | 0a 23 64 65 66 69 6e 65 | */|.#define|
|00002c70| 20 51 52 5f 49 4e 55 53 | 45 09 32 09 09 2f 2a 20 | QR_INUS|E.2../* |
|00002c80| 53 65 74 20 69 66 20 69 | 6e 20 75 73 65 2c 20 63 |Set if i|n use, c|
|00002c90| 6c 65 61 72 20 69 66 20 | 61 76 61 69 6c 20 20 20 |lear if |avail |
|00002ca0| 20 2a 2f 0a 23 64 65 66 | 69 6e 65 20 51 52 5f 50 | */.#def|ine QR_P|
|00002cb0| 52 49 56 41 54 45 09 34 | 09 09 2f 2a 20 53 65 74 |RIVATE.4|../* Set|
|00002cc0| 20 66 6f 72 20 61 6e 79 | 20 74 79 70 65 20 6f 66 | for any| type of|
|00002cd0| 20 70 72 69 76 61 74 65 | 20 72 6f 6f 6d 20 2a 2f | private| room */|
|00002ce0| 0a 23 64 65 66 69 6e 65 | 20 51 52 5f 50 41 53 53 |.#define| QR_PASS|
|00002cf0| 57 4f 52 44 45 44 09 38 | 09 09 2f 2a 20 53 65 74 |WORDED.8|../* Set|
|00002d00| 20 69 66 20 74 68 65 72 | 65 27 73 20 61 20 70 61 | if ther|e's a pa|
|00002d10| 73 73 77 6f 72 64 20 74 | 6f 6f 20 20 20 20 2a 2f |ssword t|oo */|
|00002d20| 0a 23 64 65 66 69 6e 65 | 20 51 52 5f 47 55 45 53 |.#define| QR_GUES|
|00002d30| 53 4e 41 4d 45 09 31 36 | 09 09 2f 2a 20 53 65 74 |SNAME.16|../* Set|
|00002d40| 20 69 66 20 69 74 27 73 | 20 61 20 67 75 65 73 73 | if it's| a guess|
|00002d50| 6e 61 6d 65 20 72 6f 6f | 6d 20 20 20 20 20 2a 2f |name roo|m */|
|00002d60| 0a 23 64 65 66 69 6e 65 | 20 51 52 5f 44 49 52 45 |.#define| QR_DIRE|
|00002d70| 43 54 4f 52 59 09 33 32 | 09 09 2f 2a 20 44 69 72 |CTORY.32|../* Dir|
|00002d80| 65 63 74 6f 72 79 20 72 | 6f 6f 6d 20 20 20 20 20 |ectory r|oom |
|00002d90| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 2a 2f | | */|
|00002da0| 0a 23 64 65 66 69 6e 65 | 20 51 52 5f 55 50 4c 4f |.#define| QR_UPLO|
|00002db0| 41 44 09 36 34 09 09 2f | 2a 20 41 6c 6c 6f 77 65 |AD.64../|* Allowe|
|00002dc0| 64 20 74 6f 20 75 70 6c | 6f 61 64 20 20 20 20 20 |d to upl|oad |
|00002dd0| 20 20 20 20 20 20 20 20 | 20 20 20 2a 2f 0a 23 64 | | */.#d|
|00002de0| 65 66 69 6e 65 20 51 52 | 5f 44 4f 57 4e 4c 4f 41 |efine QR|_DOWNLOA|
|00002df0| 44 09 31 32 38 09 09 2f | 2a 20 41 6c 6c 6f 77 65 |D.128../|* Allowe|
|00002e00| 64 20 74 6f 20 64 6f 77 | 6e 6c 6f 61 64 20 20 20 |d to dow|nload |
|00002e10| 20 20 20 20 20 20 20 20 | 20 20 20 2a 2f 0a 23 64 | | */.#d|
|00002e20| 65 66 69 6e 65 20 51 52 | 5f 56 49 53 44 49 52 09 |efine QR|_VISDIR.|
|00002e30| 32 35 36 09 09 2f 2a 20 | 56 69 73 69 62 6c 65 20 |256../* |Visible |
|00002e40| 64 69 72 65 63 74 6f 72 | 79 20 20 20 20 20 20 20 |director|y |
|00002e50| 20 20 20 20 20 20 20 20 | 20 2a 2f 0a 23 64 65 66 | | */.#def|
|00002e60| 69 6e 65 20 51 52 5f 41 | 4e 4f 4e 4f 4e 4c 59 09 |ine QR_A|NONONLY.|
|00002e70| 35 31 32 09 09 2f 2a 20 | 41 6e 6f 6e 79 6d 6f 75 |512../* |Anonymou|
|00002e80| 73 2d 4f 6e 6c 79 20 72 | 6f 6f 6d 20 20 20 20 20 |s-Only r|oom |
|00002e90| 20 20 20 20 20 20 20 20 | 20 2a 2f 0a 23 64 65 66 | | */.#def|
|00002ea0| 69 6e 65 20 51 52 5f 41 | 4e 4f 4e 32 09 31 30 32 |ine QR_A|NON2.102|
|00002eb0| 34 09 09 2f 2a 20 41 6e | 6f 6e 79 6d 6f 75 73 2d |4../* An|onymous-|
|00002ec0| 4f 70 74 69 6f 6e 20 72 | 6f 6f 6d 20 20 20 20 20 |Option r|oom |
|00002ed0| 20 20 20 20 20 20 20 2a | 2f 0a 23 64 65 66 69 6e | *|/.#defin|
|00002ee0| 65 20 51 52 5f 4e 45 54 | 57 4f 52 4b 09 32 30 34 |e QR_NET|WORK.204|
|00002ef0| 38 09 09 2f 2a 20 53 68 | 61 72 65 64 20 6e 65 74 |8../* Sh|ared net|
|00002f00| 77 6f 72 6b 20 72 6f 6f | 6d 20 20 20 20 20 20 20 |work roo|m |
|00002f10| 20 20 20 20 20 20 20 2a | 2f 0a 23 64 65 66 69 6e | *|/.#defin|
|00002f20| 65 20 51 52 5f 50 52 45 | 46 4f 4e 4c 59 09 34 30 |e QR_PRE|FONLY.40|
|00002f30| 39 36 09 09 2f 2a 20 50 | 72 65 66 65 72 72 65 64 |96../* P|referred|
|00002f40| 20 75 73 65 72 73 20 6f | 6e 6c 79 20 20 20 20 20 | users o|nly |
|00002f50| 20 20 20 20 20 20 20 20 | 2a 2f 0a 73 74 72 75 63 | |*/.struc|
|00002f60| 74 20 66 75 6c 6c 72 6f | 6f 6d 20 7b 0a 09 6c 6f |t fullro|om {..lo|
|00002f70| 6e 67 20 46 52 6e 75 6d | 5b 4d 53 47 53 50 45 52 |ng FRnum|[MSGSPER|
|00002f80| 52 4d 5d 3b 09 09 2f 2a | 20 4d 65 73 73 61 67 65 |RM];../*| Message|
|00002f90| 20 4e 55 4d 42 45 52 53 | 09 09 20 20 20 20 2a 2f | NUMBERS|.. */|
|00002fa0| 0a 09 6c 6f 6e 67 20 46 | 52 70 6f 73 5b 4d 53 47 |..long F|Rpos[MSG|
|00002fb0| 53 50 45 52 52 4d 5d 3b | 09 09 2f 2a 20 4d 65 73 |SPERRM];|../* Mes|
|00002fc0| 73 61 67 65 20 50 4f 53 | 49 54 49 4f 4e 53 20 69 |sage POS|ITIONS i|
|00002fd0| 6e 20 6d 61 73 74 65 72 | 20 66 69 6c 65 20 2a 2f |n master| file */|
|00002fe0| 0a 09 09 7d 3b 0a 0a 5b | 4e 6f 74 65 20 74 68 61 |...};..[|Note tha|
|00002ff0| 74 20 61 6c 6c 20 63 6f | 6d 70 6f 6e 65 6e 74 73 |t all co|mponents|
|00003000| 20 73 74 61 72 74 20 77 | 69 74 68 20 22 51 52 22 | start w|ith "QR"|
|00003010| 20 66 6f 72 20 71 75 69 | 63 6b 72 6f 6f 6d 2c 20 | for qui|ckroom, |
|00003020| 74 6f 20 6d 61 6b 65 20 | 73 75 72 65 20 77 65 0a |to make |sure we.|
|00003030| 20 64 6f 6e 27 74 20 61 | 63 63 69 64 65 6e 74 61 | don't a|ccidenta|
|00003040| 6c 6c 79 20 75 73 65 20 | 61 6e 20 6f 66 66 73 65 |lly use |an offse|
|00003050| 74 20 69 6e 20 74 68 65 | 20 77 72 6f 6e 67 20 73 |t in the| wrong s|
|00003060| 74 72 75 63 74 75 72 65 | 2e 20 42 65 20 76 65 72 |tructure|. Be ver|
|00003070| 79 20 63 61 72 65 66 75 | 6c 0a 20 61 6c 73 6f 20 |y carefu|l. also |
|00003080| 74 6f 20 67 65 74 20 61 | 20 6d 65 61 6e 69 6e 67 |to get a| meaning|
|00003090| 66 75 6c 20 73 65 71 75 | 65 6e 63 65 20 6f 66 20 |ful sequ|ence of |
|000030a0| 63 6f 6d 70 6f 6e 65 6e | 74 73 20 2d 2d 0a 20 74 |componen|ts --. t|
|000030b0| 68 65 72 65 20 69 73 20 | 6e 6f 20 63 68 65 63 6b |here is |no check|
|000030c0| 69 6e 67 20 6f 6e 20 74 | 68 69 73 20 73 6f 72 74 |ing on t|his sort|
|000030d0| 20 6f 66 20 73 74 75 66 | 66 20 65 69 74 68 65 72 | of stuf|f either|
|000030e0| 2e 5d 0a 0a 51 52 67 65 | 6e 20 68 61 6e 64 6c 65 |.]..QRge|n handle|
|000030f0| 73 20 74 68 65 20 70 72 | 6f 62 6c 65 6d 20 6f 66 |s the pr|oblem of|
|00003100| 20 72 6f 6f 6d 73 20 77 | 68 69 63 68 20 68 61 76 | rooms w|hich hav|
|00003110| 65 20 64 69 65 64 20 61 | 6e 64 20 62 65 65 6e 20 |e died a|nd been |
|00003120| 72 65 62 6f 72 6e 0a 75 | 6e 64 65 72 20 61 6e 6f |reborn.u|nder ano|
|00003130| 74 68 65 72 20 6e 61 6d | 65 2e 20 20 54 68 69 73 |ther nam|e. This|
|00003140| 20 77 69 6c 6c 20 62 65 | 20 63 6c 65 61 72 65 72 | will be| clearer|
|00003150| 20 77 68 65 6e 20 77 65 | 20 67 65 74 20 74 6f 20 | when we| get to |
|00003160| 74 68 65 20 75 73 65 72 | 6c 6f 67 2e 0a 46 6f 72 |the user|log..For|
|00003170| 20 6e 6f 77 2c 20 6a 75 | 73 74 20 6e 6f 74 65 20 | now, ju|st note |
|00003180| 74 68 61 74 20 65 61 63 | 68 20 72 6f 6f 6d 20 68 |that eac|h room h|
|00003190| 61 73 20 61 20 67 65 6e | 65 72 61 74 69 6f 6e 20 |as a gen|eration |
|000031a0| 6e 75 6d 62 65 72 20 77 | 68 69 63 68 20 69 73 0a |number w|hich is.|
|000031b0| 62 75 6d 70 65 64 20 62 | 79 20 6f 6e 65 20 65 61 |bumped b|y one ea|
|000031c0| 63 68 20 74 69 6d 65 20 | 69 74 20 69 73 20 72 65 |ch time |it is re|
|000031d0| 63 79 63 6c 65 64 2e 0a | 0a 51 52 66 6c 61 67 73 |cycled..|.QRflags|
|000031e0| 20 69 73 20 6a 75 73 74 | 20 61 20 62 61 67 20 6f | is just| a bag o|
|000031f0| 66 20 62 69 74 73 20 72 | 65 63 6f 72 64 69 6e 67 |f bits r|ecording|
|00003200| 20 74 68 65 20 73 74 61 | 74 75 73 20 6f 66 20 74 | the sta|tus of t|
|00003210| 68 65 20 72 6f 6f 6d 2e | 20 20 54 68 65 0a 64 65 |he room.| The.de|
|00003220| 66 69 6e 65 64 20 62 69 | 74 73 20 61 72 65 3a 0a |fined bi|ts are:.|
|00003230| 0a 51 52 5f 42 55 53 59 | 09 09 54 68 69 73 20 69 |.QR_BUSY|..This i|
|00003240| 73 20 74 6f 20 69 6e 73 | 75 72 65 20 74 68 61 74 |s to ins|ure that|
|00003250| 20 74 77 6f 20 70 72 6f | 63 65 73 73 65 73 20 64 | two pro|cesses d|
|00003260| 6f 6e 27 74 20 75 70 64 | 61 74 65 20 74 68 65 20 |on't upd|ate the |
|00003270| 73 61 6d 65 0a 09 09 72 | 65 63 6f 72 64 20 61 74 |same...r|ecord at|
|00003280| 20 74 68 65 20 73 61 6d | 65 20 74 69 6d 65 2c 20 | the sam|e time, |
|00003290| 65 76 65 6e 20 74 68 6f | 75 67 68 20 74 68 69 73 |even tho|ugh this|
|000032a0| 20 68 61 73 6e 27 74 20 | 62 65 65 6e 0a 09 09 69 | hasn't |been...i|
|000032b0| 6d 70 6c 65 6d 65 6e 74 | 65 64 20 79 65 74 2e 0a |mplement|ed yet..|
|000032c0| 51 52 5f 49 4e 55 53 45 | 09 31 20 69 66 20 74 68 |QR_INUSE|.1 if th|
|000032d0| 65 20 72 6f 6f 6d 20 69 | 73 20 76 61 6c 69 64 2c |e room i|s valid,|
|000032e0| 20 30 20 69 66 20 69 74 | 20 69 73 20 66 72 65 65 | 0 if it| is free|
|000032f0| 20 66 6f 72 20 72 65 2d | 61 73 73 69 67 6e 6d 65 | for re-|assignme|
|00003300| 6e 74 2e 0a 51 52 5f 50 | 52 49 56 41 54 45 09 31 |nt..QR_P|RIVATE.1|
|00003310| 20 69 66 20 74 68 65 20 | 72 6f 6f 6d 20 69 73 20 | if the |room is |
|00003320| 6e 6f 74 20 76 69 73 69 | 62 6c 65 20 62 79 20 64 |not visi|ble by d|
|00003330| 65 66 61 75 6c 74 2c 20 | 30 20 66 6f 72 20 70 75 |efault, |0 for pu|
|00003340| 62 6c 69 63 2e 0a 51 52 | 5f 50 41 53 53 57 4f 52 |blic..QR|_PASSWOR|
|00003350| 44 45 44 09 31 20 69 66 | 20 65 6e 74 72 79 20 74 |DED.1 if| entry t|
|00003360| 6f 20 74 68 65 20 72 6f | 6f 6d 20 72 65 71 75 69 |o the ro|om requi|
|00003370| 72 65 73 20 61 20 70 61 | 73 73 77 6f 72 64 2e 0a |res a pa|ssword..|
|00003380| 51 52 5f 47 55 45 53 53 | 4e 41 4d 45 09 31 20 69 |QR_GUESS|NAME.1 i|
|00003390| 66 20 74 68 65 20 72 6f | 6f 6d 20 63 61 6e 20 62 |f the ro|om can b|
|000033a0| 65 20 72 65 61 63 68 65 | 64 20 62 79 20 67 75 65 |e reache|d by gue|
|000033b0| 73 73 69 6e 67 20 74 68 | 65 20 6e 61 6d 65 2e 0a |ssing th|e name..|
|000033c0| 51 52 5f 44 49 52 45 43 | 54 4f 52 59 09 31 20 69 |QR_DIREC|TORY.1 i|
|000033d0| 66 20 74 68 65 20 72 6f | 6f 6d 20 69 73 20 61 20 |f the ro|om is a |
|000033e0| 77 69 6e 64 6f 77 20 6f | 6e 74 6f 20 73 6f 6d 65 |window o|nto some|
|000033f0| 20 64 69 73 6b 2f 75 73 | 65 72 73 70 61 63 65 2c | disk/us|erspace,|
|00003400| 20 65 6c 73 65 20 30 2e | 0a 51 52 5f 55 50 4c 4f | else 0.|.QR_UPLO|
|00003410| 41 44 09 31 20 69 66 20 | 75 73 65 72 73 20 63 61 |AD.1 if |users ca|
|00003420| 6e 20 75 70 6c 6f 61 64 | 20 69 6e 74 6f 20 74 68 |n upload| into th|
|00003430| 69 73 20 72 6f 6f 6d 2c | 20 65 6c 73 65 20 30 2e |is room,| else 0.|
|00003440| 0a 51 52 5f 44 4f 57 4e | 4c 4f 41 44 09 31 20 69 |.QR_DOWN|LOAD.1 i|
|00003450| 66 20 75 73 65 72 73 20 | 63 61 6e 20 64 6f 77 6e |f users |can down|
|00003460| 6c 6f 61 64 20 66 72 6f | 6d 20 74 68 69 73 20 72 |load fro|m this r|
|00003470| 6f 6f 6d 2c 20 65 6c 73 | 65 20 30 2e 0a 51 52 5f |oom, els|e 0..QR_|
|00003480| 56 49 53 44 49 52 09 31 | 20 69 66 20 75 73 65 72 |VISDIR.1| if user|
|00003490| 73 20 61 72 65 20 61 6c | 6c 6f 77 65 64 20 74 6f |s are al|lowed to|
|000034a0| 20 72 65 61 64 20 74 68 | 65 20 64 69 72 65 63 74 | read th|e direct|
|000034b0| 6f 72 79 2c 20 65 6c 73 | 65 20 30 2e 0a 51 52 5f |ory, els|e 0..QR_|
|000034c0| 41 4e 4f 4e 4f 4e 4c 59 | 09 31 20 69 66 20 61 6c |ANONONLY|.1 if al|
|000034d0| 6c 20 6d 65 73 73 61 67 | 65 73 20 61 72 65 20 74 |l messag|es are t|
|000034e0| 6f 20 72 65 63 69 65 76 | 65 20 74 68 65 20 22 2a |o reciev|e the "*|
|000034f0| 2a 2a 2a 22 20 61 6e 6f | 6e 20 68 65 61 64 65 72 |***" ano|n header|
|00003500| 2e 0a 51 52 5f 41 4e 4f | 4e 32 09 31 20 69 66 20 |..QR_ANO|N2.1 if |
|00003510| 74 68 65 20 75 73 65 72 | 20 77 69 6c 6c 20 62 65 |the user| will be|
|00003520| 20 61 73 6b 65 64 20 69 | 66 20 68 65 2f 73 68 65 | asked i|f he/she|
|00003530| 20 77 61 6e 74 73 20 61 | 6e 20 61 6e 6f 6e 20 6d | wants a|n anon m|
|00003540| 65 73 73 61 67 65 2e 0a | 51 52 5f 4e 45 54 57 4f |essage..|QR_NETWO|
|00003550| 52 4b 09 31 20 69 66 20 | 74 68 69 73 20 72 6f 6f |RK.1 if |this roo|
|00003560| 6d 20 69 73 20 73 68 61 | 72 65 64 20 6f 6e 20 61 |m is sha|red on a|
|00003570| 20 6e 65 74 77 6f 72 6b | 2c 20 65 6c 73 65 20 30 | network|, else 0|
|00003580| 2e 0a 51 52 5f 50 52 45 | 46 4f 4e 4c 59 09 31 20 |..QR_PRE|FONLY.1 |
|00003590| 69 66 20 74 68 65 20 72 | 6f 6f 6d 20 69 73 20 6f |if the r|oom is o|
|000035a0| 6e 6c 79 20 61 63 63 65 | 73 73 69 62 6c 65 20 74 |nly acce|ssible t|
|000035b0| 6f 20 70 72 65 66 65 72 | 72 65 64 20 75 73 65 72 |o prefer|red user|
|000035c0| 73 2c 20 65 6c 73 65 20 | 30 2e 0a 0a 51 52 6e 61 |s, else |0...QRna|
|000035d0| 6d 65 20 69 73 20 6a 75 | 73 74 20 61 6e 20 41 53 |me is ju|st an AS|
|000035e0| 43 49 49 20 73 74 72 69 | 6e 67 20 28 6e 75 6c 6c |CII stri|ng (null|
|000035f0| 2d 74 65 72 6d 69 6e 61 | 74 65 64 2c 20 6c 69 6b |-termina|ted, lik|
|00003600| 65 20 61 6c 6c 20 73 74 | 72 69 6e 67 73 29 0a 67 |e all st|rings).g|
|00003610| 69 76 69 6e 67 20 74 68 | 65 20 6e 61 6d 65 20 6f |iving th|e name o|
|00003620| 66 20 74 68 65 20 72 6f | 6f 6d 2e 0a 0a 51 52 64 |f the ro|om...QRd|
|00003630| 69 72 6e 61 6d 65 20 69 | 73 20 6d 65 61 6e 69 6e |irname i|s meanin|
|00003640| 67 66 75 6c 20 6f 6e 6c | 79 20 69 6e 20 51 52 5f |gful onl|y in QR_|
|00003650| 44 49 52 45 43 54 4f 52 | 59 20 72 6f 6f 6d 73 2c |DIRECTOR|Y rooms,|
|00003660| 20 69 6e 20 77 68 69 63 | 68 20 63 61 73 65 0a 69 | in whic|h case.i|
|00003670| 74 20 67 69 76 65 73 20 | 74 68 65 20 64 69 72 65 |t gives |the dire|
|00003680| 63 74 6f 72 79 20 6e 61 | 6d 65 20 74 6f 20 77 69 |ctory na|me to wi|
|00003690| 6e 64 6f 77 2e 0a 0a 51 | 52 70 61 73 73 77 64 20 |ndow...Q|Rpasswd |
|000036a0| 69 73 20 74 68 65 20 72 | 6f 6f 6d 27 73 20 70 61 |is the r|oom's pa|
|000036b0| 73 73 77 6f 72 64 2c 20 | 69 66 20 69 74 27 73 20 |ssword, |if it's |
|000036c0| 61 20 51 52 5f 50 41 53 | 53 57 4f 52 44 45 44 20 |a QR_PAS|SWORDED |
|000036d0| 72 6f 6f 6d 2e 20 4e 6f | 74 65 20 74 68 61 74 0a |room. No|te that.|
|000036e0| 69 66 20 51 52 5f 50 41 | 53 53 57 4f 52 44 45 44 |if QR_PA|SSWORDED|
|000036f0| 20 6f 72 20 51 52 5f 47 | 55 45 53 53 4e 41 4d 45 | or QR_G|UESSNAME|
|00003700| 20 61 72 65 20 73 65 74 | 2c 20 79 6f 75 20 4d 55 | are set|, you MU|
|00003710| 53 54 20 61 6c 73 6f 20 | 73 65 74 20 51 52 5f 50 |ST also |set QR_P|
|00003720| 52 49 56 41 54 45 2e 0a | 51 52 5f 50 52 49 56 41 |RIVATE..|QR_PRIVA|
|00003730| 54 45 20 62 79 20 69 74 | 73 65 6c 66 20 64 65 73 |TE by it|self des|
|00003740| 69 67 6e 61 74 65 73 20 | 69 6e 76 69 74 61 74 69 |ignates |invitati|
|00003750| 6f 6e 2d 6f 6e 6c 79 2e | 20 44 6f 20 6e 6f 74 20 |on-only.| Do not |
|00003760| 45 56 45 52 20 73 65 74 | 20 61 6c 6c 20 74 68 72 |EVER set| all thr|
|00003770| 65 65 0a 66 6c 61 67 73 | 20 61 74 20 74 68 65 20 |ee.flags| at the |
|00003780| 73 61 6d 65 20 74 69 6d | 65 2e 0a 0a 51 52 72 6f |same tim|e...QRro|
|00003790| 6f 6d 61 69 64 65 20 69 | 73 20 74 68 65 20 75 73 |omaide i|s the us|
|000037a0| 65 72 20 6e 75 6d 62 65 | 72 20 6f 66 20 74 68 65 |er numbe|r of the|
|000037b0| 20 72 6f 6f 6d 27 73 20 | 72 6f 6f 6d 2d 61 69 64 | room's |room-aid|
|000037c0| 65 20 28 6f 72 20 7a 65 | 72 6f 20 69 66 20 74 68 |e (or ze|ro if th|
|000037d0| 65 20 72 6f 6f 6d 0a 64 | 6f 65 73 6e 27 74 20 68 |e room.d|oesn't h|
|000037e0| 61 76 65 20 61 20 72 6f | 6f 6d 20 61 69 64 65 29 |ave a ro|om aide)|
|000037f0| 2e 20 4e 6f 74 65 20 74 | 68 61 74 20 69 66 20 61 |. Note t|hat if a|
|00003800| 20 75 73 65 72 20 69 73 | 20 64 65 6c 65 74 65 64 | user is| deleted|
|00003810| 2c 20 68 69 73 2f 68 65 | 72 20 75 73 65 72 20 6e |, his/he|r user n|
|00003820| 75 6d 62 65 72 0a 69 73 | 20 6e 65 76 65 72 20 75 |umber.is| never u|
|00003830| 73 65 64 20 61 67 61 69 | 6e 2c 20 73 6f 20 79 6f |sed agai|n, so yo|
|00003840| 75 20 64 6f 6e 27 74 20 | 68 61 76 65 20 74 6f 20 |u don't |have to |
|00003850| 77 6f 72 72 79 20 61 62 | 6f 75 74 20 61 20 6e 65 |worry ab|out a ne|
|00003860| 77 20 75 73 65 72 20 67 | 65 74 74 69 6e 67 20 74 |w user g|etting t|
|00003870| 68 65 0a 73 61 6d 65 20 | 75 73 65 72 20 6e 75 6d |he.same |user num|
|00003880| 62 65 72 20 61 6e 64 20 | 61 63 63 69 64 65 6e 74 |ber and |accident|
|00003890| 61 6c 6c 79 20 62 65 63 | 6f 6d 69 6e 67 20 61 20 |ally bec|oming a |
|000038a0| 72 6f 6f 6d 2d 61 69 64 | 65 20 6f 66 20 6f 6e 65 |room-aid|e of one|
|000038b0| 20 6f 72 20 6d 6f 72 65 | 20 72 6f 6f 6d 73 2e 0a | or more| rooms..|
|000038c0| 0a 54 68 65 20 6f 6e 6c | 79 20 66 69 65 6c 64 20 |.The onl|y field |
|000038d0| 6e 65 77 20 74 6f 20 75 | 73 20 69 6e 20 71 75 69 |new to u|s in qui|
|000038e0| 63 6b 72 6f 6f 6d 20 69 | 73 20 51 52 68 69 67 68 |ckroom i|s QRhigh|
|000038f0| 65 73 74 2c 20 72 65 63 | 6f 72 64 69 6e 67 20 74 |est, rec|ording t|
|00003900| 68 65 0a 6d 6f 73 74 20 | 72 65 63 65 6e 74 20 6d |he.most |recent m|
|00003910| 65 73 73 61 67 65 20 69 | 6e 20 74 68 65 20 72 6f |essage i|n the ro|
|00003920| 6f 6d 2e 20 20 57 68 65 | 6e 20 77 65 20 61 72 65 |om. Whe|n we are|
|00003930| 20 73 65 61 72 63 68 69 | 6e 67 20 66 6f 72 20 72 | searchi|ng for r|
|00003940| 6f 6f 6d 73 20 77 69 74 | 68 0a 6d 65 73 73 61 67 |ooms wit|h.messag|
|00003950| 65 73 20 61 20 67 69 76 | 65 6e 20 63 61 6c 6c 65 |es a giv|en calle|
|00003960| 72 20 68 61 73 6e 27 74 | 20 73 65 65 6e 2c 20 77 |r hasn't| seen, w|
|00003970| 65 20 63 61 6e 20 63 68 | 65 63 6b 20 74 68 69 73 |e can ch|eck this|
|00003980| 20 6e 75 6d 62 65 72 0a | 61 6e 64 20 61 76 6f 69 | number.|and avoi|
|00003990| 64 20 61 20 77 68 6f 6c | 65 20 6c 6f 74 20 6f 66 |d a whol|e lot of|
|000039a0| 20 65 78 74 72 61 20 64 | 69 73 6b 20 61 63 63 65 | extra d|isk acce|
|000039b0| 73 73 65 73 2e 0a 0a 20 | 20 20 54 68 65 20 66 75 |sses... | The fu|
|000039c0| 6c 6c 72 6f 6f 6d 20 69 | 73 20 74 68 65 20 61 72 |llroom i|s the ar|
|000039d0| 72 61 79 20 6f 66 20 70 | 6f 69 6e 74 65 72 73 20 |ray of p|ointers |
|000039e0| 69 6e 74 6f 20 74 68 65 | 20 6d 65 73 73 61 67 65 |into the| message|
|000039f0| 20 66 69 6c 65 2e 20 57 | 65 20 6b 65 65 70 20 6f | file. W|e keep o|
|00003a00| 6e 65 0a 66 69 6c 65 20 | 66 6f 72 20 65 61 63 68 |ne.file |for each|
|00003a10| 20 66 75 6c 6c 72 6f 6f | 6d 20 61 72 72 61 79 20 | fullroo|m array |
|00003a20| 74 6f 20 6b 65 65 70 20 | 74 68 65 20 71 75 69 63 |to keep |the quic|
|00003a30| 6b 72 6f 6f 6d 20 66 69 | 6c 65 20 73 6d 61 6c 6c |kroom fi|le small|
|00003a40| 20 28 61 6e 64 20 61 63 | 63 65 73 73 20 74 69 6d | (and ac|cess tim|
|00003a50| 65 0a 65 66 66 69 63 69 | 65 6e 74 29 2e 20 46 52 |e.effici|ent). FR|
|00003a60| 6e 75 6d 20 61 6e 64 20 | 46 52 70 6f 73 20 61 72 |num and |FRpos ar|
|00003a70| 65 20 74 68 65 20 6d 65 | 73 73 61 67 65 20 6e 75 |e the me|ssage nu|
|00003a80| 6d 62 65 72 73 20 61 6e | 64 20 70 6f 73 69 74 69 |mbers an|d positi|
|00003a90| 6f 6e 73 20 6f 6e 20 64 | 69 73 6b 20 6f 66 0a 65 |ons on d|isk of.e|
|00003aa0| 61 63 68 20 6d 65 73 73 | 61 67 65 20 69 6e 20 74 |ach mess|age in t|
|00003ab0| 68 65 20 72 6f 6f 6d 2e | 20 28 46 6f 72 20 4e 49 |he room.| (For NI|
|00003ac0| 4c 2c 20 77 65 20 73 74 | 69 63 6b 20 7a 65 72 6f |L, we st|ick zero|
|00003ad0| 65 73 20 69 6e 20 62 6f | 74 68 20 66 69 65 6c 64 |es in bo|th field|
|00003ae0| 73 2e 29 0a 0a 09 09 09 | 75 73 65 72 20 72 65 63 |s.).....|user rec|
|00003af0| 6f 72 64 73 20 28 75 73 | 65 72 73 75 70 70 29 0a |ords (us|ersupp).|
|00003b00| 0a 54 68 69 73 20 69 73 | 20 74 68 65 20 66 75 6e |.This is| the fun|
|00003b10| 20 6f 6e 65 2e 20 20 47 | 65 74 20 73 6f 6d 65 20 | one. G|et some |
|00003b20| 66 72 65 73 68 20 61 69 | 72 20 61 6e 64 20 70 6c |fresh ai|r and pl|
|00003b30| 75 67 20 69 6e 20 79 6f | 75 72 20 74 68 69 6e 6b |ug in yo|ur think|
|00003b40| 69 6e 67 20 63 61 70 0a | 66 69 72 73 74 2e 09 28 |ing cap.|first..(|
|00003b50| 54 69 6d 65 2c 20 73 70 | 61 63 65 20 61 6e 64 20 |Time, sp|ace and |
|00003b60| 63 6f 6d 70 6c 65 78 69 | 74 79 20 61 72 65 20 74 |complexi|ty are t|
|00003b70| 68 65 20 65 74 65 72 6e | 61 6c 20 73 6f 66 74 77 |he etern|al softw|
|00003b80| 61 72 65 20 72 69 76 61 | 6c 73 2e 0a 57 65 27 76 |are riva|ls..We'v|
|00003b90| 65 20 67 6f 74 20 6c 6f | 74 73 20 6f 66 20 6c 6f |e got lo|ts of lo|
|00003ba0| 67 20 65 6e 74 72 69 65 | 73 20 78 20 6c 6f 74 73 |g entrie|s x lots|
|00003bb0| 20 6f 66 20 6d 65 73 73 | 61 67 65 73 20 73 70 72 | of mess|ages spr|
|00003bc0| 65 61 64 20 6f 76 65 72 | 20 75 70 20 74 6f 20 31 |ead over| up to 1|
|00003bd0| 30 30 0a 72 6f 6f 6d 73 | 20 74 6f 20 77 6f 72 72 |00.rooms| to worr|
|00003be0| 79 20 61 62 6f 75 74 2c | 20 61 6e 64 20 77 69 74 |y about,| and wit|
|00003bf0| 68 20 6d 75 6c 74 69 75 | 73 65 72 20 64 69 73 6b |h multiu|ser disk|
|00003c00| 20 61 63 63 65 73 73 20 | 74 69 6d 65 20 69 73 20 | access |time is |
|00003c10| 69 6d 70 6f 72 74 61 6e | 74 2e 2e 2e 0a 73 6f 20 |importan|t....so |
|00003c20| 70 65 72 66 6f 72 63 65 | 2c 20 77 65 20 6f 70 74 |perforce|, we opt|
|00003c30| 20 66 6f 72 20 6c 6f 74 | 73 20 6f 66 20 63 6f 6d | for lot|s of com|
|00003c40| 70 6c 65 78 69 74 79 20 | 74 6f 20 6b 65 65 70 20 |plexity |to keep |
|00003c50| 74 69 6d 65 20 61 6e 64 | 20 73 70 61 63 65 20 69 |time and| space i|
|00003c60| 6e 20 62 6f 75 6e 64 73 | 2e 29 0a 0a 54 6f 20 75 |n bounds|.)..To u|
|00003c70| 6e 64 65 72 73 74 61 6e | 64 20 77 68 61 74 20 69 |nderstan|d what i|
|00003c80| 73 20 68 61 70 70 65 6e | 69 6e 67 20 69 6e 20 74 |s happen|ing in t|
|00003c90| 68 65 20 6c 6f 67 20 63 | 6f 64 65 20 74 61 6b 65 |he log c|ode take|
|00003ca0| 73 20 61 20 6c 69 74 74 | 6c 65 20 70 65 72 73 69 |s a litt|le persi|
|00003cb0| 73 74 65 6e 63 65 2e 0a | 59 6f 75 20 61 6c 73 6f |stence..|You also|
|00003cc0| 20 68 61 76 65 20 74 6f | 20 64 69 73 65 6e 74 61 | have to| disenta|
|00003cd0| 6e 67 6c 65 20 74 68 65 | 20 64 69 66 66 65 72 65 |ngle the| differe|
|00003ce0| 6e 74 20 61 63 74 69 76 | 69 74 69 65 73 20 67 6f |nt activ|ities go|
|00003cf0| 69 6e 67 20 6f 6e 20 61 | 6e 64 0a 74 61 63 6b 6c |ing on a|nd.tackl|
|00003d00| 65 20 74 68 65 6d 20 6f | 6e 65 20 62 79 20 6f 6e |e them o|ne by on|
|00003d10| 65 2e 0a 0a 20 6f 09 57 | 65 20 77 61 6e 74 20 74 |e... o.W|e want t|
|00003d20| 6f 20 72 65 6d 65 6d 62 | 65 72 20 73 6f 6d 65 20 |o rememb|er some |
|00003d30| 72 61 6e 64 6f 6d 20 74 | 68 69 6e 67 73 20 73 75 |random t|hings su|
|00003d40| 63 68 20 61 73 20 74 65 | 72 6d 69 6e 61 6c 20 73 |ch as te|rminal s|
|00003d50| 63 72 65 65 6e 0a 09 73 | 69 7a 65 2c 20 61 6e 64 |creen..s|ize, and|
|00003d60| 20 61 75 74 6f 6d 61 74 | 69 63 61 6c 6c 79 20 73 | automat|ically s|
|00003d70| 65 74 20 74 68 65 6d 20 | 75 70 20 66 6f 72 20 65 |et them |up for e|
|00003d80| 61 63 68 20 63 61 6c 6c | 65 72 20 61 74 20 6c 6f |ach call|er at lo|
|00003d90| 67 69 6e 2e 0a 0a 20 6f | 09 57 65 20 77 61 6e 74 |gin... o|.We want|
|00003da0| 20 74 6f 20 62 65 20 61 | 62 6c 65 20 74 6f 20 6c | to be a|ble to l|
|00003db0| 6f 63 61 74 65 20 61 6c | 6c 20 6e 65 77 20 6d 65 |ocate al|l new me|
|00003dc0| 73 73 61 67 65 73 2c 20 | 61 6e 64 20 6f 6e 6c 79 |ssages, |and only|
|00003dd0| 20 6e 65 77 0a 09 6d 65 | 73 73 61 67 65 73 2c 20 | new..me|ssages, |
|00003de0| 65 66 66 69 63 69 65 6e | 74 6c 79 2e 09 4d 65 73 |efficien|tly..Mes|
|00003df0| 73 61 67 65 73 20 73 68 | 6f 75 6c 64 20 73 74 61 |sages sh|ould sta|
|00003e00| 79 20 6e 65 77 20 65 76 | 65 6e 20 69 66 20 69 74 |y new ev|en if it|
|00003e10| 0a 09 74 61 6b 65 73 20 | 61 20 63 61 6c 6c 65 72 |..takes |a caller|
|00003e20| 20 61 20 63 6f 75 70 6c | 65 20 6f 66 20 63 61 6c | a coupl|e of cal|
|00003e30| 6c 73 20 74 6f 20 67 65 | 74 20 61 72 6f 75 6e 64 |ls to ge|t around|
|00003e40| 20 74 6f 20 74 68 65 6d | 2e 0a 0a 20 6f 09 57 65 | to them|... o.We|
|00003e50| 20 77 61 6e 74 20 74 6f | 20 72 65 6d 65 6d 62 65 | want to| remembe|
|00003e60| 72 20 77 68 69 63 68 20 | 70 72 69 76 61 74 65 20 |r which |private |
|00003e70| 72 6f 6f 6d 73 20 61 20 | 67 69 76 65 6e 20 63 61 |rooms a |given ca|
|00003e80| 6c 6c 65 72 20 6b 6e 6f | 77 73 0a 09 61 62 6f 75 |ller kno|ws..abou|
|00003e90| 74 2c 20 61 6e 64 20 74 | 72 65 61 74 20 74 68 65 |t, and t|reat the|
|00003ea0| 6d 20 61 73 20 6e 6f 72 | 6d 61 6c 20 72 6f 6f 6d |m as nor|mal room|
|00003eb0| 73 2e 09 54 68 69 73 20 | 6d 65 61 6e 73 20 6d 6f |s..This |means mo|
|00003ec0| 73 74 6c 79 0a 09 61 75 | 74 6f 6d 61 74 69 63 61 |stly..au|tomatica|
|00003ed0| 6c 6c 79 20 73 65 65 6b | 69 6e 67 20 6f 75 74 20 |lly seek|ing out |
|00003ee0| 74 68 6f 73 65 20 77 69 | 74 68 20 6e 65 77 20 6d |those wi|th new m|
|00003ef0| 65 73 73 61 67 65 73 2e | 20 20 28 4f 62 76 69 6f |essages.| (Obvio|
|00003f00| 75 73 6c 79 2c 0a 09 77 | 65 20 3e 64 6f 6e 27 74 |usly,..w|e >don't|
|00003f10| 3c 20 77 61 6e 74 20 74 | 6f 20 64 6f 20 74 68 69 |< want t|o do thi|
|00003f20| 73 20 66 6f 72 20 75 6e | 6b 6e 6f 77 6e 20 70 72 |s for un|known pr|
|00003f30| 69 76 61 74 65 20 72 6f | 6f 6d 73 21 29 09 54 68 |ivate ro|oms!).Th|
|00003f40| 69 73 0a 09 68 61 73 20 | 74 6f 20 62 65 20 73 65 |is..has |to be se|
|00003f50| 63 75 72 65 20 61 67 61 | 69 6e 73 74 20 74 68 65 |cure aga|inst the|
|00003f60| 20 70 65 72 69 6f 64 69 | 63 20 72 65 63 79 63 6c | periodi|c recycl|
|00003f70| 69 6e 67 20 6f 66 20 72 | 6f 6f 6d 73 0a 09 62 65 |ing of r|ooms..be|
|00003f80| 74 77 65 65 6e 20 63 61 | 6c 6c 73 2e 0a 0a 20 6f |tween ca|lls... o|
|00003f90| 09 57 65 20 77 61 6e 74 | 20 74 6f 20 73 75 70 70 |.We want| to supp|
|00003fa0| 6f 72 74 20 70 72 69 76 | 61 74 65 20 6d 61 69 6c |ort priv|ate mail|
|00003fb0| 20 74 6f 20 61 20 63 61 | 6c 6c 65 72 2e 0a 0a 20 | to a ca|ller... |
|00003fc0| 6f 09 57 65 20 77 61 6e | 74 20 74 6f 20 70 72 6f |o.We wan|t to pro|
|00003fd0| 76 69 64 65 20 73 6f 6d | 65 20 70 72 6f 74 65 63 |vide som|e protec|
|00003fe0| 74 69 6f 6e 20 6f 66 20 | 74 68 69 73 20 69 6e 66 |tion of |this inf|
|00003ff0| 6f 72 6d 61 74 69 6f 6e | 20 28 76 69 61 0a 09 70 |ormation| (via..p|
|00004000| 61 73 73 77 6f 72 64 73 | 20 61 74 20 6c 6f 67 69 |asswords| at logi|
|00004010| 6e 29 20 61 6e 64 20 73 | 6f 6d 65 20 61 73 73 75 |n) and s|ome assu|
|00004020| 72 61 6e 63 65 20 74 68 | 61 74 20 6d 65 73 73 61 |rance th|at messa|
|00004030| 67 65 73 20 61 72 65 20 | 66 72 6f 6d 0a 09 77 68 |ges are |from..wh|
|00004040| 6f 20 74 68 65 79 20 70 | 75 72 70 6f 72 74 20 74 |o they p|urport t|
|00004050| 6f 20 62 65 20 66 72 6f | 6d 20 28 77 69 74 68 69 |o be fro|m (withi|
|00004060| 6e 20 74 68 65 20 73 79 | 73 74 65 6d 20 2d 2d 20 |n the sy|stem -- |
|00004070| 6f 6e 65 20 73 68 6f 75 | 6c 64 6e 27 74 0a 09 62 |one shou|ldn't..b|
|00004080| 65 20 61 62 6c 65 20 74 | 6f 20 66 6f 72 67 65 20 |e able t|o forge |
|00004090| 6d 65 73 73 61 67 65 73 | 20 66 72 6f 6d 20 65 73 |messages| from es|
|000040a0| 74 61 62 6c 69 73 68 65 | 64 20 75 73 65 72 73 29 |tablishe|d users)|
|000040b0| 2e 0a 0a 4c 69 66 74 69 | 6e 67 20 61 6e 6f 74 68 |...Lifti|ng anoth|
|000040c0| 65 72 20 70 61 67 65 20 | 66 72 6f 6d 20 63 69 74 |er page |from cit|
|000040d0| 61 64 65 6c 2e 68 20 67 | 69 76 65 73 20 75 73 3a |adel.h g|ives us:|
|000040e0| 0a 0a 73 74 72 75 63 74 | 20 75 73 65 72 73 75 70 |..struct| usersup|
|000040f0| 70 20 7b 09 09 09 2f 2a | 20 55 73 65 72 20 72 65 |p {.../*| User re|
|00004100| 63 6f 72 64 20 20 20 20 | 20 20 20 20 20 20 20 20 |cord | |
|00004110| 20 20 20 20 20 20 20 20 | 20 20 2a 2f 0a 09 69 6e | | */..in|
|00004120| 74 20 55 53 75 69 64 3b | 09 09 09 2f 2a 20 75 69 |t USuid;|.../* ui|
|00004130| 64 20 61 63 63 6f 75 6e | 74 20 69 73 20 6c 6f 67 |d accoun|t is log|
|00004140| 67 65 64 20 69 6e 20 75 | 6e 64 65 72 20 20 20 2a |ged in u|nder *|
|00004150| 2f 0a 09 63 68 61 72 20 | 70 61 73 73 77 6f 72 64 |/..char |password|
|00004160| 5b 32 30 5d 3b 09 09 2f | 2a 20 70 61 73 73 77 6f |[20];../|* passwo|
|00004170| 72 64 20 28 66 6f 72 20 | 42 42 53 2d 6f 6e 6c 79 |rd (for |BBS-only|
|00004180| 20 75 73 65 72 73 29 20 | 20 20 20 2a 2f 0a 09 6c | users) | */..l|
|00004190| 6f 6e 67 20 6c 61 73 74 | 73 65 65 6e 5b 4d 41 58 |ong last|seen[MAX|
|000041a0| 52 4f 4f 4d 53 5d 3b 09 | 2f 2a 20 4c 61 73 74 20 |ROOMS];.|/* Last |
|000041b0| 6d 65 73 73 61 67 65 20 | 73 65 65 6e 20 69 6e 20 |message |seen in |
|000041c0| 65 61 63 68 20 72 6f 6f | 6d 20 20 20 2a 2f 0a 09 |each roo|m */..|
|000041d0| 63 68 61 72 20 67 65 6e | 65 72 61 74 69 6f 6e 5b |char gen|eration[|
|000041e0| 4d 41 58 52 4f 4f 4d 53 | 5d 3b 09 2f 2a 20 47 65 |MAXROOMS|];./* Ge|
|000041f0| 6e 65 72 61 74 69 6f 6e | 20 23 20 28 66 6f 72 20 |neration| # (for |
|00004200| 70 72 69 76 61 74 65 20 | 72 6f 6f 6d 73 29 20 2a |private |rooms) *|
|00004210| 2f 0a 09 63 68 61 72 20 | 66 6f 72 67 65 74 5b 4d |/..char |forget[M|
|00004220| 41 58 52 4f 4f 4d 53 5d | 3b 09 09 2f 2a 20 46 6f |AXROOMS]|;../* Fo|
|00004230| 72 67 6f 74 74 65 6e 20 | 67 65 6e 65 72 61 74 69 |rgotten |generati|
|00004240| 6f 6e 20 6e 75 6d 62 65 | 72 20 20 20 20 20 20 2a |on numbe|r *|
|00004250| 2f 0a 09 6c 6f 6e 67 20 | 6d 61 69 6c 6e 75 6d 5b |/..long |mailnum[|
|00004260| 4d 41 49 4c 53 4c 4f 54 | 53 5d 3b 09 2f 2a 20 4d |MAILSLOT|S];./* M|
|00004270| 65 73 73 61 67 65 20 23 | 27 73 20 6f 66 20 65 61 |essage #|'s of ea|
|00004280| 63 68 20 6d 61 69 6c 20 | 6d 65 73 73 61 67 65 20 |ch mail |message |
|00004290| 2a 2f 0a 09 6c 6f 6e 67 | 20 6d 61 69 6c 70 6f 73 |*/..long| mailpos|
|000042a0| 5b 4d 41 49 4c 53 4c 4f | 54 53 5d 3b 09 2f 2a 20 |[MAILSLO|TS];./* |
|000042b0| 44 69 73 6b 20 70 6f 73 | 69 74 69 6f 6e 73 20 6f |Disk pos|itions o|
|000042c0| 66 20 65 61 63 68 20 6d | 61 69 6c 20 20 20 20 20 |f each m|ail |
|000042d0| 20 2a 2f 0a 09 75 6e 73 | 69 67 6e 65 64 20 66 6c | */..uns|igned fl|
|000042e0| 61 67 73 3b 09 09 09 2f | 2a 20 53 65 65 20 55 53 |ags;.../|* See US|
|000042f0| 5f 20 66 6c 61 67 73 20 | 62 65 6c 6f 77 20 20 20 |_ flags |below |
|00004300| 20 20 20 20 20 20 20 20 | 20 20 20 2a 2f 0a 09 69 | | */..i|
|00004310| 6e 74 20 73 63 72 65 65 | 6e 77 69 64 74 68 3b 09 |nt scree|nwidth;.|
|00004320| 09 2f 2a 20 46 6f 72 20 | 66 6f 72 6d 61 74 74 69 |./* For |formatti|
|00004330| 6e 67 20 6d 65 73 73 61 | 67 65 73 20 20 20 20 20 |ng messa|ges |
|00004340| 20 20 20 20 20 2a 2f 0a | 09 69 6e 74 20 74 69 6d | */.|.int tim|
|00004350| 65 73 63 61 6c 6c 65 64 | 3b 09 09 2f 2a 20 54 6f |escalled|;../* To|
|00004360| 74 61 6c 20 6e 75 6d 62 | 65 72 20 6f 66 20 6c 6f |tal numb|er of lo|
|00004370| 67 69 6e 73 20 20 20 20 | 20 20 20 20 20 20 20 2a |gins | *|
|00004380| 2f 0a 09 69 6e 74 20 70 | 6f 73 74 65 64 3b 09 09 |/..int p|osted;..|
|00004390| 09 2f 2a 20 4e 75 6d 62 | 65 72 20 6f 66 20 6d 65 |./* Numb|er of me|
|000043a0| 73 73 61 67 65 73 20 70 | 6f 73 74 65 64 20 28 65 |ssages p|osted (e|
|000043b0| 76 65 72 29 20 2a 2f 0a | 09 63 68 61 72 20 66 75 |ver) */.|.char fu|
|000043c0| 6c 6c 6e 61 6d 65 5b 33 | 30 5d 3b 09 09 2f 2a 20 |llname[3|0];../* |
|000043d0| 42 75 6c 6c 65 74 69 6e | 20 42 6f 61 72 64 20 6e |Bulletin| Board n|
|000043e0| 61 6d 65 20 66 6f 72 20 | 6d 65 73 73 61 67 65 73 |ame for |messages|
|000043f0| 20 2a 2f 0a 09 6c 6f 6e | 67 20 65 74 65 72 6e 61 | */..lon|g eterna|
|00004400| 6c 3b 09 09 09 2f 2a 20 | 45 74 65 72 6e 61 6c 20 |l;.../* |Eternal |
|00004410| 75 73 65 72 20 6e 75 6d | 62 65 72 20 20 20 20 20 |user num|ber |
|00004420| 20 20 20 20 20 20 20 20 | 20 2a 2f 0a 09 6c 6f 6e | | */..lon|
|00004430| 67 20 6c 61 73 74 63 61 | 6c 6c 3b 09 09 09 2f 2a |g lastca|ll;.../*|
|00004440| 20 4c 61 73 74 20 74 69 | 6d 65 20 74 68 65 20 75 | Last ti|me the u|
|00004450| 73 65 72 20 63 61 6c 6c | 65 64 20 20 20 20 20 20 |ser call|ed |
|00004460| 20 20 2a 2f 0a 09 09 09 | 09 7d 3b 0a 0a 23 64 65 | */....|.};..#de|
|00004470| 66 69 6e 65 20 55 53 5f | 50 45 52 4d 09 09 31 09 |fine US_|PERM..1.|
|00004480| 09 2f 2a 20 50 65 72 6d | 61 6e 65 6e 74 20 75 73 |./* Perm|anent us|
|00004490| 65 72 3b 20 64 6f 6e 27 | 74 20 73 63 72 6f 6c 6c |er; don'|t scroll|
|000044a0| 20 6f 66 66 20 2a 2f 0a | 23 64 65 66 69 6e 65 20 | off */.|#define |
|000044b0| 55 53 5f 41 49 44 45 09 | 09 32 09 09 2f 2a 20 41 |US_AIDE.|.2../* A|
|000044c0| 69 64 65 20 70 72 69 76 | 69 6c 65 67 65 73 20 20 |ide priv|ileges |
|000044d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000044e0| 2a 2f 0a 23 64 65 66 69 | 6e 65 20 55 53 5f 4c 41 |*/.#defi|ne US_LA|
|000044f0| 53 54 4f 4c 44 09 31 36 | 09 09 2f 2a 20 50 72 69 |STOLD.16|../* Pri|
|00004500| 6e 74 20 6c 61 73 74 20 | 6f 6c 64 20 6d 65 73 73 |nt last |old mess|
|00004510| 61 67 65 20 77 69 74 68 | 20 6e 65 77 20 20 2a 2f |age with| new */|
|00004520| 0a 23 64 65 66 69 6e 65 | 20 55 53 5f 45 58 50 45 |.#define| US_EXPE|
|00004530| 52 54 09 33 32 09 09 2f | 2a 20 45 78 70 65 72 69 |RT.32../|* Experi|
|00004540| 65 6e 63 65 64 20 75 73 | 65 72 09 09 20 20 20 20 |enced us|er.. |
|00004550| 2a 2f 0a 23 64 65 66 69 | 6e 65 20 55 53 5f 55 4e |*/.#defi|ne US_UN|
|00004560| 4c 49 53 54 45 44 09 36 | 34 09 09 2f 2a 20 55 6e |LISTED.6|4../* Un|
|00004570| 6c 69 73 74 65 64 20 75 | 73 65 72 6c 6f 67 20 65 |listed u|serlog e|
|00004580| 6e 74 72 79 20 20 20 20 | 20 20 20 20 20 20 20 2a |ntry | *|
|00004590| 2f 0a 23 64 65 66 69 6e | 65 20 55 53 5f 4e 4f 50 |/.#defin|e US_NOP|
|000045a0| 52 4f 4d 50 54 09 31 32 | 38 09 09 2f 2a 20 44 6f |ROMPT.12|8../* Do|
|000045b0| 6e 27 74 20 70 72 6f 6d | 70 74 20 61 66 74 65 72 |n't prom|pt after|
|000045c0| 20 65 61 63 68 20 6d 65 | 73 73 61 67 65 20 20 2a | each me|ssage *|
|000045d0| 2f 0a 23 64 65 66 69 6e | 65 20 55 53 5f 54 57 49 |/.#defin|e US_TWI|
|000045e0| 54 09 09 32 35 36 09 09 | 2f 2a 20 50 72 6f 62 6c |T..256..|/* Probl|
|000045f0| 65 6d 20 75 73 65 72 09 | 09 09 20 20 20 20 2a 2f |em user.|.. */|
|00004600| 0a 23 64 65 66 69 6e 65 | 20 55 53 5f 4e 4f 4e 45 |.#define| US_NONE|
|00004610| 54 09 35 31 32 09 09 2f | 2a 20 44 65 6e 79 20 74 |T.512../|* Deny t|
|00004620| 68 69 73 20 75 73 65 72 | 20 6e 65 74 20 70 72 69 |his user| net pri|
|00004630| 76 69 6c 65 67 65 73 20 | 20 20 20 2a 2f 0a 23 64 |vileges | */.#d|
|00004640| 65 66 69 6e 65 20 55 53 | 5f 50 52 45 46 09 09 31 |efine US|_PREF..1|
|00004650| 30 32 34 09 09 2f 2a 20 | 50 72 65 66 65 72 72 65 |024../* |Preferre|
|00004660| 64 20 75 73 65 72 20 20 | 20 20 20 20 20 20 20 20 |d user | |
|00004670| 20 20 20 20 20 20 20 20 | 20 2a 2f 0a 20 0a 4c 6f | | */. .Lo|
|00004680| 6f 6b 73 20 73 69 6d 70 | 6c 65 20 65 6e 6f 75 67 |oks simp|le enoug|
|00004690| 68 2c 20 64 6f 65 73 6e | 27 74 20 69 74 3f 20 20 |h, doesn|'t it? |
|000046a0| 4f 6e 65 20 74 6f 70 69 | 63 20 61 74 20 61 20 74 |One topi|c at a t|
|000046b0| 69 6d 65 3a 0a 0a 20 52 | 61 6e 64 6f 6d 20 63 6f |ime:.. R|andom co|
|000046c0| 6e 66 69 67 75 72 61 74 | 69 6f 6e 20 70 61 72 61 |nfigurat|ion para|
|000046d0| 6d 65 74 65 72 73 3a 0a | 2d 73 63 72 65 65 6e 77 |meters:.|-screenw|
|000046e0| 69 64 74 68 20 69 73 20 | 74 68 65 20 63 61 6c 6c |idth is |the call|
|000046f0| 65 72 27 73 20 73 63 72 | 65 65 6e 20 77 69 64 74 |er's scr|een widt|
|00004700| 68 2e 20 20 57 65 20 66 | 6f 72 6d 61 74 20 61 6c |h. We f|ormat al|
|00004710| 6c 20 6d 65 73 73 61 67 | 65 73 20 74 6f 20 74 68 |l messag|es to th|
|00004720| 69 73 0a 77 69 64 74 68 | 2c 20 61 73 20 62 65 73 |is.width|, as bes|
|00004730| 74 20 77 65 20 63 61 6e | 2e 20 66 6c 61 67 73 20 |t we can|. flags |
|00004740| 69 73 20 61 6e 6f 74 68 | 65 72 20 62 69 74 2d 62 |is anoth|er bit-b|
|00004750| 61 67 2c 20 72 65 63 6f | 72 64 69 6e 67 20 77 68 |ag, reco|rding wh|
|00004760| 65 74 68 65 72 20 77 65 | 20 77 61 6e 74 0a 70 72 |ether we| want.pr|
|00004770| 6f 6d 70 74 73 2c 20 70 | 65 6f 70 6c 65 20 77 68 |ompts, p|eople wh|
|00004780| 6f 20 77 61 6e 74 20 74 | 6f 20 73 75 70 70 72 65 |o want t|o suppre|
|00004790| 73 73 20 74 68 65 20 6c | 69 74 74 6c 65 20 61 75 |ss the l|ittle au|
|000047a0| 74 6f 6d 61 74 69 63 20 | 68 69 6e 74 73 20 61 6c |tomatic |hints al|
|000047b0| 6c 20 74 68 72 6f 75 67 | 68 0a 74 68 65 20 73 79 |l throug|h.the sy|
|000047c0| 73 74 65 6d 2c 20 22 70 | 72 6f 62 6c 65 6d 20 75 |stem, "p|roblem u|
|000047d0| 73 65 72 73 2c 22 20 65 | 74 63 2e 0a 20 0a 20 20 |sers," e|tc.. . |
|000047e0| 41 74 74 61 63 68 6d 65 | 6e 74 73 2c 20 6e 61 6d |Attachme|nts, nam|
|000047f0| 65 73 20 26 20 6e 75 6d | 62 65 72 73 3a 0a 2d 55 |es & num|bers:.-U|
|00004800| 53 75 69 64 20 69 73 20 | 74 68 65 20 75 69 64 20 |Suid is |the uid |
|00004810| 74 68 65 20 61 63 63 6f | 75 6e 74 20 77 61 73 20 |the acco|unt was |
|00004820| 65 73 74 61 62 6c 69 73 | 68 65 64 20 75 6e 64 65 |establis|hed unde|
|00004830| 72 2e 20 46 6f 72 20 6d | 6f 73 74 20 75 73 65 72 |r. For m|ost user|
|00004840| 73 20 69 74 20 77 69 6c | 6c 0a 62 65 20 74 68 65 |s it wil|l.be the|
|00004850| 20 73 61 6d 65 20 61 73 | 20 42 42 53 55 49 44 2c | same as| BBSUID,|
|00004860| 20 62 75 74 20 69 74 20 | 77 6f 6e 27 74 20 62 65 | but it |won't be|
|00004870| 20 66 6f 72 20 75 73 65 | 72 73 20 74 68 61 74 20 | for use|rs that |
|00004880| 6c 6f 67 67 65 64 20 69 | 6e 20 66 72 6f 6d 20 74 |logged i|n from t|
|00004890| 68 65 20 73 68 65 6c 6c | 2e 0a 2d 66 75 6c 6c 6e |he shell|..-fulln|
|000048a0| 61 6d 65 20 69 73 20 74 | 68 65 20 75 73 65 72 27 |ame is t|he user'|
|000048b0| 73 20 66 75 6c 6c 20 6c | 6f 67 69 6e 20 6e 61 6d |s full l|ogin nam|
|000048c0| 65 2e 0a 2d 65 74 65 72 | 6e 61 6c 20 69 73 20 74 |e..-eter|nal is t|
|000048d0| 68 65 20 75 73 65 72 27 | 73 20 22 65 74 65 72 6e |he user'|s "etern|
|000048e0| 61 6c 22 20 75 73 65 72 | 20 6e 75 6d 62 65 72 2e |al" user| number.|
|000048f0| 20 49 74 20 69 73 20 63 | 61 6c 6c 65 64 20 65 74 | It is c|alled et|
|00004900| 65 72 6e 61 6c 20 62 65 | 63 61 75 73 65 0a 6f 6e |ernal be|cause.on|
|00004910| 63 65 20 73 6f 6d 65 6f | 6e 65 20 68 61 73 20 61 |ce someo|ne has a|
|00004920| 20 75 73 65 72 20 6e 75 | 6d 62 65 72 2c 20 69 74 | user nu|mber, it|
|00004930| 20 69 73 20 6e 65 76 65 | 72 20 75 73 65 64 20 61 | is neve|r used a|
|00004940| 67 61 69 6e 20 61 66 74 | 65 72 20 74 68 65 20 75 |gain aft|er the u|
|00004950| 73 65 72 20 69 73 0a 64 | 65 6c 65 74 65 64 2e 20 |ser is.d|eleted. |
|00004960| 54 68 69 73 20 61 6c 6c | 6f 77 73 20 61 6e 20 65 |This all|ows an e|
|00004970| 61 73 79 20 77 61 79 20 | 74 6f 20 6e 75 6d 65 72 |asy way |to numer|
|00004980| 69 63 61 6c 6c 79 20 72 | 65 70 72 65 73 65 6e 74 |ically r|epresent|
|00004990| 20 70 65 6f 70 6c 65 2e | 0a 2d 70 61 73 73 77 6f | people.|.-passwo|
|000049a0| 72 64 20 69 73 20 74 68 | 65 20 75 73 65 72 27 73 |rd is th|e user's|
|000049b0| 20 70 61 73 73 77 6f 72 | 64 2e 20 49 74 20 69 73 | passwor|d. It is|
|000049c0| 20 6f 6e 6c 79 20 72 65 | 71 75 65 73 74 65 64 20 | only re|quested |
|000049d0| 69 66 20 74 68 65 20 75 | 73 65 72 20 64 6f 65 73 |if the u|ser does|
|000049e0| 20 6e 6f 74 0a 68 61 76 | 65 20 73 68 65 6c 6c 20 | not.hav|e shell |
|000049f0| 61 63 63 65 73 73 20 61 | 6e 64 20 69 73 20 42 42 |access a|nd is BB|
|00004a00| 53 2d 6f 6e 6c 79 2e 0a | 0a 20 20 46 65 65 70 69 |S-only..|. Feepi|
|00004a10| 6e 67 20 43 72 65 61 74 | 75 72 65 73 3a 0a 2d 74 |ng Creat|ures:.-t|
|00004a20| 69 6d 65 73 63 61 6c 6c | 65 64 20 69 73 20 74 68 |imescall|ed is th|
|00004a30| 65 20 6e 75 6d 62 65 72 | 20 6f 66 20 74 69 6d 65 |e number| of time|
|00004a40| 73 20 74 68 65 20 75 73 | 65 72 20 68 61 73 20 63 |s the us|er has c|
|00004a50| 61 6c 6c 65 64 2e 0a 2d | 70 6f 73 74 65 64 20 69 |alled..-|posted i|
|00004a60| 73 20 74 68 65 20 6e 75 | 6d 62 65 72 20 6f 66 20 |s the nu|mber of |
|00004a70| 6d 65 73 73 61 67 65 73 | 20 74 68 65 20 75 73 65 |messages| the use|
|00004a80| 72 20 68 61 73 20 70 6f | 73 74 65 64 2c 20 70 75 |r has po|sted, pu|
|00004a90| 62 6c 69 63 20 6f 72 20 | 70 72 69 76 61 74 65 2e |blic or |private.|
|00004aa0| 0a 0a 20 20 4d 69 73 63 | 20 73 74 75 66 66 3a 0a |.. Misc| stuff:.|
|00004ab0| 2d 6c 61 73 74 63 61 6c | 6c 20 68 6f 6c 64 73 20 |-lastcal|l holds |
|00004ac0| 74 68 65 20 64 61 74 65 | 20 61 6e 64 20 74 69 6d |the date| and tim|
|00004ad0| 65 20 28 73 74 61 6e 64 | 61 72 64 20 55 6e 69 78 |e (stand|ard Unix|
|00004ae0| 20 66 6f 72 6d 61 74 29 | 20 74 68 65 20 75 73 65 | format)| the use|
|00004af0| 72 20 63 61 6c 6c 65 64 | 2c 20 73 6f 0a 77 65 20 |r called|, so.we |
|00004b00| 63 61 6e 20 70 75 72 67 | 65 20 70 65 6f 70 6c 65 |can purg|e people|
|00004b10| 20 77 68 6f 20 68 61 76 | 65 6e 27 74 20 63 61 6c | who hav|en't cal|
|00004b20| 6c 65 64 20 69 6e 20 61 | 20 67 69 76 65 6e 20 61 |led in a| given a|
|00004b30| 6d 6f 75 6e 74 20 6f 66 | 20 74 69 6d 65 2e 0a 0a |mount of| time...|
|00004b40| 20 20 46 69 6e 64 69 6e | 67 20 6e 65 77 20 6d 65 | Findin|g new me|
|00004b50| 73 73 61 67 65 73 3a 0a | 54 68 69 73 20 69 73 20 |ssages:.|This is |
|00004b60| 74 68 65 20 6d 6f 73 74 | 20 69 6d 70 6f 72 74 61 |the most| importa|
|00004b70| 6e 74 2e 20 20 54 68 75 | 73 2c 20 69 74 20 77 69 |nt. Thu|s, it wi|
|00004b80| 6e 64 73 20 75 70 20 62 | 65 69 6e 67 20 74 68 65 |nds up b|eing the|
|00004b90| 20 6d 6f 73 74 0a 65 6c | 61 62 6f 72 61 74 65 2e | most.el|aborate.|
|00004ba0| 20 20 43 6f 6e 63 65 70 | 74 75 61 6c 6c 79 2c 20 | Concep|tually, |
|00004bb0| 77 68 61 74 20 77 65 20 | 77 6f 75 6c 64 20 6c 69 |what we |would li|
|00004bc0| 6b 65 20 74 6f 20 64 6f | 20 69 73 20 6d 61 72 6b |ke to do| is mark|
|00004bd0| 20 65 61 63 68 0a 6d 65 | 73 73 61 67 65 20 77 69 | each.me|ssage wi|
|00004be0| 74 68 20 61 20 62 69 74 | 20 61 66 74 65 72 20 6f |th a bit| after o|
|00004bf0| 75 72 20 63 61 6c 6c 65 | 72 20 68 61 73 20 72 65 |ur calle|r has re|
|00004c00| 61 64 20 69 74 2c 20 73 | 6f 20 77 65 20 63 61 6e |ad it, s|o we can|
|00004c10| 20 61 76 6f 69 64 0a 70 | 72 69 6e 74 69 6e 67 20 | avoid.p|rinting |
|00004c20| 69 74 20 6f 75 74 20 61 | 67 61 69 6e 20 6e 65 78 |it out a|gain nex|
|00004c30| 74 20 63 61 6c 6c 2e 20 | 20 55 6e 66 6f 72 74 75 |t call. | Unfortu|
|00004c40| 6e 61 74 65 6c 79 2c 20 | 77 69 74 68 20 6c 6f 74 |nately, |with lot|
|00004c50| 73 20 6f 66 20 75 73 65 | 72 0a 65 6e 74 72 69 65 |s of use|r.entrie|
|00004c60| 73 20 74 68 69 73 20 77 | 6f 75 6c 64 20 72 65 71 |s this w|ould req|
|00004c70| 75 69 72 65 20 61 64 64 | 69 6e 67 20 6c 6f 74 73 |uire add|ing lots|
|00004c80| 20 6f 66 20 73 70 61 63 | 65 20 74 6f 20 65 61 63 | of spac|e to eac|
|00004c90| 68 20 6d 65 73 73 61 67 | 65 2e 2e 2e 20 61 6e 64 |h messag|e... and|
|00004ca0| 0a 77 65 27 64 20 77 69 | 6e 64 20 75 70 20 72 65 |.we'd wi|nd up re|
|00004cb0| 61 64 69 6e 67 20 6f 66 | 66 20 64 69 73 6b 20 6c |ading of|f disk l|
|00004cc0| 6f 74 73 20 6f 66 20 6d | 65 73 73 61 67 65 73 20 |ots of m|essages |
|00004cd0| 77 68 69 63 68 20 77 6f | 75 6c 64 20 6e 65 76 65 |which wo|uld neve|
|00004ce0| 72 0a 67 65 74 20 70 72 | 69 6e 74 65 64 2e 20 20 |r.get pr|inted. |
|00004cf0| 53 6f 20 77 65 20 72 65 | 73 6f 72 74 20 74 6f 20 |So we re|sort to |
|00004d00| 61 70 70 72 6f 78 69 6d | 61 74 69 6f 6e 20 61 6e |approxim|ation an|
|00004d10| 64 20 6c 6f 74 73 20 6f | 66 20 73 74 6f 72 61 67 |d lots o|f storag|
|00004d20| 65 2e 0a 0a 54 68 65 20 | 61 70 70 72 6f 78 69 6d |e...The |approxim|
|00004d30| 61 74 69 6f 6e 20 63 6f | 6d 65 73 20 69 6e 20 64 |ation co|mes in d|
|00004d40| 6f 69 6e 67 20 74 68 69 | 6e 67 73 20 61 74 20 74 |oing thi|ngs at t|
|00004d50| 68 65 20 67 72 61 6e 75 | 6c 61 72 69 74 79 20 6f |he granu|larity o|
|00004d60| 66 0a 72 6f 6f 6d 73 20 | 72 61 74 68 65 72 20 74 |f.rooms |rather t|
|00004d70| 68 61 6e 20 6d 65 73 73 | 61 67 65 73 2e 20 20 4d |han mess|ages. M|
|00004d80| 65 73 73 61 67 65 73 20 | 69 6e 20 61 20 67 69 76 |essages |in a giv|
|00004d90| 65 6e 20 72 6f 6f 6d 20 | 61 72 65 20 22 6e 65 77 |en room |are "new|
|00004da0| 22 0a 75 6e 74 69 6c 20 | 77 65 20 76 69 73 69 74 |".until |we visit|
|00004db0| 20 69 74 2c 20 61 6e 64 | 20 22 6f 6c 64 22 20 61 | it, and| "old" a|
|00004dc0| 66 74 65 72 20 77 65 20 | 6c 65 61 76 65 20 74 68 |fter we |leave th|
|00004dd0| 65 20 72 6f 6f 6d 2e 2e | 2e 20 77 68 65 74 68 65 |e room..|. whethe|
|00004de0| 72 0a 77 65 20 72 65 61 | 64 20 61 6e 79 20 6f 66 |r.we rea|d any of|
|00004df0| 20 74 68 65 6d 20 6f 72 | 20 6e 6f 74 2e 20 20 54 | them or| not. T|
|00004e00| 68 69 73 20 63 61 6e 20 | 61 63 74 75 61 6c 6c 79 |his can |actually|
|00004e10| 20 62 65 20 64 65 66 65 | 6e 64 65 64 3a 20 61 6e | be defe|nded: an|
|00004e20| 79 6f 6e 65 0a 77 68 6f | 20 70 61 73 73 65 73 20 |yone.who| passes |
|00004e30| 74 68 72 6f 75 67 68 20 | 61 20 72 6f 6f 6d 20 77 |through |a room w|
|00004e40| 69 74 68 6f 75 74 20 72 | 65 61 64 69 6e 67 20 74 |ithout r|eading t|
|00004e50| 68 65 20 63 6f 6e 74 65 | 6e 74 73 20 70 72 6f 62 |he conte|nts prob|
|00004e60| 61 62 6c 79 20 6a 75 73 | 74 0a 69 73 6e 27 74 20 |ably jus|t.isn't |
|00004e70| 69 6e 74 65 72 65 73 74 | 65 64 20 69 6e 20 74 68 |interest|ed in th|
|00004e80| 65 20 74 6f 70 69 63 2c | 20 61 6e 64 20 77 6f 75 |e topic,| and wou|
|00004e90| 6c 64 20 6a 75 73 74 20 | 61 73 20 73 6f 6f 6e 20 |ld just |as soon |
|00004ea0| 6e 6f 74 20 62 65 20 64 | 72 61 67 67 65 64 0a 62 |not be d|ragged.b|
|00004eb0| 61 63 6b 20 65 76 65 72 | 79 20 76 69 73 69 74 20 |ack ever|y visit |
|00004ec0| 61 6e 64 20 66 6f 72 63 | 65 64 20 74 6f 20 72 65 |and forc|ed to re|
|00004ed0| 61 64 20 74 68 65 6d 2e | 20 20 47 69 76 65 6e 20 |ad them.| Given |
|00004ee0| 74 68 61 74 20 6d 65 73 | 73 61 67 65 73 20 61 72 |that mes|sages ar|
|00004ef0| 65 0a 6e 75 6d 62 65 72 | 65 64 20 73 65 71 75 65 |e.number|ed seque|
|00004f00| 6e 74 69 61 6c 6c 79 2c | 20 77 65 20 63 61 6e 20 |ntially,| we can |
|00004f10| 73 69 6d 70 6c 79 20 72 | 65 63 6f 72 64 20 74 68 |simply r|ecord th|
|00004f20| 65 20 6d 6f 73 74 20 72 | 65 63 65 6e 74 20 6d 65 |e most r|ecent me|
|00004f30| 73 73 61 67 65 20 49 44 | 23 0a 6f 66 20 65 61 63 |ssage ID|#.of eac|
|00004f40| 68 20 72 6f 6f 6d 20 61 | 73 20 6f 66 20 74 68 65 |h room a|s of the|
|00004f50| 20 6c 61 73 74 20 74 69 | 6d 65 20 77 65 20 76 69 | last ti|me we vi|
|00004f60| 73 69 74 65 64 20 69 74 | 2e 20 56 65 72 79 20 73 |sited it|. Very s|
|00004f70| 69 6d 70 6c 65 2e 0a 0a | 50 75 74 74 69 6e 67 20 |imple...|Putting |
|00004f80| 69 74 20 61 6c 6c 20 74 | 6f 67 65 74 68 65 72 2c |it all t|ogether,|
|00004f90| 20 77 65 20 63 61 6e 20 | 6e 6f 77 20 63 6f 6d 70 | we can |now comp|
|00004fa0| 75 74 65 20 77 68 65 74 | 68 65 72 20 61 20 67 69 |ute whet|her a gi|
|00004fb0| 76 65 6e 20 72 6f 6f 6d | 0a 68 61 73 20 6e 65 77 |ven room|.has new|
|00004fc0| 20 6d 65 73 73 61 67 65 | 73 20 66 6f 72 20 6f 75 | message|s for ou|
|00004fd0| 72 20 63 75 72 72 65 6e | 74 20 63 61 6c 6c 65 72 |r curren|t caller|
|00004fe0| 20 77 69 74 68 6f 75 74 | 20 67 6f 69 6e 67 20 74 | without| going t|
|00004ff0| 6f 20 66 75 6c 6c 72 6f | 6f 6d 20 61 74 20 61 6c |o fullro|om at al|
|00005000| 6c 3a 0a 0a 20 3e 20 57 | 65 20 67 65 74 20 74 68 |l:.. > W|e get th|
|00005010| 65 20 75 73 65 72 73 75 | 70 70 2e 6c 61 73 74 73 |e usersu|pp.lasts|
|00005020| 65 65 6e 5b 5d 20 66 6f | 72 20 74 68 65 20 72 6f |een[] fo|r the ro|
|00005030| 6f 6d 20 69 6e 20 71 75 | 65 73 74 69 6f 6e 0a 20 |om in qu|estion. |
|00005040| 3e 20 57 65 20 63 6f 6d | 70 61 72 65 20 74 68 69 |> We com|pare thi|
|00005050| 73 20 77 69 74 68 20 74 | 68 65 20 72 6f 6f 6d 27 |s with t|he room'|
|00005060| 73 20 71 75 69 63 6b 72 | 6f 6f 6d 2e 51 52 68 69 |s quickr|oom.QRhi|
|00005070| 67 68 65 73 74 2c 20 77 | 68 69 63 68 20 74 65 6c |ghest, w|hich tel|
|00005080| 6c 73 20 75 73 0a 20 20 | 20 77 68 61 74 20 74 68 |ls us. | what th|
|00005090| 65 20 6d 6f 73 74 20 72 | 65 63 65 6e 74 20 6d 65 |e most r|ecent me|
|000050a0| 73 73 61 67 65 20 69 6e | 20 74 68 65 20 72 6f 6f |ssage in| the roo|
|000050b0| 6d 20 69 73 20 63 75 72 | 72 65 6e 74 6c 79 2e 0a |m is cur|rently..|
|000050c0| 0a 0a 09 20 20 20 20 20 | 52 45 4d 45 4d 42 45 52 |... |REMEMBER|
|000050d0| 49 4e 47 20 57 48 49 43 | 48 20 50 52 49 56 41 54 |ING WHIC|H PRIVAT|
|000050e0| 45 20 52 4f 4f 4d 53 20 | 54 4f 20 56 49 53 49 54 |E ROOMS |TO VISIT|
|000050f0| 0a 0a 54 68 69 73 20 6c | 6f 6f 6b 73 20 74 72 69 |..This l|ooks tri|
|00005100| 76 69 61 6c 20 61 74 20 | 66 69 72 73 74 20 67 6c |vial at |first gl|
|00005110| 61 6e 63 65 20 2d 2d 20 | 6a 75 73 74 20 72 65 63 |ance -- |just rec|
|00005120| 6f 72 64 20 6f 6e 65 20 | 62 69 74 20 70 65 72 20 |ord one |bit per |
|00005130| 72 6f 6f 6d 20 70 65 72 | 0a 63 61 6c 6c 65 72 20 |room per|.caller |
|00005140| 69 6e 20 74 68 65 20 6c | 6f 67 20 72 65 63 6f 72 |in the l|og recor|
|00005150| 64 73 2e 20 20 54 68 65 | 20 70 72 6f 62 6c 65 6d |ds. The| problem|
|00005160| 20 69 73 20 74 68 61 74 | 20 72 6f 6f 6d 73 20 67 | is that| rooms g|
|00005170| 65 74 20 72 65 63 79 63 | 6c 65 64 0a 70 65 72 69 |et recyc|led.peri|
|00005180| 6f 64 69 63 61 6c 6c 79 | 2c 20 61 6e 64 20 77 65 |odically|, and we|
|00005190| 27 64 20 72 61 74 68 65 | 72 20 6e 6f 74 20 72 75 |'d rathe|r not ru|
|000051a0| 6e 20 74 68 72 6f 75 67 | 68 20 61 6c 6c 20 74 68 |n throug|h all th|
|000051b0| 65 20 6c 6f 67 20 65 6e | 74 72 69 65 73 20 65 61 |e log en|tries ea|
|000051c0| 63 68 0a 74 69 6d 65 20 | 77 65 20 64 6f 20 69 74 |ch.time |we do it|
|000051d0| 2e 09 53 6f 20 77 65 20 | 61 64 6f 70 74 20 61 20 |..So we |adopt a |
|000051e0| 6b 6c 75 64 67 65 20 77 | 68 69 63 68 20 73 68 6f |kludge w|hich sho|
|000051f0| 75 6c 64 20 77 6f 72 6b | 20 39 39 25 20 6f 66 20 |uld work| 99% of |
|00005200| 74 68 65 20 74 69 6d 65 | 2e 0a 0a 41 73 20 70 72 |the time|...As pr|
|00005210| 65 76 69 6f 75 73 6c 79 | 20 6e 6f 74 65 64 2c 20 |eviously| noted, |
|00005220| 65 61 63 68 20 72 6f 6f | 6d 20 68 61 73 20 61 20 |each roo|m has a |
|00005230| 67 65 6e 65 72 61 74 69 | 6f 6e 20 6e 75 6d 62 65 |generati|on numbe|
|00005240| 72 2c 20 77 68 69 63 68 | 20 69 73 20 62 75 6d 70 |r, which| is bump|
|00005250| 65 64 0a 62 79 20 6f 6e | 65 20 65 61 63 68 20 74 |ed.by on|e each t|
|00005260| 69 6d 65 20 69 74 20 69 | 73 20 72 65 63 79 63 6c |ime it i|s recycl|
|00005270| 65 64 2e 20 20 41 73 20 | 6e 6f 74 20 6e 6f 74 65 |ed. As |not note|
|00005280| 64 2c 20 74 68 69 73 20 | 67 65 6e 65 72 61 74 69 |d, this |generati|
|00005290| 6f 6e 20 6e 75 6d 62 65 | 72 0a 72 75 6e 73 20 66 |on numbe|r.runs f|
|000052a0| 72 6f 6d 20 30 20 2d 3e | 20 31 32 37 20 28 61 6e |rom 0 ->| 127 (an|
|000052b0| 64 20 74 68 65 6e 20 77 | 72 61 70 73 20 61 72 6f |d then w|raps aro|
|000052c0| 75 6e 64 20 61 6e 64 20 | 73 74 61 72 74 73 20 6f |und and |starts o|
|000052d0| 76 65 72 29 2e 20 0a 20 | 20 57 68 65 6e 20 73 6f |ver). . | When so|
|000052e0| 6d 65 6f 6e 65 20 76 69 | 73 69 74 73 20 61 20 72 |meone vi|sits a r|
|000052f0| 6f 6f 6d 2c 20 77 65 20 | 73 65 74 20 75 73 65 72 |oom, we |set user|
|00005300| 73 75 70 70 2e 67 65 6e | 65 72 61 74 69 6f 6e 20 |supp.gen|eration |
|00005310| 66 6f 72 20 74 68 65 20 | 72 6f 6f 6d 0a 65 71 75 |for the |room.equ|
|00005320| 61 6c 20 74 6f 20 74 68 | 61 74 20 6f 66 20 74 68 |al to th|at of th|
|00005330| 65 20 72 6f 6f 6d 2e 20 | 20 54 68 69 73 20 66 6c |e room. | This fl|
|00005340| 61 67 73 20 74 68 65 20 | 72 6f 6f 6d 20 61 73 20 |ags the |room as |
|00005350| 62 65 69 6e 67 20 61 76 | 61 69 6c 61 62 6c 65 2e |being av|ailable.|
|00005360| 0a 49 66 20 74 68 65 20 | 72 6f 6f 6d 20 67 65 74 |.If the |room get|
|00005370| 73 20 72 65 63 79 63 6c | 65 64 2c 20 6f 6e 20 6f |s recycl|ed, on o|
|00005380| 75 72 20 6e 65 78 74 20 | 76 69 73 69 74 20 74 68 |ur next |visit th|
|00005390| 65 20 74 77 6f 20 67 65 | 6e 65 72 61 74 69 6f 6e |e two ge|neration|
|000053a0| 20 6e 75 6d 62 65 72 73 | 0a 77 69 6c 6c 20 6e 6f | numbers|.will no|
|000053b0| 20 6c 6f 6e 67 65 72 20 | 6d 61 74 63 68 2c 20 61 | longer |match, a|
|000053c0| 6e 64 20 74 68 65 20 72 | 6f 6f 6d 20 77 69 6c 6c |nd the r|oom will|
|000053d0| 20 6e 6f 20 6c 6f 6e 67 | 65 72 20 62 65 20 61 76 | no long|er be av|
|000053e0| 61 69 6c 61 62 6c 65 20 | 2d 2d 20 6a 75 73 74 0a |ailable |-- just.|
|000053f0| 74 68 65 20 72 65 73 75 | 6c 74 20 77 65 27 72 65 |the resu|lt we're|
|00005400| 20 6c 6f 6f 6b 69 6e 67 | 20 66 6f 72 2e 20 20 28 | looking| for. (|
|00005410| 4e 61 74 75 72 61 6c 6c | 79 2c 20 69 66 20 61 20 |Naturall|y, if a |
|00005420| 72 6f 6f 6d 20 69 73 20 | 70 75 62 6c 69 63 2c 0a |room is |public,.|
|00005430| 61 6c 6c 20 74 68 69 73 | 20 73 74 75 66 66 20 69 |all this| stuff i|
|00005440| 73 20 69 72 72 65 6c 65 | 76 61 6e 74 2e 29 0a 0a |s irrele|vant.)..|
|00005450| 54 68 69 73 20 6c 65 61 | 76 65 73 20 6f 6e 6c 79 |This lea|ves only|
|00005460| 20 74 68 65 20 70 72 6f | 62 6c 65 6d 20 6f 66 20 | the pro|blem of |
|00005470| 61 6e 20 61 63 63 69 64 | 65 6e 74 61 6c 20 6d 61 |an accid|ental ma|
|00005480| 74 63 68 75 70 20 62 65 | 74 77 65 65 6e 20 74 68 |tchup be|tween th|
|00005490| 65 20 74 77 6f 0a 6e 75 | 6d 62 65 72 73 20 67 69 |e two.nu|mbers gi|
|000054a0| 76 69 6e 67 20 73 6f 6d | 65 6f 6e 65 20 61 63 63 |ving som|eone acc|
|000054b0| 65 73 73 20 74 6f 20 61 | 20 46 6f 72 62 69 64 64 |ess to a| Forbidd|
|000054c0| 65 6e 20 52 6f 6f 6d 2e | 20 20 57 65 20 63 61 6e |en Room.| We can|
|000054d0| 27 74 20 65 6c 69 6d 69 | 6e 61 74 65 0a 74 68 69 |'t elimi|nate.thi|
|000054e0| 73 20 64 61 6e 67 65 72 | 20 63 6f 6d 70 6c 65 74 |s danger| complet|
|000054f0| 65 6c 79 2c 20 62 75 74 | 20 69 74 20 63 61 6e 20 |ely, but| it can |
|00005500| 62 65 20 72 65 64 75 63 | 65 64 20 74 6f 20 69 6e |be reduc|ed to in|
|00005510| 73 69 67 6e 69 66 69 63 | 61 6e 63 65 20 66 6f 72 |signific|ance for|
|00005520| 0a 6d 6f 73 74 20 70 75 | 72 70 6f 73 65 73 2e 09 |.most pu|rposes..|
|00005530| 28 4a 75 73 74 20 64 6f | 6e 27 74 20 62 65 74 20 |(Just do|n't bet |
|00005540| 6d 65 67 61 62 75 63 6b | 73 20 6f 6e 20 74 68 65 |megabuck|s on the|
|00005550| 20 73 65 63 75 72 69 74 | 79 20 6f 66 20 74 68 69 | securit|y of thi|
|00005560| 73 20 73 79 73 74 65 6d | 21 29 0a 45 61 63 68 20 |s system|!).Each |
|00005570| 74 69 6d 65 20 73 6f 6d | 65 6f 6e 65 20 6c 6f 67 |time som|eone log|
|00005580| 73 20 69 6e 2c 20 77 65 | 20 73 65 74 20 61 6c 6c |s in, we| set all|
|00005590| 20 22 77 72 6f 6e 67 22 | 20 67 65 6e 65 72 61 74 | "wrong"| generat|
|000055a0| 69 6f 6e 20 6e 75 6d 62 | 65 72 73 20 74 6f 20 2d |ion numb|ers to -|
|000055b0| 31 2e 0a 53 6f 20 74 68 | 65 20 72 6f 6f 6d 20 6d |1..So th|e room m|
|000055c0| 75 73 74 20 62 65 20 72 | 65 63 79 63 6c 65 64 20 |ust be r|ecycled |
|000055d0| 31 32 37 20 74 69 6d 65 | 73 20 62 65 66 6f 72 65 |127 time|s before|
|000055e0| 20 61 6e 20 61 63 63 69 | 64 65 6e 74 61 6c 20 6d | an acci|dental m|
|000055f0| 61 74 63 68 75 70 0a 63 | 61 6e 20 62 65 20 61 63 |atchup.c|an be ac|
|00005600| 68 69 65 76 65 64 2e 20 | 20 28 57 65 20 64 6f 20 |hieved. | (We do |
|00005610| 74 68 69 73 20 66 6f 72 | 20 61 6c 6c 20 72 6f 6f |this for| all roo|
|00005620| 6d 73 2c 20 49 4e 55 53 | 45 20 6f 72 20 64 65 61 |ms, INUS|E or dea|
|00005630| 64 2c 20 70 75 62 6c 69 | 63 0a 6f 72 20 70 72 69 |d, publi|c.or pri|
|00005640| 76 61 74 65 2c 20 73 69 | 6e 63 65 20 61 6e 79 20 |vate, si|nce any |
|00005650| 6f 66 20 74 68 65 6d 20 | 6d 61 79 20 62 65 20 72 |of them |may be r|
|00005660| 65 69 6e 63 61 72 6e 61 | 74 65 64 20 61 73 20 61 |eincarna|ted as a|
|00005670| 20 46 6f 72 62 69 64 64 | 65 6e 20 52 6f 6f 6d 2e | Forbidd|en Room.|
|00005680| 29 0a 0a 54 68 75 73 2c | 20 66 6f 72 20 73 6f 6d |)..Thus,| for som|
|00005690| 65 6f 6e 65 20 74 6f 20 | 61 63 63 69 64 65 6e 74 |eone to |accident|
|000056a0| 61 6c 6c 79 20 62 65 20 | 6c 65 61 64 20 74 6f 20 |ally be |lead to |
|000056b0| 61 20 46 6f 72 62 69 64 | 64 65 6e 20 52 6f 6f 6d |a Forbid|den Room|
|000056c0| 2c 20 74 68 65 79 0a 6d | 75 73 74 20 65 73 74 61 |, they.m|ust esta|
|000056d0| 62 6c 69 73 68 20 61 6e | 20 61 63 63 6f 75 6e 74 |blish an| account|
|000056e0| 20 6f 6e 20 74 68 65 20 | 73 79 73 74 65 6d 2c 20 | on the |system, |
|000056f0| 74 68 65 6e 20 6e 6f 74 | 20 63 61 6c 6c 20 75 6e |then not| call un|
|00005700| 74 69 6c 20 73 6f 6d 65 | 20 72 6f 6f 6d 0a 68 61 |til some| room.ha|
|00005710| 73 20 62 65 65 6e 20 72 | 65 63 79 63 6c 65 64 20 |s been r|ecycled |
|00005720| 31 32 37 20 74 6f 20 31 | 32 38 20 74 69 6d 65 73 |127 to 1|28 times|
|00005730| 2c 20 77 68 69 63 68 20 | 72 6f 6f 6d 20 6d 75 73 |, which |room mus|
|00005740| 74 20 62 65 0a 72 65 69 | 6e 63 61 72 6e 61 74 65 |t be.rei|ncarnate|
|00005750| 64 20 61 73 20 61 20 46 | 6f 72 62 69 64 64 65 6e |d as a F|orbidden|
|00005760| 20 52 6f 6f 6d 2c 20 77 | 68 69 63 68 20 73 6f 6d | Room, w|hich som|
|00005770| 65 6f 6e 65 20 6d 75 73 | 74 20 6e 6f 77 20 63 61 |eone mus|t now ca|
|00005780| 6c 6c 20 62 61 63 6b 0a | 28 68 61 76 69 6e 67 20 |ll back.|(having |
|00005790| 6e 6f 74 20 73 63 72 6f | 6c 6c 65 64 20 6f 66 66 |not scro|lled off|
|000057a0| 20 74 68 65 20 75 73 65 | 72 6c 6f 67 20 69 6e 20 | the use|rlog in |
|000057b0| 74 68 65 20 6d 65 61 6e | 20 74 69 6d 65 29 20 61 |the mean| time) a|
|000057c0| 6e 64 20 72 65 61 64 20 | 6e 65 77 0a 6d 65 73 73 |nd read |new.mess|
|000057d0| 61 67 65 73 2e 20 20 54 | 68 65 20 6c 61 73 74 20 |ages. T|he last |
|000057e0| 63 6c 61 75 73 65 20 69 | 73 20 61 62 6f 75 74 20 |clause i|s about |
|000057f0| 74 68 65 20 6f 6e 6c 79 | 20 70 72 6f 62 61 62 6c |the only| probabl|
|00005800| 65 20 6f 6e 65 20 69 6e | 20 74 68 65 20 73 65 71 |e one in| the seq|
|00005810| 75 65 6e 63 65 2e 0a 54 | 68 65 20 64 61 6e 67 65 |uence..T|he dange|
|00005820| 72 20 6f 66 20 74 68 69 | 73 20 69 73 20 6d 75 63 |r of thi|s is muc|
|00005830| 68 20 6c 65 73 73 20 74 | 68 61 6e 20 74 68 65 20 |h less t|han the |
|00005840| 64 61 6e 67 65 72 20 74 | 68 61 74 20 73 6f 6d 65 |danger t|hat some|
|00005850| 6f 6e 65 20 77 69 6c 6c | 0a 6d 65 65 74 20 74 68 |one will|.meet th|
|00005860| 65 20 72 69 67 68 74 20 | 28 77 72 6f 6e 67 3f 29 |e right |(wrong?)|
|00005870| 20 70 65 6f 70 6c 65 20 | 61 6e 64 20 67 65 74 20 | people |and get |
|00005880| 69 6e 74 6f 20 74 68 65 | 20 72 6f 6f 6d 20 61 6e |into the| room an|
|00005890| 79 77 61 79 2e 2e 2e 0a | 0a 20 20 20 20 20 20 20 |yway....|. |
|000058a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 46 4f | | FO|
|000058b0| 52 47 4f 54 54 45 4e 20 | 52 4f 4f 4d 53 0a 0a 20 |RGOTTEN |ROOMS.. |
|000058c0| 20 54 68 69 73 20 69 73 | 20 65 78 61 63 74 6c 79 | This is| exactly|
|000058d0| 20 74 68 65 20 6f 70 70 | 6f 73 69 74 65 20 6f 66 | the opp|osite of|
|000058e0| 20 70 72 69 76 61 74 65 | 20 72 6f 6f 6d 73 2e 20 | private| rooms. |
|000058f0| 57 68 65 6e 20 61 20 75 | 73 65 72 20 63 68 6f 6f |When a u|ser choo|
|00005900| 73 65 73 20 74 6f 0a 66 | 6f 72 67 65 74 20 61 20 |ses to.f|orget a |
|00005910| 72 6f 6f 6d 2c 20 77 65 | 20 70 75 74 20 74 68 65 |room, we| put the|
|00005920| 20 72 6f 6f 6d 27 73 20 | 67 65 6e 65 72 61 74 69 | room's |generati|
|00005930| 6f 6e 20 6e 75 6d 62 65 | 72 20 69 6e 20 75 73 65 |on numbe|r in use|
|00005940| 72 73 75 70 70 2e 66 6f | 72 67 65 74 20 66 6f 72 |rsupp.fo|rget for|
|00005950| 0a 74 68 61 74 20 72 6f | 6f 6d 2e 20 57 68 65 6e |.that ro|om. When|
|00005960| 20 64 6f 69 6e 67 20 61 | 20 3c 4b 3e 6e 6f 77 6e | doing a| <K>nown|
|00005970| 20 72 6f 6f 6d 73 20 6c | 69 73 74 20 6f 72 20 61 | rooms l|ist or a|
|00005980| 20 3c 47 3e 6f 74 6f 2c | 20 61 6e 79 20 6d 61 74 | <G>oto,| any mat|
|00005990| 63 68 75 70 73 20 63 61 | 75 73 65 0a 74 68 65 20 |chups ca|use.the |
|000059a0| 72 6f 6f 6d 20 74 6f 20 | 62 65 20 73 6b 69 70 70 |room to |be skipp|
|000059b0| 65 64 2e 20 56 65 72 79 | 20 73 69 6d 70 6c 65 2e |ed. Very| simple.|
|000059c0| 0a 0a 09 09 20 20 20 20 | 20 53 55 50 50 4f 52 54 |.... | SUPPORT|
|000059d0| 49 4e 47 20 50 52 49 56 | 41 54 45 20 4d 41 49 4c |ING PRIV|ATE MAIL|
|000059e0| 0a 0a 43 61 6e 20 6f 6e | 65 20 68 61 76 65 20 61 |..Can on|e have a|
|000059f0| 6e 20 65 6c 65 67 61 6e | 74 20 6b 6c 75 64 67 65 |n elegan|t kludge|
|00005a00| 3f 20 20 54 68 69 73 20 | 6d 75 73 74 20 63 6f 6d |? This |must com|
|00005a10| 65 20 70 72 65 74 74 79 | 20 63 6c 6f 73 65 2e 0a |e pretty| close..|
|00005a20| 0a 50 72 69 76 61 74 65 | 20 6d 61 69 6c 20 69 73 |.Private| mail is|
|00005a30| 20 73 65 6e 74 20 61 6e | 64 20 72 65 63 69 65 76 | sent an|d reciev|
|00005a40| 65 64 20 69 6e 20 74 68 | 65 20 4d 61 69 6c 3e 20 |ed in th|e Mail> |
|00005a50| 72 6f 6f 6d 2c 20 77 68 | 69 63 68 20 6f 74 68 65 |room, wh|ich othe|
|00005a60| 72 77 69 73 65 0a 62 65 | 68 61 76 65 73 20 70 72 |rwise.be|haves pr|
|00005a70| 65 74 74 79 20 6d 75 63 | 68 20 61 73 20 61 6e 79 |etty muc|h as any|
|00005a80| 20 6f 74 68 65 72 20 72 | 6f 6f 6d 2e 09 54 6f 20 | other r|oom..To |
|00005a90| 6d 61 6b 65 20 74 68 69 | 73 20 77 6f 72 6b 2c 20 |make thi|s work, |
|00005aa0| 77 65 20 73 74 6f 72 65 | 0a 74 68 65 20 61 63 74 |we store|.the act|
|00005ab0| 75 61 6c 20 6d 65 73 73 | 61 67 65 20 70 6f 69 6e |ual mess|age poin|
|00005ac0| 74 65 72 73 20 69 6e 20 | 6d 61 69 6c 6e 75 6d 5b |ters in |mailnum[|
|00005ad0| 5d 20 61 6e 64 20 6d 61 | 69 6c 70 6f 73 5b 5d 20 |] and ma|ilpos[] |
|00005ae0| 69 6e 20 74 68 65 20 63 | 61 6c 6c 65 72 27 73 0a |in the c|aller's.|
|00005af0| 6c 6f 67 20 72 65 63 6f | 72 64 2c 20 61 6e 64 20 |log reco|rd, and |
|00005b00| 74 68 65 6e 20 63 6f 70 | 79 20 74 68 65 6d 20 69 |then cop|y them i|
|00005b10| 6e 74 6f 20 74 68 65 20 | 4d 61 69 6c 3e 20 72 6f |nto the |Mail> ro|
|00005b20| 6f 6d 20 61 72 72 61 79 | 20 77 68 65 6e 65 76 65 |om array| wheneve|
|00005b30| 72 20 77 65 0a 65 6e 74 | 65 72 20 74 68 65 20 72 |r we.ent|er the r|
|00005b40| 6f 6f 6d 2e 20 20 54 68 | 69 73 20 72 65 71 75 69 |oom. Th|is requi|
|00005b50| 72 65 73 20 61 20 6c 69 | 74 74 6c 65 20 66 69 64 |res a li|ttle fid|
|00005b60| 64 6c 69 6e 67 20 74 6f | 20 67 65 74 20 74 68 69 |dling to| get thi|
|00005b70| 6e 67 73 20 6a 75 73 74 | 0a 72 69 67 68 74 2e 09 |ngs just|.right..|
|00005b80| 57 65 20 68 61 76 65 20 | 74 6f 20 75 70 64 61 74 |We have |to updat|
|00005b90| 65 20 71 75 69 63 6b 72 | 6f 6f 6d 5b 31 5d 2e 51 |e quickr|oom[1].Q|
|00005ba0| 52 68 69 67 68 65 73 74 | 20 61 74 20 6c 6f 67 69 |Rhighest| at logi|
|00005bb0| 6e 0a 74 6f 20 72 65 66 | 6c 65 63 74 20 74 68 65 |n.to ref|lect the|
|00005bc0| 20 70 72 65 73 65 6e 63 | 65 20 6f 72 20 61 62 73 | presenc|e or abs|
|00005bd0| 65 6e 63 65 20 6f 66 20 | 6e 65 77 20 6d 65 73 73 |ence of |new mess|
|00005be0| 61 67 65 73 2c 20 66 6f | 72 20 65 78 61 6d 70 6c |ages, fo|r exampl|
|00005bf0| 65 2e 20 20 41 6e 64 0a | 6d 61 6b 65 5f 6d 65 73 |e. And.|make_mes|
|00005c00| 73 61 67 65 28 29 20 68 | 61 73 20 74 6f 20 62 65 |sage() h|as to be|
|00005c10| 20 6b 6c 75 64 67 65 64 | 20 74 6f 20 61 73 6b 20 | kludged| to ask |
|00005c20| 66 6f 72 20 74 68 65 20 | 6e 61 6d 65 20 6f 66 20 |for the |name of |
|00005c30| 74 68 65 20 72 65 63 69 | 70 69 65 6e 74 0a 6f 66 |the reci|pient.of|
|00005c40| 20 74 68 65 20 6d 65 73 | 73 61 67 65 20 77 68 65 | the mes|sage whe|
|00005c50| 6e 65 76 65 72 20 61 20 | 6d 65 73 73 61 67 65 20 |never a |message |
|00005c60| 69 73 20 65 6e 74 65 72 | 65 64 20 69 6e 20 4d 61 |is enter|ed in Ma|
|00005c70| 69 6c 3e 2e 09 42 75 74 | 20 62 61 73 69 63 61 6c |il>..But| basical|
|00005c80| 6c 79 0a 69 74 20 77 6f | 72 6b 73 20 70 72 65 74 |ly.it wo|rks pret|
|00005c90| 74 79 20 77 65 6c 6c 2c | 20 6b 65 65 70 69 6e 67 |ty well,| keeping|
|00005ca0| 20 74 68 65 20 63 6f 64 | 65 20 61 6e 64 20 75 73 | the cod|e and us|
|00005cb0| 65 72 20 69 6e 74 65 72 | 66 61 63 65 20 73 69 6d |er inter|face sim|
|00005cc0| 70 6c 65 20 61 6e 64 0a | 72 65 67 75 6c 61 72 2e |ple and.|regular.|
|00005cd0| 0a 0a 0a 09 09 20 20 20 | 50 41 53 53 57 4f 52 44 |..... |PASSWORD|
|00005ce0| 53 20 41 4e 44 20 4e 41 | 4d 45 20 56 41 4c 49 44 |S AND NA|ME VALID|
|00005cf0| 41 54 49 4f 4e 0a 0a 54 | 68 65 20 75 73 65 72 73 |ATION..T|he users|
|00005d00| 75 70 70 20 66 69 6c 65 | 20 69 73 20 6b 65 70 74 |upp file| is kept|
|00005d10| 20 69 6e 20 61 6c 70 68 | 61 62 65 74 69 63 61 6c | in alph|abetical|
|00005d20| 20 6f 72 64 65 72 2c 20 | 61 6c 6c 6f 77 69 6e 67 | order, |allowing|
|00005d30| 20 75 73 20 74 6f 20 64 | 6f 20 61 20 62 69 6e 61 | us to d|o a bina|
|00005d40| 72 79 0a 73 65 61 72 63 | 68 20 77 68 65 6e 65 76 |ry.searc|h whenev|
|00005d50| 65 72 20 77 65 20 6e 65 | 65 64 20 74 6f 20 6c 6f |er we ne|ed to lo|
|00005d60| 6f 6b 20 75 70 20 61 20 | 75 73 65 72 2e 20 57 68 |ok up a |user. Wh|
|00005d70| 65 6e 20 61 20 6e 65 77 | 20 75 73 65 72 20 6c 6f |en a new| user lo|
|00005d80| 67 73 20 69 6e 2c 20 68 | 65 2f 73 68 65 0a 68 61 |gs in, h|e/she.ha|
|00005d90| 73 20 74 6f 20 62 65 20 | 69 6e 73 65 72 74 65 64 |s to be |inserted|
|00005da0| 20 69 6e 74 6f 20 74 68 | 65 20 70 72 6f 70 65 72 | into th|e proper|
|00005db0| 20 61 6c 70 68 61 62 65 | 74 69 63 61 6c 20 70 6c | alphabe|tical pl|
|00005dc0| 61 63 65 2e 20 4a 75 73 | 74 20 69 6e 20 63 61 73 |ace. Jus|t in cas|
|00005dd0| 65 20 73 6f 6d 65 74 68 | 69 6e 67 0a 67 6f 65 73 |e someth|ing.goes|
|00005de0| 20 77 72 6f 6e 67 2c 20 | 61 20 22 73 6f 72 74 20 | wrong, |a "sort |
|00005df0| 75 73 65 72 6c 6f 67 22 | 20 63 6f 6d 6d 61 6e 64 |userlog"| command|
|00005e00| 20 69 73 20 69 6e 63 6c | 75 64 65 64 20 69 6e 20 | is incl|uded in |
|00005e10| 73 79 73 6f 70 75 74 69 | 6c 2c 20 61 6c 74 68 6f |sysoputi|l, altho|
|00005e20| 75 67 68 20 69 74 0a 6e | 65 76 65 72 20 72 65 61 |ugh it.n|ever rea|
|00005e30| 6c 6c 79 20 67 65 74 73 | 20 75 73 65 64 2e 0a 20 |lly gets| used.. |
|00005e40| 20 53 6f 20 77 68 65 6e | 20 61 20 75 73 65 72 20 | So when| a user |
|00005e50| 74 79 70 65 73 20 68 69 | 73 2f 68 65 72 20 6c 6f |types hi|s/her lo|
|00005e60| 67 69 6e 20 6e 61 6d 65 | 2c 20 6f 72 20 77 68 65 |gin name|, or whe|
|00005e70| 6e 20 77 65 27 72 65 20 | 6c 6f 6f 6b 69 6e 67 20 |n we're |looking |
|00005e80| 75 70 20 61 20 6d 61 69 | 6c 0a 72 65 63 69 70 69 |up a mai|l.recipi|
|00005e90| 65 6e 74 2c 20 6f 72 20 | 61 6e 79 74 68 69 6e 67 |ent, or |anything|
|00005ea0| 20 65 6c 73 65 20 77 68 | 69 63 68 20 72 65 71 75 | else wh|ich requ|
|00005eb0| 69 72 65 73 20 66 69 6e | 64 69 6e 67 20 61 20 75 |ires fin|ding a u|
|00005ec0| 73 65 72 73 75 70 70 20 | 65 6e 74 72 79 20 66 6f |sersupp |entry fo|
|00005ed0| 72 20 61 0a 67 69 76 65 | 6e 20 6c 6f 67 69 6e 20 |r a.give|n login |
|00005ee0| 6e 61 6d 65 2c 20 61 6c | 6c 20 77 65 20 68 61 76 |name, al|l we hav|
|00005ef0| 65 20 74 6f 20 64 6f 20 | 69 73 20 64 6f 20 61 20 |e to do |is do a |
|00005f00| 62 69 6e 61 72 79 20 73 | 65 61 72 63 68 2e 20 54 |binary s|earch. T|
|00005f10| 68 65 20 72 6f 75 74 69 | 6e 65 0a 66 69 6e 64 75 |he routi|ne.findu|
|00005f20| 73 65 72 28 29 20 64 6f | 65 73 20 74 68 69 73 20 |ser() do|es this |
|00005f30| 71 75 69 63 6b 6c 79 20 | 61 6e 64 20 65 66 66 69 |quickly |and effi|
|00005f40| 63 69 65 6e 74 6c 79 2e | 0a 0a 20 20 54 68 69 73 |ciently.|.. This|
|00005f50| 20 6d 61 6b 65 73 20 69 | 74 20 64 69 66 66 69 63 | makes i|t diffic|
|00005f60| 75 6c 74 20 74 6f 20 66 | 6f 72 67 65 20 6d 65 73 |ult to f|orge mes|
|00005f70| 73 61 67 65 73 20 66 72 | 6f 6d 20 61 6e 20 65 78 |sages fr|om an ex|
|00005f80| 69 73 74 69 6e 67 20 75 | 73 65 72 2e 20 20 28 46 |isting u|ser. (F|
|00005f90| 69 6e 65 0a 70 6f 69 6e | 74 3a 20 6e 6f 6e 70 72 |ine.poin|t: nonpr|
|00005fa0| 69 6e 74 69 6e 67 20 63 | 68 61 72 61 63 74 65 72 |inting c|haracter|
|00005fb0| 73 20 61 72 65 20 63 6f | 6e 76 65 72 74 65 64 20 |s are co|nverted |
|00005fc0| 74 6f 20 70 72 69 6e 74 | 69 6e 67 20 63 68 61 72 |to print|ing char|
|00005fd0| 61 63 74 65 72 73 2c 20 | 61 6e 64 0a 6c 65 61 64 |acters, |and.lead|
|00005fe0| 69 6e 67 2c 20 74 72 61 | 69 6c 69 6e 67 2c 20 61 |ing, tra|iling, a|
|00005ff0| 6e 64 20 64 6f 75 62 6c | 65 20 62 6c 61 6e 6b 73 |nd doubl|e blanks|
|00006000| 20 61 72 65 20 64 65 6c | 65 74 65 64 2e 29 0a 53 | are del|eted.).S|
|00006010| 48 41 52 5f 45 4f 46 0a | 66 69 0a 65 63 68 6f 20 |HAR_EOF.|fi.echo |
|00006020| 73 68 61 72 3a 20 22 65 | 78 74 72 61 63 74 69 6e |shar: "e|xtractin|
|00006030| 67 20 27 69 6e 73 74 61 | 6c 6c 2e 64 6f 63 27 22 |g 'insta|ll.doc'"|
|00006040| 20 27 28 35 30 36 31 20 | 63 68 61 72 61 63 74 65 | '(5061 |characte|
|00006050| 72 73 29 27 0a 69 66 20 | 74 65 73 74 20 2d 66 20 |rs)'.if |test -f |
|00006060| 27 69 6e 73 74 61 6c 6c | 2e 64 6f 63 27 0a 74 68 |'install|.doc'.th|
|00006070| 65 6e 0a 09 65 63 68 6f | 20 73 68 61 72 3a 20 22 |en..echo| shar: "|
|00006080| 77 69 6c 6c 20 6e 6f 74 | 20 6f 76 65 72 2d 77 72 |will not| over-wr|
|00006090| 69 74 65 20 65 78 69 73 | 74 69 6e 67 20 66 69 6c |ite exis|ting fil|
|000060a0| 65 20 27 69 6e 73 74 61 | 6c 6c 2e 64 6f 63 27 22 |e 'insta|ll.doc'"|
|000060b0| 0a 65 6c 73 65 0a 63 61 | 74 20 3c 3c 20 5c 53 48 |.else.ca|t << \SH|
|000060c0| 41 52 5f 45 4f 46 20 3e | 20 27 69 6e 73 74 61 6c |AR_EOF >| 'instal|
|000060d0| 6c 2e 64 6f 63 27 0a 20 | 20 20 20 20 20 20 20 20 |l.doc'. | |
|000060e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 43 69 74 | | Cit|
|000060f0| 61 64 65 6c 2f 55 58 20 | 49 6e 73 74 61 6c 6c 61 |adel/UX |Installa|
|00006100| 74 69 6f 6e 20 50 72 6f | 63 65 64 75 72 65 0a 20 |tion Pro|cedure. |
|00006110| 20 20 20 20 57 72 69 74 | 74 65 6e 20 62 79 20 41 | Writ|ten by A|
|00006120| 72 74 20 43 61 6e 63 72 | 6f 20 5b 49 6e 73 70 65 |rt Cancr|o [Inspe|
|00006130| 63 74 6f 72 20 47 61 64 | 67 65 74 20 40 20 55 4e |ctor Gad|get @ UN|
|00006140| 43 45 4e 53 4f 52 45 44 | 21 20 28 39 31 34 29 20 |CENSORED|! (914) |
|00006150| 37 36 31 2d 36 38 37 37 | 5d 0a 20 20 20 20 20 20 |761-6877|]. |
|00006160| 20 20 20 20 20 20 20 20 | 20 20 20 53 65 65 20 63 | | See c|
|00006170| 6f 70 79 72 69 67 68 74 | 2e 64 6f 63 20 66 6f 72 |opyright|.doc for|
|00006180| 20 63 6f 70 79 72 69 67 | 68 74 20 69 6e 66 6f 72 | copyrig|ht infor|
|00006190| 6d 61 74 69 6f 6e 0a 20 | 0a 20 0a 20 4f 56 45 52 |mation. |. . OVER|
|000061a0| 56 49 45 57 0a 20 20 0a | 20 20 20 43 69 74 61 64 |VIEW. .| Citad|
|000061b0| 65 6c 2f 55 58 20 69 73 | 20 61 20 62 75 6c 6c 65 |el/UX is| a bulle|
|000061c0| 74 69 6e 20 62 6f 61 72 | 64 20 73 79 73 74 65 6d |tin boar|d system|
|000061d0| 20 62 61 73 65 64 20 6f | 6e 2c 20 62 75 74 20 6e | based o|n, but n|
|000061e0| 6f 74 20 70 6f 72 74 65 | 64 20 66 72 6f 6d 2c 20 |ot porte|d from, |
|000061f0| 74 68 65 0a 43 69 74 61 | 64 65 6c 2d 43 50 2f 4d |the.Cita|del-CP/M|
|00006200| 20 61 6e 64 20 43 69 74 | 61 64 65 6c 2d 38 36 20 | and Cit|adel-86 |
|00006210| 73 79 73 74 65 6d 73 2e | 20 49 74 20 77 61 73 20 |systems.| It was |
|00006220| 64 65 76 65 6c 6f 70 65 | 64 20 6f 6e 20 61 6e 20 |develope|d on an |
|00006230| 41 6c 74 6f 73 20 35 38 | 36 2f 34 30 0a 72 75 6e |Altos 58|6/40.run|
|00006240| 6e 69 6e 67 20 41 6c 74 | 6f 73 20 58 65 6e 69 78 |ning Alt|os Xenix|
|00006250| 20 33 2e 30 62 2c 20 61 | 6e 64 20 68 61 73 20 62 | 3.0b, a|nd has b|
|00006260| 65 65 6e 20 69 6e 73 74 | 61 6c 6c 65 64 20 61 6e |een inst|alled an|
|00006270| 64 20 74 65 73 74 65 64 | 20 6f 6e 20 76 61 72 69 |d tested| on vari|
|00006280| 6f 75 73 20 55 4e 49 58 | 0a 61 6e 64 20 58 65 6e |ous UNIX|.and Xen|
|00006290| 69 78 20 73 79 73 74 65 | 6d 73 2c 20 69 6e 63 6c |ix syste|ms, incl|
|000062a0| 75 64 69 6e 67 20 76 61 | 72 69 6f 75 73 20 53 79 |uding va|rious Sy|
|000062b0| 73 74 65 6d 20 49 49 49 | 20 61 6e 64 20 53 79 73 |stem III| and Sys|
|000062c0| 74 65 6d 20 56 20 70 6f | 72 74 73 2e 20 54 68 65 |tem V po|rts. The|
|000062d0| 0a 63 75 72 72 65 6e 74 | 20 64 69 73 74 72 69 62 |.current| distrib|
|000062e0| 75 74 69 6f 6e 20 69 6e | 63 6c 75 64 65 73 3a 0a |ution in|cludes:.|
|000062f0| 20 20 20 20 2d 20 54 68 | 65 20 43 69 74 61 64 65 | - Th|e Citade|
|00006300| 6c 2f 55 58 20 6d 61 69 | 6e 20 70 72 6f 67 72 61 |l/UX mai|n progra|
|00006310| 6d 0a 20 20 20 20 2d 20 | 41 20 6e 65 74 77 6f 72 |m. - |A networ|
|00006320| 6b 65 72 20 74 68 61 74 | 20 75 74 69 6c 69 7a 65 |ker that| utilize|
|00006330| 73 20 55 55 43 50 20 61 | 6e 64 20 63 61 6e 20 73 |s UUCP a|nd can s|
|00006340| 68 61 72 65 20 6d 65 73 | 73 61 67 65 73 20 77 69 |hare mes|sages wi|
|00006350| 74 68 20 6f 74 68 65 72 | 0a 20 20 20 20 20 20 43 |th other|. C|
|00006360| 69 74 61 64 65 6c 2f 55 | 58 20 73 79 73 74 65 6d |itadel/U|X system|
|00006370| 73 2c 20 61 73 20 77 65 | 6c 6c 20 61 73 20 55 73 |s, as we|ll as Us|
|00006380| 65 4e 65 74 20 73 69 74 | 65 73 20 28 61 20 53 74 |eNet sit|es (a St|
|00006390| 6f 6e 65 48 65 6e 67 65 | 20 6e 65 74 77 6f 72 6b |oneHenge| network|
|000063a0| 65 72 0a 20 20 20 20 20 | 20 69 73 20 61 76 61 69 |er. | is avai|
|000063b0| 6c 61 62 6c 65 20 62 79 | 20 73 70 65 63 69 61 6c |lable by| special|
|000063c0| 20 72 65 71 75 65 73 74 | 29 0a 20 20 20 20 2d 20 | request|). - |
|000063d0| 41 20 70 72 6f 67 72 61 | 6d 20 74 6f 20 61 6c 6c |A progra|m to all|
|000063e0| 6f 77 20 6c 6f 67 67 65 | 64 20 69 6e 20 75 73 65 |ow logge|d in use|
|000063f0| 72 73 20 74 6f 20 63 68 | 61 74 20 77 69 74 68 20 |rs to ch|at with |
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.