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: Tape Archive
(archive/tar).
You can browse this item here: dialinot.tar
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Tape Archive (archive/tar)
| magic
| Supported |
100%
| file
| tar archive
| default
| |
99%
| file
| tar archive (V7), file dialinout/, mode 755 , uid 243 , gid 12 , size 0 , seconds 4402110770
| default
| |
98%
| file
| data
| default
| |
100%
| lsar
| Tar
| default
| |
100%
| gt2
| TAR Archiv gefunden (Auflistung ist deaktiviert)
| default
| |
100%
| disktype
| Pre-POSIX tar archive
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 64 69 61 6c 69 6e 6f 75 | 74 2f 00 00 00 00 00 00 |dialinou|t/......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 20 20 20 37 | 35 35 20 00 20 20 20 32 |.... 7|55 . 2|
|00000070| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000080| 20 20 20 20 20 20 30 20 | 20 34 34 30 32 31 31 30 | 0 | 4402110|
|00000090| 37 37 30 20 20 20 35 37 | 37 37 00 20 00 00 00 00 |770 57|77. ....|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 64 69 61 6c 69 6e 6f 75 | 74 2f 52 45 41 44 4d 45 |dialinou|t/README|
|00000210| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 32 |.... 6|44 . 2|
|00000270| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000280| 20 20 20 33 32 34 34 20 | 20 34 34 30 32 31 31 30 | 3244 | 4402110|
|00000290| 37 34 32 20 20 20 36 37 | 34 36 00 20 00 00 00 00 |742 67|46. ....|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 09 09 09 34 2e 33 42 53 | 44 20 44 49 41 4c 4f 55 |...4.3BS|D DIALOU|
|00000410| 54 20 4d 4f 44 53 0a 09 | 09 09 2d 2d 2d 2d 2d 2d |T MODS..|..------|
|00000420| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 0a 0a 09 |--------|-----...|
|00000430| 4e 2e 42 2e 3a 20 20 54 | 68 65 73 65 20 63 68 61 |N.B.: T|hese cha|
|00000440| 6e 67 65 73 20 73 68 6f | 75 6c 64 20 77 6f 72 6b |nges sho|uld work|
|00000450| 20 66 6f 72 20 34 2e 32 | 42 53 44 20 61 73 20 77 | for 4.2|BSD as w|
|00000460| 65 6c 6c 3b 20 62 75 74 | 0a 09 74 68 65 20 60 6f |ell; but|..the `o|
|00000470| 72 69 67 69 6e 61 6c 27 | 20 63 6f 64 65 20 73 68 |riginal'| code sh|
|00000480| 6f 77 6e 20 69 6e 20 74 | 68 65 20 64 69 66 66 20 |own in t|he diff |
|00000490| 6c 69 73 74 69 6e 67 73 | 20 77 69 6c 6c 20 6e 6f |listings| will no|
|000004a0| 74 0a 09 71 75 69 74 65 | 20 6d 61 74 63 68 2e 20 |t..quite| match. |
|000004b0| 20 59 6f 75 20 77 69 6c | 6c 20 68 61 76 65 20 74 | You wil|l have t|
|000004c0| 6f 20 69 6e 73 74 61 6c | 6c 20 74 68 65 20 63 68 |o instal|l the ch|
|000004d0| 61 6e 67 65 73 20 62 79 | 0a 09 68 61 6e 64 2d 2d |anges by|..hand--|
|000004e0| 2d 60 70 61 74 63 68 27 | 20 77 69 6c 6c 20 6e 6f |-`patch'| will no|
|000004f0| 74 20 77 6f 72 6b 2e 0a | 0a 49 6e 73 74 61 6c 6c |t work..|.Install|
|00000500| 61 74 69 6f 6e 20 69 6e | 73 74 72 75 63 74 69 6f |ation in|structio|
|00000510| 6e 73 20 66 6f 72 20 74 | 68 65 20 64 69 61 6c 20 |ns for t|he dial |
|00000520| 64 65 76 69 63 65 73 3a | 0a 0a 31 2e 20 20 53 61 |devices:|..1. Sa|
|00000530| 76 65 20 63 6f 70 69 65 | 73 20 6f 66 20 74 68 65 |ve copie|s of the|
|00000540| 20 66 69 6c 65 73 20 79 | 6f 75 20 77 69 6c 6c 20 | files y|ou will |
|00000550| 65 64 69 74 2e 20 20 54 | 68 65 73 65 20 69 6e 63 |edit. T|hese inc|
|00000560| 6c 75 64 65 20 76 61 78 | 2f 63 6f 6e 66 2e 63 0a |lude vax|/conf.c.|
|00000570| 20 20 20 20 61 6e 64 20 | 61 74 20 6c 65 61 73 74 | and |at least|
|00000580| 20 6f 6e 65 20 6f 66 20 | 74 68 65 20 64 65 76 69 | one of |the devi|
|00000590| 63 65 20 64 72 69 76 65 | 72 73 20 69 6e 20 76 61 |ce drive|rs in va|
|000005a0| 78 75 62 61 20 28 76 61 | 78 75 62 61 2f 64 68 2e |xuba (va|xuba/dh.|
|000005b0| 63 2c 0a 20 20 20 20 76 | 61 78 75 62 61 2f 64 7a |c,. v|axuba/dz|
|000005c0| 2e 63 2c 20 65 74 63 2e | 29 0a 0a 32 2e 20 20 41 |.c, etc.|)..2. A|
|000005d0| 70 70 6c 79 20 74 68 65 | 20 63 68 61 6e 67 65 73 |pply the| changes|
|000005e0| 20 73 68 6f 77 6e 20 74 | 6f 20 74 68 65 20 64 65 | shown t|o the de|
|000005f0| 76 69 63 65 20 64 72 69 | 76 65 72 28 73 29 2e 20 |vice dri|ver(s). |
|00000600| 20 46 6f 72 20 6f 74 68 | 65 72 0a 20 20 20 20 64 | For oth|er. d|
|00000610| 65 76 69 63 65 73 20 79 | 6f 75 20 77 69 6c 6c 20 |evices y|ou will |
|00000620| 6e 65 65 64 20 74 6f 20 | 65 78 74 72 61 70 6f 6c |need to |extrapol|
|00000630| 61 74 65 20 74 68 65 20 | 63 68 61 6e 67 65 73 2e |ate the |changes.|
|00000640| 20 20 4c 6f 6f 6b 20 61 | 74 20 64 68 2e 63 0a 20 | Look a|t dh.c. |
|00000650| 20 20 20 61 6e 64 20 64 | 7a 2e 63 20 74 6f 20 73 | and d|z.c to s|
|00000660| 65 65 20 77 68 61 74 20 | 6e 65 65 64 73 20 74 6f |ee what |needs to|
|00000670| 20 62 65 20 64 6f 6e 65 | 2c 20 61 6e 64 20 72 65 | be done|, and re|
|00000680| 61 64 20 74 68 65 20 60 | 64 69 61 6c 0a 20 20 20 |ad the `|dial. |
|00000690| 20 64 65 76 69 63 65 27 | 20 64 6f 63 75 6d 65 6e | device'| documen|
|000006a0| 74 2e 0a 20 20 20 20 0a | 20 20 20 20 4e 2e 42 2e |t.. .| N.B.|
|000006b0| 3a 20 20 46 6f 72 20 64 | 6d 66 33 32 73 20 74 68 |: For d|mf32s th|
|000006c0| 65 20 63 68 61 6e 67 65 | 73 20 63 61 6e 20 62 65 |e change|s can be|
|000006d0| 20 72 61 74 68 65 72 20 | 74 72 69 63 6b 79 2e 20 | rather |tricky. |
|000006e0| 20 49 20 68 61 76 65 20 | 61 0a 20 20 20 20 64 6d | I have |a. dm|
|000006f0| 66 33 32 20 64 72 69 76 | 65 72 20 74 68 61 74 20 |f32 driv|er that |
|00000700| 64 6f 65 73 20 64 69 61 | 6c 20 6f 75 74 2c 20 62 |does dia|l out, b|
|00000710| 75 74 20 69 74 20 69 73 | 20 6e 6f 74 20 74 68 65 |ut it is| not the|
|00000720| 20 73 74 61 6e 64 61 72 | 64 0a 20 20 20 20 34 2e | standar|d. 4.|
|00000730| 33 42 53 44 20 76 65 72 | 73 69 6f 6e 2c 20 73 6f |3BSD ver|sion, so|
|00000740| 20 49 20 63 61 6e 6e 6f | 74 20 6d 61 6b 65 20 64 | I canno|t make d|
|00000750| 69 66 66 20 6c 69 73 74 | 69 6e 67 73 2e 0a 0a 33 |iff list|ings...3|
|00000760| 2e 20 20 41 64 64 20 74 | 68 65 20 64 65 76 69 63 |. Add t|he devic|
|00000770| 65 28 73 29 20 74 6f 20 | 74 68 65 20 60 63 64 65 |e(s) to |the `cde|
|00000780| 76 73 77 27 20 74 61 62 | 6c 65 20 69 6e 20 76 61 |vsw' tab|le in va|
|00000790| 78 2f 63 6f 6e 66 2e 63 | 2e 20 20 54 68 65 0a 20 |x/conf.c|. The. |
|000007a0| 20 20 20 64 69 66 66 20 | 6c 69 73 74 69 6e 67 20 | diff |listing |
|000007b0| 69 6e 63 6c 75 64 65 64 | 20 68 65 72 65 20 69 73 |included| here is|
|000007c0| 20 68 65 61 76 69 6c 79 | 20 65 64 69 74 65 64 20 | heavily| edited |
|000007d0| 61 6e 64 20 73 68 6f 75 | 6c 64 20 62 65 20 75 73 |and shou|ld be us|
|000007e0| 65 64 0a 20 20 20 20 6f | 6e 6c 79 20 61 73 20 61 |ed. o|nly as a|
|000007f0| 6e 20 65 78 61 6d 70 6c | 65 2e 20 20 59 6f 75 20 |n exampl|e. You |
|00000800| 77 69 6c 6c 20 6e 65 65 | 64 20 74 6f 20 61 73 73 |will nee|d to ass|
|00000810| 69 67 6e 20 6d 61 6a 6f | 72 20 64 65 76 69 63 65 |ign majo|r device|
|00000820| 0a 20 20 20 20 6e 75 6d | 62 65 72 73 20 79 6f 75 |. num|bers you|
|00000830| 72 73 65 6c 66 2e 20 20 | 57 65 20 75 73 65 64 20 |rself. |We used |
|00000840| 34 31 20 61 6e 64 20 34 | 32 20 66 6f 72 20 74 68 |41 and 4|2 for th|
|00000850| 65 20 64 7a 20 61 6e 64 | 20 64 68 0a 20 20 20 20 |e dz and| dh. |
|00000860| 72 65 73 70 65 63 74 69 | 76 65 6c 79 3b 20 62 75 |respecti|vely; bu|
|00000870| 74 20 74 68 65 20 66 69 | 72 73 74 20 6e 75 6d 62 |t the fi|rst numb|
|00000880| 65 72 20 66 72 65 65 20 | 69 6e 20 74 68 65 20 64 |er free |in the d|
|00000890| 69 73 74 72 69 62 75 74 | 65 64 0a 20 20 20 20 6b |istribut|ed. k|
|000008a0| 65 72 6e 65 6c 20 69 73 | 20 6d 75 63 68 20 6c 6f |ernel is| much lo|
|000008b0| 77 65 72 2d 2d 2d 6e 65 | 61 72 20 32 35 2c 20 61 |wer---ne|ar 25, a|
|000008c0| 73 20 49 20 72 65 63 61 | 6c 6c 2e 0a 0a 34 2e 20 |s I reca|ll...4. |
|000008d0| 20 43 6f 6d 70 69 6c 65 | 20 61 20 6e 65 77 20 6b | Compile| a new k|
|000008e0| 65 72 6e 65 6c 2c 20 61 | 6e 64 20 72 65 62 6f 6f |ernel, a|nd reboo|
|000008f0| 74 2e 0a 0a 35 2e 20 20 | 4d 61 6b 65 20 60 2f 64 |t...5. |Make `/d|
|00000900| 65 76 27 20 65 6e 74 72 | 69 65 73 20 66 6f 72 20 |ev' entr|ies for |
|00000910| 74 68 65 20 64 69 61 6c | 20 64 65 76 69 63 65 73 |the dial| devices|
|00000920| 2e 20 20 28 53 65 65 20 | 74 68 65 20 60 64 69 61 |. (See |the `dia|
|00000930| 6c 20 64 65 76 69 63 65 | 27 0a 20 20 20 20 64 6f |l device|'. do|
|00000940| 63 75 6d 65 6e 74 2e 29 | 0a 0a 36 2e 20 20 54 65 |cument.)|..6. Te|
|00000950| 73 74 2e 20 20 49 6e 63 | 6c 75 64 65 64 20 69 73 |st. Inc|luded is|
|00000960| 20 61 20 43 20 70 72 6f | 67 72 61 6d 20 74 68 61 | a C pro|gram tha|
|00000970| 74 20 63 61 6e 20 74 61 | 6c 6b 20 74 6f 20 64 69 |t can ta|lk to di|
|00000980| 61 6c 20 6c 69 6e 65 73 | 2e 0a 20 20 20 20 54 68 |al lines|.. Th|
|00000990| 65 20 70 72 6f 67 72 61 | 6d 20 6d 61 79 20 6e 65 |e progra|m may ne|
|000009a0| 65 64 20 73 6c 69 67 68 | 74 20 63 68 61 6e 67 65 |ed sligh|t change|
|000009b0| 73 20 66 6f 72 20 34 2e | 32 42 53 44 2c 20 74 68 |s for 4.|2BSD, th|
|000009c0| 6f 75 67 68 20 49 20 74 | 68 69 6e 6b 0a 20 20 20 |ough I t|hink. |
|000009d0| 20 49 20 68 61 76 65 20 | 72 65 6d 6f 76 65 64 20 | I have |removed |
|000009e0| 6d 6f 73 74 20 73 79 73 | 74 65 6d 20 64 65 70 65 |most sys|tem depe|
|000009f0| 6e 64 65 6e 63 69 65 73 | 20 61 6c 72 65 61 64 79 |ndencies| already|
|00000a00| 2e 20 20 28 59 6f 75 20 | 77 69 6c 6c 2c 0a 20 20 |. (You |will,. |
|00000a10| 20 20 68 6f 77 65 76 65 | 72 2c 20 6e 65 65 64 20 | howeve|r, need |
|00000a20| 60 67 65 74 6f 70 74 27 | 2e 29 0a 0a 0a 09 09 4d |`getopt'|.).....M|
|00000a30| 61 79 20 74 68 65 20 73 | 74 61 72 73 20 73 68 69 |ay the s|tars shi|
|00000a40| 6e 65 20 75 70 6f 6e 20 | 79 6f 75 72 20 6b 65 72 |ne upon |your ker|
|00000a50| 6e 65 6c 20 66 6f 72 20 | 65 76 65 72 2c 0a 09 09 |nel for |ever,...|
|00000a60| 09 09 09 09 43 68 72 69 | 73 20 54 6f 72 65 6b 0a |....Chri|s Torek.|
|00000a70| 09 09 09 09 09 09 55 6e | 69 76 65 72 73 69 74 79 |......Un|iversity|
|00000a80| 20 6f 66 20 4d 61 72 79 | 6c 61 6e 64 0a 09 09 09 | of Mary|land....|
|00000a90| 09 09 09 32 32 20 44 65 | 63 65 6d 62 65 72 20 31 |...22 De|cember 1|
|00000aa0| 39 38 33 0a 00 00 00 00 | 00 00 00 00 00 00 00 00 |983.....|........|
|00000ab0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ac0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ad0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000af0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b00| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c00| 64 69 61 6c 69 6e 6f 75 | 74 2f 63 2e 31 00 00 00 |dialinou|t/c.1...|
|00000c10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000c60| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 32 |.... 6|44 . 2|
|00000c70| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00000c80| 20 20 20 33 32 36 33 20 | 20 34 34 30 32 31 31 30 | 3263 | 4402110|
|00000c90| 37 34 35 20 20 20 36 33 | 37 36 00 20 00 00 00 00 |745 63|76. ....|
|00000ca0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000cb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000cc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000cd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d00| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000d90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000e00| 2e 54 48 20 43 20 31 0a | 2e 55 43 20 34 0a 2e 53 |.TH C 1.|.UC 4..S|
|00000e10| 48 20 4e 41 4d 45 0a 63 | 20 5c 2d 20 63 6f 6d 6d |H NAME.c| \- comm|
|00000e20| 75 6e 69 63 61 74 69 6f | 6e 73 20 70 72 6f 67 72 |unicatio|ns progr|
|00000e30| 61 6d 0a 2e 53 48 20 53 | 59 4e 4f 50 53 49 53 0a |am..SH S|YNOPSIS.|
|00000e40| 2e 42 20 22 63 20 2d 6c | 22 0a 2e 49 20 6c 69 6e |.B "c -l|"..I lin|
|00000e50| 6b 0a 5b 0a 2e 42 20 2d | 73 0a 2e 49 20 73 70 65 |k.[..B -|s..I spe|
|00000e60| 65 64 0a 5d 20 5b 0a 2e | 42 20 2d 70 0a 2e 49 20 |ed.] [..|B -p..I |
|00000e70| 70 61 72 69 74 79 0a 5d | 20 5b 0a 2e 42 20 2d 65 |parity.]| [..B -e|
|00000e80| 0a 2e 49 20 65 73 63 61 | 70 65 0a 5d 0a 2e 53 48 |..I esca|pe.]..SH|
|00000e90| 20 44 45 53 43 52 49 50 | 54 49 4f 4e 0a 2e 49 20 | DESCRIP|TION..I |
|00000ea0| 43 0a 69 73 20 61 20 73 | 6d 61 6c 6c 20 63 6f 6d |C.is a s|mall com|
|00000eb0| 6d 75 6e 69 63 61 74 69 | 6f 6e 73 20 70 72 6f 67 |municati|ons prog|
|00000ec0| 72 61 6d 20 66 6f 72 20 | 74 74 79 20 6c 69 6e 65 |ram for |tty line|
|00000ed0| 73 2e 20 20 49 74 20 68 | 61 73 20 61 6c 6d 6f 73 |s. It h|as almos|
|00000ee0| 74 0a 6e 6f 20 66 65 61 | 74 75 72 65 73 2c 20 75 |t.no fea|tures, u|
|00000ef0| 6e 6c 69 6b 65 0a 2e 49 | 52 20 74 69 70 20 2c 0a |nlike..I|R tip ,.|
|00000f00| 73 6f 20 69 74 20 73 74 | 61 72 74 73 20 61 6e 64 |so it st|arts and|
|00000f10| 20 72 75 6e 73 20 71 75 | 69 63 6b 6c 79 20 61 6e | runs qu|ickly an|
|00000f20| 64 20 69 73 20 76 65 72 | 79 20 73 6d 61 6c 6c 2e |d is ver|y small.|
|00000f30| 20 20 49 74 20 69 73 20 | 61 6c 73 6f 20 75 73 65 | It is |also use|
|00000f40| 66 75 6c 0a 66 6f 72 20 | 74 61 6c 6b 69 6e 67 20 |ful.for |talking |
|00000f50| 74 6f 20 62 61 6c 6b 79 | 20 6d 6f 64 65 6d 73 20 |to balky| modems |
|00000f60| 77 68 65 6e 20 61 6c 6c | 20 6f 74 68 65 72 20 6d |when all| other m|
|00000f70| 65 74 68 6f 64 73 20 66 | 61 69 6c 2e 0a 2e 50 50 |ethods f|ail...PP|
|00000f80| 0a 54 68 65 0a 2e 49 20 | 6c 69 6e 6b 0a 6f 70 74 |.The..I |link.opt|
|00000f90| 69 6f 6e 20 69 73 20 72 | 65 71 75 69 72 65 64 2c |ion is r|equired,|
|00000fa0| 20 61 6e 64 20 73 68 6f | 75 6c 64 20 62 65 20 74 | and sho|uld be t|
|00000fb0| 68 65 20 6e 61 6d 65 20 | 6f 66 20 74 68 65 20 74 |he name |of the t|
|00000fc0| 74 79 20 6c 69 6e 65 2c | 20 65 2e 67 2e 2c 0a 60 |ty line,| e.g.,.`|
|00000fd0| 2f 64 65 76 2f 64 69 61 | 6c 30 35 27 20 6f 72 20 |/dev/dia|l05' or |
|00000fe0| 60 2f 64 65 76 2f 74 74 | 79 61 27 2e 0a 2e 50 50 |`/dev/tt|ya'...PP|
|00000ff0| 0a 54 68 65 0a 2e 49 20 | 73 70 65 65 64 0a 6f 70 |.The..I |speed.op|
|00001000| 74 69 6f 6e 20 73 65 6c | 65 63 74 73 20 74 68 65 |tion sel|ects the|
|00001010| 20 62 61 75 64 20 72 61 | 74 65 2e 20 20 49 74 20 | baud ra|te. It |
|00001020| 73 68 6f 75 6c 64 20 62 | 65 20 61 20 6e 75 6d 65 |should b|e a nume|
|00001030| 72 69 63 20 76 61 6c 75 | 65 20 66 72 6f 6d 0a 74 |ric valu|e from.t|
|00001040| 68 65 20 73 65 74 20 7b | 33 30 30 2c 20 36 30 30 |he set {|300, 600|
|00001050| 2c 20 31 32 30 30 2c 20 | 32 34 30 30 2c 20 34 38 |, 1200, |2400, 48|
|00001060| 30 30 2c 20 39 36 30 30 | 7d 2e 20 20 54 68 65 20 |00, 9600|}. The |
|00001070| 64 65 66 61 75 6c 74 20 | 69 73 20 31 32 30 30 0a |default |is 1200.|
|00001080| 62 61 75 64 2e 0a 2e 50 | 50 0a 54 68 65 0a 2e 49 |baud...P|P.The..I|
|00001090| 20 70 61 72 69 74 79 0a | 73 77 69 74 63 68 20 73 | parity.|switch s|
|000010a0| 65 6c 65 63 74 73 20 70 | 61 72 69 74 79 2c 20 77 |elects p|arity, w|
|000010b0| 68 69 63 68 20 6d 61 79 | 20 62 65 20 61 6e 79 20 |hich may| be any |
|000010c0| 6f 66 20 74 68 65 20 66 | 6f 6c 6c 6f 77 69 6e 67 |of the f|ollowing|
|000010d0| 3a 0a 2e 54 50 0a 2e 42 | 20 65 0a 45 76 65 6e 20 |:..TP..B| e.Even |
|000010e0| 70 61 72 69 74 79 0a 2e | 54 50 0a 2e 42 20 6f 0a |parity..|TP..B o.|
|000010f0| 4f 64 64 20 70 61 72 69 | 74 79 0a 2e 54 50 0a 2e |Odd pari|ty..TP..|
|00001100| 42 20 31 0a 4f 6e 65 20 | 70 61 72 69 74 79 0a 2e |B 1.One |parity..|
|00001110| 54 50 0a 2e 42 20 30 0a | 5a 65 72 6f 20 70 61 72 |TP..B 0.|Zero par|
|00001120| 69 74 79 0a 2e 54 50 0a | 2e 42 20 6e 0a 4e 6f 20 |ity..TP.|.B n.No |
|00001130| 70 61 72 69 74 79 20 28 | 74 68 65 20 64 61 74 61 |parity (|the data|
|00001140| 20 70 61 74 68 20 69 73 | 20 65 69 67 68 74 20 62 | path is| eight b|
|00001150| 69 74 73 20 77 69 64 65 | 5c 28 65 6d 74 68 69 73 |its wide|\(emthis|
|00001160| 20 69 73 20 74 68 65 20 | 64 65 66 61 75 6c 74 29 | is the |default)|
|00001170| 2e 0a 2e 50 50 0a 54 68 | 65 0a 2e 49 20 65 73 63 |...PP.Th|e..I esc|
|00001180| 0a 70 61 72 61 6d 65 74 | 65 72 20 73 65 74 73 20 |.paramet|er sets |
|00001190| 74 68 65 20 65 73 63 61 | 70 65 20 63 68 61 72 61 |the esca|pe chara|
|000011a0| 63 74 65 72 20 28 64 65 | 66 61 75 6c 74 20 45 53 |cter (de|fault ES|
|000011b0| 43 29 2e 20 20 54 68 69 | 73 0a 63 68 61 72 61 63 |C). Thi|s.charac|
|000011c0| 74 65 72 20 6d 75 73 74 | 20 62 65 20 64 6f 75 62 |ter must| be doub|
|000011d0| 6c 65 64 20 74 6f 20 62 | 65 20 73 65 6e 74 20 74 |led to b|e sent t|
|000011e0| 68 72 6f 75 67 68 20 74 | 68 65 20 6c 69 6e 6b 2e |hrough t|he link.|
|000011f0| 20 20 41 6c 73 6f 0a 61 | 76 61 69 6c 61 62 6c 65 | Also.a|vailable|
|00001200| 20 61 72 65 20 74 68 65 | 20 66 6f 6c 6c 6f 77 69 | are the| followi|
|00001210| 6e 67 20 60 65 73 63 61 | 70 65 20 63 6f 6d 6d 61 |ng `esca|pe comma|
|00001220| 6e 64 73 27 3a 0a 2e 54 | 50 0a 2e 42 20 62 0a 47 |nds':..T|P..B b.G|
|00001230| 65 6e 65 72 61 74 65 20 | 61 20 62 72 65 61 6b 2e |enerate |a break.|
|00001240| 0a 2e 54 50 0a 2e 42 20 | 68 2c 20 3f 0a 48 65 6c |..TP..B |h, ?.Hel|
|00001250| 70 20 28 6c 69 73 74 20 | 74 68 65 73 65 20 6f 70 |p (list |these op|
|00001260| 74 69 6f 6e 73 29 2e 0a | 2e 54 50 0a 2e 42 20 6f |tions)..|.TP..B o|
|00001270| 0a 53 65 74 20 6f 70 74 | 69 6f 6e 73 2e 20 20 54 |.Set opt|ions. T|
|00001280| 68 65 20 70 72 6f 67 72 | 61 6d 20 77 69 6c 6c 20 |he progr|am will |
|00001290| 70 72 6f 6d 70 74 20 66 | 6f 72 20 61 6e 20 6f 70 |prompt f|or an op|
|000012a0| 74 69 6f 6e 20 6c 69 6e | 65 0a 6f 6e 20 77 68 69 |tion lin|e.on whi|
|000012b0| 63 68 20 61 6e 79 20 6f | 66 20 74 68 65 20 66 6c |ch any o|f the fl|
|000012c0| 61 67 73 20 65 78 63 65 | 70 74 0a 2e 42 20 2d 6c |ags exce|pt..B -l|
|000012d0| 0a 6d 61 79 20 62 65 20 | 63 68 61 6e 67 65 64 2e |.may be |changed.|
|000012e0| 20 20 4f 70 74 69 6f 6e | 73 20 61 72 65 20 67 69 | Option|s are gi|
|000012f0| 76 65 6e 20 69 6e 20 74 | 68 65 20 73 61 6d 65 20 |ven in t|he same |
|00001300| 77 61 79 0a 61 73 20 77 | 68 65 6e 20 74 68 65 20 |way.as w|hen the |
|00001310| 70 72 6f 67 72 61 6d 20 | 69 73 20 69 6e 69 74 69 |program |is initi|
|00001320| 61 6c 6c 79 20 72 75 6e | 2e 0a 2e 54 50 0a 2e 42 |ally run|...TP..B|
|00001330| 20 71 0a 51 75 69 74 20 | 28 65 78 69 74 20 74 68 | q.Quit |(exit th|
|00001340| 65 20 70 72 6f 67 72 61 | 6d 29 2e 20 20 54 68 65 |e progra|m). The|
|00001350| 20 70 72 6f 67 72 61 6d | 20 77 69 6c 6c 20 71 75 | program| will qu|
|00001360| 69 74 20 62 79 20 69 74 | 73 65 6c 66 0a 69 66 20 |it by it|self.if |
|00001370| 63 61 72 72 69 65 72 20 | 69 73 20 6c 6f 73 74 2c |carrier |is lost,|
|00001380| 20 74 68 6f 75 67 68 20 | 74 68 69 73 20 64 65 70 | though |this dep|
|00001390| 65 6e 64 73 20 6f 6e 20 | 74 68 65 20 6b 65 72 6e |ends on |the kern|
|000013a0| 65 6c 20 63 6f 6e 66 69 | 67 75 72 61 74 69 6f 6e |el confi|guration|
|000013b0| 2e 0a 2e 54 50 0a 2e 42 | 20 7a 0a 53 75 73 70 65 |...TP..B| z.Suspe|
|000013c0| 6e 64 2e 0a 2e 50 50 0a | 4f 74 68 65 72 20 63 68 |nd...PP.|Other ch|
|000013d0| 61 72 61 63 74 65 72 73 | 20 63 61 75 73 65 20 74 |aracters| cause t|
|000013e0| 68 65 20 62 65 6c 6c 20 | 74 6f 20 72 69 6e 67 2e |he bell |to ring.|
|000013f0| 0a 2e 53 48 20 53 45 45 | 20 41 4c 53 4f 0a 74 69 |..SH SEE| ALSO.ti|
|00001400| 70 28 31 29 2c 20 63 75 | 28 31 29 0a 2e 53 48 20 |p(1), cu|(1)..SH |
|00001410| 41 55 54 48 4f 52 0a 43 | 68 72 69 73 20 54 6f 72 |AUTHOR.C|hris Tor|
|00001420| 65 6b 20 28 73 65 69 73 | 6d 6f 21 75 6d 63 70 2d |ek (seis|mo!umcp-|
|00001430| 63 73 21 63 68 72 69 73 | 2c 20 63 68 72 69 73 40 |cs!chris|, chris@|
|00001440| 6d 69 6d 73 79 2e 75 6d | 64 2e 65 64 75 29 0a 2e |mimsy.um|d.edu)..|
|00001450| 53 48 20 42 55 47 53 0a | 50 61 72 69 74 79 20 6f |SH BUGS.|Parity o|
|00001460| 6e 6c 79 20 61 66 66 65 | 63 74 73 20 6f 75 74 67 |nly affe|cts outg|
|00001470| 6f 69 6e 67 20 63 68 61 | 72 61 63 74 65 72 73 2e |oing cha|racters.|
|00001480| 20 20 49 6e 63 6f 6d 69 | 6e 67 20 64 61 74 61 20 | Incomi|ng data |
|00001490| 69 73 0a 61 6c 77 61 79 | 73 20 74 75 72 6e 65 64 |is.alway|s turned|
|000014a0| 20 69 6e 74 6f 20 7a 65 | 72 6f 20 70 61 72 69 74 | into ze|ro parit|
|000014b0| 79 2e 0a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |y.......|........|
|000014c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001500| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001520| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001530| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001540| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001550| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001560| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001580| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001590| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001600| 64 69 61 6c 69 6e 6f 75 | 74 2f 63 2e 63 00 00 00 |dialinou|t/c.c...|
|00001610| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001620| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001630| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001640| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001650| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001660| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 32 |.... 6|44 . 2|
|00001670| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00001680| 20 20 32 32 37 36 30 20 | 20 34 34 30 32 31 31 30 | 22760 | 4402110|
|00001690| 37 35 32 20 20 20 36 35 | 30 31 00 20 00 00 00 00 |752 65|01. ....|
|000016a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000016b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000016c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000016d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000016e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000016f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001700| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001710| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001720| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001730| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001740| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001750| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001770| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001780| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001790| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000017f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001800| 23 69 66 6e 64 65 66 20 | 6c 69 6e 74 0a 73 74 61 |#ifndef |lint.sta|
|00001810| 74 69 63 20 63 68 61 72 | 20 72 63 73 69 64 5b 5d |tic char| rcsid[]|
|00001820| 20 3d 20 22 24 48 65 61 | 64 65 72 24 22 3b 0a 23 | = "$Hea|der$";.#|
|00001830| 65 6e 64 69 66 0a 0a 23 | 69 6e 63 6c 75 64 65 20 |endif..#|include |
|00001840| 3c 73 74 64 69 6f 2e 68 | 3e 0a 23 69 6e 63 6c 75 |<stdio.h|>.#inclu|
|00001850| 64 65 20 3c 73 69 67 6e | 61 6c 2e 68 3e 0a 23 69 |de <sign|al.h>.#i|
|00001860| 6e 63 6c 75 64 65 20 3c | 73 79 73 2f 74 79 70 65 |nclude <|sys/type|
|00001870| 73 2e 68 3e 0a 23 69 6e | 63 6c 75 64 65 20 3c 73 |s.h>.#in|clude <s|
|00001880| 79 73 2f 66 69 6c 65 2e | 68 3e 0a 23 69 6e 63 6c |ys/file.|h>.#incl|
|00001890| 75 64 65 20 3c 73 67 74 | 74 79 2e 68 3e 0a 23 69 |ude <sgt|ty.h>.#i|
|000018a0| 66 64 65 66 20 6c 69 6e | 74 0a 23 69 6e 63 6c 75 |fdef lin|t.#inclu|
|000018b0| 64 65 20 3c 73 79 73 2f | 74 69 6d 65 2e 68 3e 0a |de <sys/|time.h>.|
|000018c0| 23 65 6e 64 69 66 0a 0a | 2f 2a 0a 20 2a 20 55 73 |#endif..|/*. * Us|
|000018d0| 61 67 65 3a 20 63 20 2d | 6c 20 6c 69 6e 6b 20 5b |age: c -|l link [|
|000018e0| 20 2d 73 20 73 70 65 65 | 64 20 5d 20 5b 20 2d 70 | -s spee|d ] [ -p|
|000018f0| 20 65 7c 6f 7c 30 7c 31 | 7c 6e 20 5d 20 5b 20 2d | e|o|0|1||n ] [ -|
|00001900| 65 20 65 73 63 61 70 65 | 63 68 61 72 20 5d 0a 20 |e escape|char ]. |
|00001910| 2a 0a 20 2a 20 43 6f 6d | 6d 20 70 72 6f 67 72 61 |*. * Com|m progra|
|00001920| 6d 2e 0a 20 2a 0a 20 2a | 20 43 6f 6d 70 69 6c 61 |m.. *. *| Compila|
|00001930| 74 69 6f 6e 3a 0a 20 25 | 20 63 63 20 2d 4f 20 2d |tion:. %| cc -O -|
|00001940| 52 20 2d 6f 20 63 20 63 | 2e 63 0a 20 2a 0a 20 2a |R -o c c|.c. *. *|
|00001950| 20 4e 2e 42 2e 3a 20 20 | 53 68 6f 75 6c 64 20 62 | N.B.: |Should b|
|00001960| 65 20 73 65 74 75 69 64 | 20 72 6f 6f 74 2c 20 73 |e setuid| root, s|
|00001970| 6f 20 74 68 61 74 20 69 | 74 20 63 61 6e 20 72 75 |o that i|t can ru|
|00001980| 6e 20 61 74 20 68 69 67 | 68 20 70 72 69 6f 72 69 |n at hig|h priori|
|00001990| 74 79 0a 20 2a 20 28 68 | 65 6c 70 73 20 61 76 6f |ty. * (h|elps avo|
|000019a0| 69 64 20 6c 6f 73 69 6e | 67 20 69 6e 70 75 74 20 |id losin|g input |
|000019b0| 61 74 20 68 69 67 68 20 | 62 61 75 64 20 72 61 74 |at high |baud rat|
|000019c0| 65 73 29 2e 0a 20 2a 2f | 0a 0a 23 69 66 6e 64 65 |es).. */|..#ifnde|
|000019d0| 66 20 6c 69 6e 74 0a 65 | 78 74 65 72 6e 09 69 6e |f lint.e|xtern.in|
|000019e0| 74 09 65 72 72 6e 6f 3b | 0a 65 78 74 65 72 6e 09 |t.errno;|.extern.|
|000019f0| 63 68 61 72 09 2a 6f 70 | 74 61 72 67 3b 0a 65 78 |char.*op|targ;.ex|
|00001a00| 74 65 72 6e 09 69 6e 74 | 09 6f 70 74 69 6e 64 3b |tern.int|.optind;|
|00001a10| 0a 23 65 6c 73 65 0a 69 | 6e 74 09 65 72 72 6e 6f |.#else.i|nt.errno|
|00001a20| 3b 0a 63 68 61 72 09 2a | 6f 70 74 61 72 67 3b 0a |;.char.*|optarg;.|
|00001a30| 69 6e 74 09 6f 70 74 69 | 6e 64 3b 0a 2f 2a 20 56 |int.opti|nd;./* V|
|00001a40| 41 52 41 52 47 53 33 20 | 41 52 47 53 55 53 45 44 |ARARGS3 |ARGSUSED|
|00001a50| 20 2a 2f 0a 65 72 72 6f | 72 28 71 75 69 74 2c 20 | */.erro|r(quit, |
|00001a60| 65 2c 20 66 6d 74 29 20 | 69 6e 74 20 71 75 69 74 |e, fmt) |int quit|
|00001a70| 2c 20 65 3b 20 63 68 61 | 72 20 2a 66 6d 74 3b 20 |, e; cha|r *fmt; |
|00001a80| 7b 20 3b 20 7d 0a 23 65 | 6e 64 69 66 0a 0a 63 68 |{ ; }.#e|ndif..ch|
|00001a90| 61 72 09 2a 5f 61 72 67 | 76 30 3b 0a 63 68 61 72 |ar.*_arg|v0;.char|
|00001aa0| 09 2a 6c 69 6e 6b 6e 61 | 6d 65 3b 0a 69 6e 74 09 |.*linkna|me;.int.|
|00001ab0| 6c 69 6e 6b 66 64 3b 0a | 69 6e 74 09 73 70 65 65 |linkfd;.|int.spee|
|00001ac0| 64 3b 0a 69 6e 74 09 65 | 73 63 63 68 61 72 3b 0a |d;.int.e|scchar;.|
|00001ad0| 69 6e 74 09 70 61 72 62 | 69 73 3b 0a 69 6e 74 09 |int.parb|is;.int.|
|00001ae0| 70 61 72 62 69 63 3b 0a | 63 68 61 72 09 2a 70 61 |parbic;.|char.*pa|
|00001af0| 72 74 61 62 3b 0a 63 68 | 61 72 09 74 74 79 62 75 |rtab;.ch|ar.ttybu|
|00001b00| 66 5b 42 55 46 53 49 5a | 5d 3b 0a 69 6e 74 09 74 |f[BUFSIZ|];.int.t|
|00001b10| 74 79 63 6f 75 6e 74 3b | 0a 63 68 61 72 09 74 74 |tycount;|.char.tt|
|00001b20| 79 6f 62 75 66 5b 42 55 | 46 53 49 5a 5d 3b 0a 69 |yobuf[BU|FSIZ];.i|
|00001b30| 6e 74 09 74 74 79 6f 63 | 6f 75 6e 74 3b 0a 63 68 |nt.ttyoc|ount;.ch|
|00001b40| 61 72 09 6c 69 6e 65 62 | 75 66 5b 42 55 46 53 49 |ar.lineb|uf[BUFSI|
|00001b50| 5a 5d 3b 0a 69 6e 74 09 | 6c 69 6e 65 63 6f 75 6e |Z];.int.|linecoun|
|00001b60| 74 3b 0a 63 68 61 72 09 | 6c 69 6e 65 6f 62 75 66 |t;.char.|lineobuf|
|00001b70| 5b 42 55 46 53 49 5a 5d | 3b 0a 69 6e 74 09 6c 69 |[BUFSIZ]|;.int.li|
|00001b80| 6e 65 6f 63 6f 75 6e 74 | 3b 0a 0a 2f 2a 0a 20 2a |neocount|;../*. *|
|00001b90| 20 34 2e 33 20 61 6e 64 | 20 56 38 20 73 74 79 6c | 4.3 and| V8 styl|
|00001ba0| 65 20 66 69 6c 65 20 64 | 65 73 63 72 69 70 74 6f |e file d|escripto|
|00001bb0| 72 20 6d 61 73 6b 20 6d | 61 63 72 6f 73 0a 20 2a |r mask m|acros. *|
|00001bc0| 20 53 68 6f 75 6c 64 20 | 62 65 20 69 6e 20 3c 73 | Should |be in <s|
|00001bd0| 79 73 2f 74 79 70 65 73 | 2e 68 3e 20 62 75 74 20 |ys/types|.h> but |
|00001be0| 61 72 65 6e 27 74 20 69 | 6e 20 34 2e 32 2e 0a 20 |aren't i|n 4.2.. |
|00001bf0| 2a 2f 0a 23 69 66 6e 64 | 65 66 20 46 44 5f 53 45 |*/.#ifnd|ef FD_SE|
|00001c00| 54 0a 74 79 70 65 64 65 | 66 20 73 74 72 75 63 74 |T.typede|f struct|
|00001c10| 20 66 64 5f 73 65 74 20 | 7b 0a 09 69 6e 74 09 66 | fd_set |{..int.f|
|00001c20| 64 73 5f 62 69 74 73 3b | 0a 7d 20 66 64 5f 73 65 |ds_bits;|.} fd_se|
|00001c30| 74 3b 0a 23 64 65 66 69 | 6e 65 09 46 44 5f 53 45 |t;.#defi|ne.FD_SE|
|00001c40| 54 28 6e 2c 20 70 29 09 | 28 28 70 29 2d 3e 66 64 |T(n, p).|((p)->fd|
|00001c50| 73 5f 62 69 74 73 5b 30 | 5d 20 7c 3d 20 28 31 20 |s_bits[0|] |= (1 |
|00001c60| 3c 3c 20 28 6e 29 29 29 | 0a 23 64 65 66 69 6e 65 |<< (n)))|.#define|
|00001c70| 09 46 44 5f 43 4c 52 28 | 6e 2c 20 70 29 09 28 28 |.FD_CLR(|n, p).((|
|00001c80| 70 29 2d 3e 66 64 73 5f | 62 69 74 73 5b 30 5d 20 |p)->fds_|bits[0] |
|00001c90| 26 3d 20 7e 28 31 20 3c | 3c 20 28 6e 29 29 29 0a |&= ~(1 <|< (n))).|
|00001ca0| 23 64 65 66 69 6e 65 09 | 46 44 5f 49 53 53 45 54 |#define.|FD_ISSET|
|00001cb0| 28 6e 2c 20 70 29 09 28 | 28 70 29 2d 3e 66 64 73 |(n, p).(|(p)->fds|
|00001cc0| 5f 62 69 74 73 5b 30 5d | 20 26 20 28 31 20 3c 3c |_bits[0]| & (1 <<|
|00001cd0| 20 28 6e 29 29 29 0a 23 | 64 65 66 69 6e 65 09 46 | (n))).#|define.F|
|00001ce0| 44 5f 5a 45 52 4f 28 70 | 29 09 28 28 70 29 2d 3e |D_ZERO(p|).((p)->|
|00001cf0| 66 64 73 5f 62 69 74 73 | 20 3d 20 30 29 0a 23 65 |fds_bits| = 0).#e|
|00001d00| 6e 64 69 66 0a 0a 63 68 | 61 72 09 65 76 65 6e 70 |ndif..ch|ar.evenp|
|00001d10| 61 72 5b 31 32 38 5d 20 | 3d 20 7b 0a 09 30 78 30 |ar[128] |= {..0x0|
|00001d20| 30 2c 20 30 78 38 31 2c | 20 30 78 38 32 2c 20 30 |0, 0x81,| 0x82, 0|
|00001d30| 78 30 33 2c 20 30 78 38 | 34 2c 20 30 78 30 35 2c |x03, 0x8|4, 0x05,|
|00001d40| 20 30 78 30 36 2c 20 30 | 78 38 37 2c 0a 09 30 78 | 0x06, 0|x87,..0x|
|00001d50| 38 38 2c 20 30 78 30 39 | 2c 20 30 78 30 61 2c 20 |88, 0x09|, 0x0a, |
|00001d60| 30 78 38 62 2c 20 30 78 | 30 63 2c 20 30 78 38 64 |0x8b, 0x|0c, 0x8d|
|00001d70| 2c 20 30 78 38 65 2c 20 | 30 78 30 66 2c 0a 09 30 |, 0x8e, |0x0f,..0|
|00001d80| 78 39 30 2c 20 30 78 31 | 31 2c 20 30 78 31 32 2c |x90, 0x1|1, 0x12,|
|00001d90| 20 30 78 39 33 2c 20 30 | 78 31 34 2c 20 30 78 39 | 0x93, 0|x14, 0x9|
|00001da0| 35 2c 20 30 78 39 36 2c | 20 30 78 31 37 2c 0a 09 |5, 0x96,| 0x17,..|
|00001db0| 30 78 31 38 2c 20 30 78 | 39 39 2c 20 30 78 39 61 |0x18, 0x|99, 0x9a|
|00001dc0| 2c 20 30 78 31 62 2c 20 | 30 78 39 63 2c 20 30 78 |, 0x1b, |0x9c, 0x|
|00001dd0| 31 64 2c 20 30 78 31 65 | 2c 20 30 78 39 66 2c 0a |1d, 0x1e|, 0x9f,.|
|00001de0| 09 30 78 61 30 2c 20 30 | 78 32 31 2c 20 30 78 32 |.0xa0, 0|x21, 0x2|
|00001df0| 32 2c 20 30 78 61 33 2c | 20 30 78 32 34 2c 20 30 |2, 0xa3,| 0x24, 0|
|00001e00| 78 61 35 2c 20 30 78 61 | 36 2c 20 30 78 32 37 2c |xa5, 0xa|6, 0x27,|
|00001e10| 0a 09 30 78 32 38 2c 20 | 30 78 61 39 2c 20 30 78 |..0x28, |0xa9, 0x|
|00001e20| 61 61 2c 20 30 78 32 62 | 2c 20 30 78 61 63 2c 20 |aa, 0x2b|, 0xac, |
|00001e30| 30 78 32 64 2c 20 30 78 | 32 65 2c 20 30 78 61 66 |0x2d, 0x|2e, 0xaf|
|00001e40| 2c 0a 09 30 78 33 30 2c | 20 30 78 62 31 2c 20 30 |,..0x30,| 0xb1, 0|
|00001e50| 78 62 32 2c 20 30 78 33 | 33 2c 20 30 78 62 34 2c |xb2, 0x3|3, 0xb4,|
|00001e60| 20 30 78 33 35 2c 20 30 | 78 33 36 2c 20 30 78 62 | 0x35, 0|x36, 0xb|
|00001e70| 37 2c 0a 09 30 78 62 38 | 2c 20 30 78 33 39 2c 20 |7,..0xb8|, 0x39, |
|00001e80| 30 78 33 61 2c 20 30 78 | 62 62 2c 20 30 78 33 63 |0x3a, 0x|bb, 0x3c|
|00001e90| 2c 20 30 78 62 64 2c 20 | 30 78 62 65 2c 20 30 78 |, 0xbd, |0xbe, 0x|
|00001ea0| 33 66 2c 0a 09 30 78 63 | 30 2c 20 30 78 34 31 2c |3f,..0xc|0, 0x41,|
|00001eb0| 20 30 78 34 32 2c 20 30 | 78 63 33 2c 20 30 78 34 | 0x42, 0|xc3, 0x4|
|00001ec0| 34 2c 20 30 78 63 35 2c | 20 30 78 63 36 2c 20 30 |4, 0xc5,| 0xc6, 0|
|00001ed0| 78 34 37 2c 0a 09 30 78 | 34 38 2c 20 30 78 63 39 |x47,..0x|48, 0xc9|
|00001ee0| 2c 20 30 78 63 61 2c 20 | 30 78 34 62 2c 20 30 78 |, 0xca, |0x4b, 0x|
|00001ef0| 63 63 2c 20 30 78 34 64 | 2c 20 30 78 34 65 2c 20 |cc, 0x4d|, 0x4e, |
|00001f00| 30 78 63 66 2c 0a 09 30 | 78 35 30 2c 20 30 78 64 |0xcf,..0|x50, 0xd|
|00001f10| 31 2c 20 30 78 64 32 2c | 20 30 78 35 33 2c 20 30 |1, 0xd2,| 0x53, 0|
|00001f20| 78 64 34 2c 20 30 78 35 | 35 2c 20 30 78 35 36 2c |xd4, 0x5|5, 0x56,|
|00001f30| 20 30 78 64 37 2c 0a 09 | 30 78 64 38 2c 20 30 78 | 0xd7,..|0xd8, 0x|
|00001f40| 35 39 2c 20 30 78 35 61 | 2c 20 30 78 64 62 2c 20 |59, 0x5a|, 0xdb, |
|00001f50| 30 78 35 63 2c 20 30 78 | 64 64 2c 20 30 78 64 65 |0x5c, 0x|dd, 0xde|
|00001f60| 2c 20 30 78 35 66 2c 0a | 09 30 78 36 30 2c 20 30 |, 0x5f,.|.0x60, 0|
|00001f70| 78 65 31 2c 20 30 78 65 | 32 2c 20 30 78 36 33 2c |xe1, 0xe|2, 0x63,|
|00001f80| 20 30 78 65 34 2c 20 30 | 78 36 35 2c 20 30 78 36 | 0xe4, 0|x65, 0x6|
|00001f90| 36 2c 20 30 78 65 37 2c | 0a 09 30 78 65 38 2c 20 |6, 0xe7,|..0xe8, |
|00001fa0| 30 78 36 39 2c 20 30 78 | 36 61 2c 20 30 78 65 62 |0x69, 0x|6a, 0xeb|
|00001fb0| 2c 20 30 78 36 63 2c 20 | 30 78 65 64 2c 20 30 78 |, 0x6c, |0xed, 0x|
|00001fc0| 65 65 2c 20 30 78 36 66 | 2c 0a 09 30 78 66 30 2c |ee, 0x6f|,..0xf0,|
|00001fd0| 20 30 78 37 31 2c 20 30 | 78 37 32 2c 20 30 78 66 | 0x71, 0|x72, 0xf|
|00001fe0| 33 2c 20 30 78 37 34 2c | 20 30 78 66 35 2c 20 30 |3, 0x74,| 0xf5, 0|
|00001ff0| 78 66 36 2c 20 30 78 37 | 37 2c 0a 09 30 78 37 38 |xf6, 0x7|7,..0x78|
|00002000| 2c 20 30 78 66 39 2c 20 | 30 78 66 61 2c 20 30 78 |, 0xf9, |0xfa, 0x|
|00002010| 37 62 2c 20 30 78 66 63 | 2c 20 30 78 37 64 2c 20 |7b, 0xfc|, 0x7d, |
|00002020| 30 78 37 65 2c 20 30 78 | 66 66 2c 0a 7d 3b 0a 63 |0x7e, 0x|ff,.};.c|
|00002030| 68 61 72 09 6f 64 64 70 | 61 72 5b 31 32 38 5d 20 |har.oddp|ar[128] |
|00002040| 3d 20 7b 0a 09 30 78 38 | 30 2c 20 30 78 30 31 2c |= {..0x8|0, 0x01,|
|00002050| 20 30 78 30 32 2c 20 30 | 78 38 33 2c 20 30 78 30 | 0x02, 0|x83, 0x0|
|00002060| 34 2c 20 30 78 38 35 2c | 20 30 78 38 36 2c 20 30 |4, 0x85,| 0x86, 0|
|00002070| 78 30 37 2c 0a 09 30 78 | 30 38 2c 20 30 78 38 39 |x07,..0x|08, 0x89|
|00002080| 2c 20 30 78 38 61 2c 20 | 30 78 30 62 2c 20 30 78 |, 0x8a, |0x0b, 0x|
|00002090| 38 63 2c 20 30 78 30 64 | 2c 20 30 78 30 65 2c 20 |8c, 0x0d|, 0x0e, |
|000020a0| 30 78 38 66 2c 0a 09 30 | 78 31 30 2c 20 30 78 39 |0x8f,..0|x10, 0x9|
|000020b0| 31 2c 20 30 78 39 32 2c | 20 30 78 31 33 2c 20 30 |1, 0x92,| 0x13, 0|
|000020c0| 78 39 34 2c 20 30 78 31 | 35 2c 20 30 78 31 36 2c |x94, 0x1|5, 0x16,|
|000020d0| 20 30 78 39 37 2c 0a 09 | 30 78 39 38 2c 20 30 78 | 0x97,..|0x98, 0x|
|000020e0| 31 39 2c 20 30 78 31 61 | 2c 20 30 78 39 62 2c 20 |19, 0x1a|, 0x9b, |
|000020f0| 30 78 31 63 2c 20 30 78 | 39 64 2c 20 30 78 39 65 |0x1c, 0x|9d, 0x9e|
|00002100| 2c 20 30 78 31 66 2c 0a | 09 30 78 32 30 2c 20 30 |, 0x1f,.|.0x20, 0|
|00002110| 78 61 31 2c 20 30 78 61 | 32 2c 20 30 78 32 33 2c |xa1, 0xa|2, 0x23,|
|00002120| 20 30 78 61 34 2c 20 30 | 78 32 35 2c 20 30 78 32 | 0xa4, 0|x25, 0x2|
|00002130| 36 2c 20 30 78 61 37 2c | 0a 09 30 78 61 38 2c 20 |6, 0xa7,|..0xa8, |
|00002140| 30 78 32 39 2c 20 30 78 | 32 61 2c 20 30 78 61 62 |0x29, 0x|2a, 0xab|
|00002150| 2c 20 30 78 32 63 2c 20 | 30 78 61 64 2c 20 30 78 |, 0x2c, |0xad, 0x|
|00002160| 61 65 2c 20 30 78 32 66 | 2c 0a 09 30 78 62 30 2c |ae, 0x2f|,..0xb0,|
|00002170| 20 30 78 33 31 2c 20 30 | 78 33 32 2c 20 30 78 62 | 0x31, 0|x32, 0xb|
|00002180| 33 2c 20 30 78 33 34 2c | 20 30 78 62 35 2c 20 30 |3, 0x34,| 0xb5, 0|
|00002190| 78 62 36 2c 20 30 78 33 | 37 2c 0a 09 30 78 33 38 |xb6, 0x3|7,..0x38|
|000021a0| 2c 20 30 78 62 39 2c 20 | 30 78 62 61 2c 20 30 78 |, 0xb9, |0xba, 0x|
|000021b0| 33 62 2c 20 30 78 62 63 | 2c 20 30 78 33 64 2c 20 |3b, 0xbc|, 0x3d, |
|000021c0| 30 78 33 65 2c 20 30 78 | 62 66 2c 0a 09 30 78 34 |0x3e, 0x|bf,..0x4|
|000021d0| 30 2c 20 30 78 63 31 2c | 20 30 78 63 32 2c 20 30 |0, 0xc1,| 0xc2, 0|
|000021e0| 78 34 33 2c 20 30 78 63 | 34 2c 20 30 78 34 35 2c |x43, 0xc|4, 0x45,|
|000021f0| 20 30 78 34 36 2c 20 30 | 78 63 37 2c 0a 09 30 78 | 0x46, 0|xc7,..0x|
|00002200| 63 38 2c 20 30 78 34 39 | 2c 20 30 78 34 61 2c 20 |c8, 0x49|, 0x4a, |
|00002210| 30 78 63 62 2c 20 30 78 | 34 63 2c 20 30 78 63 64 |0xcb, 0x|4c, 0xcd|
|00002220| 2c 20 30 78 63 65 2c 20 | 30 78 34 66 2c 0a 09 30 |, 0xce, |0x4f,..0|
|00002230| 78 64 30 2c 20 30 78 35 | 31 2c 20 30 78 35 32 2c |xd0, 0x5|1, 0x52,|
|00002240| 20 30 78 64 33 2c 20 30 | 78 35 34 2c 20 30 78 64 | 0xd3, 0|x54, 0xd|
|00002250| 35 2c 20 30 78 64 36 2c | 20 30 78 35 37 2c 0a 09 |5, 0xd6,| 0x57,..|
|00002260| 30 78 35 38 2c 20 30 78 | 64 39 2c 20 30 78 64 61 |0x58, 0x|d9, 0xda|
|00002270| 2c 20 30 78 35 62 2c 20 | 30 78 64 63 2c 20 30 78 |, 0x5b, |0xdc, 0x|
|00002280| 35 64 2c 20 30 78 35 65 | 2c 20 30 78 64 66 2c 0a |5d, 0x5e|, 0xdf,.|
|00002290| 09 30 78 65 30 2c 20 30 | 78 36 31 2c 20 30 78 36 |.0xe0, 0|x61, 0x6|
|000022a0| 32 2c 20 30 78 65 33 2c | 20 30 78 36 34 2c 20 30 |2, 0xe3,| 0x64, 0|
|000022b0| 78 65 35 2c 20 30 78 65 | 36 2c 20 30 78 36 37 2c |xe5, 0xe|6, 0x67,|
|000022c0| 0a 09 30 78 36 38 2c 20 | 30 78 65 39 2c 20 30 78 |..0x68, |0xe9, 0x|
|000022d0| 65 61 2c 20 30 78 36 62 | 2c 20 30 78 65 63 2c 20 |ea, 0x6b|, 0xec, |
|000022e0| 30 78 36 64 2c 20 30 78 | 36 65 2c 20 30 78 65 66 |0x6d, 0x|6e, 0xef|
|000022f0| 2c 0a 09 30 78 37 30 2c | 20 30 78 66 31 2c 20 30 |,..0x70,| 0xf1, 0|
|00002300| 78 66 32 2c 20 30 78 37 | 33 2c 20 30 78 66 34 2c |xf2, 0x7|3, 0xf4,|
|00002310| 20 30 78 37 35 2c 20 30 | 78 37 36 2c 20 30 78 66 | 0x75, 0|x76, 0xf|
|00002320| 37 2c 0a 09 30 78 66 38 | 2c 20 30 78 37 39 2c 20 |7,..0xf8|, 0x79, |
|00002330| 30 78 37 61 2c 20 30 78 | 66 62 2c 20 30 78 37 63 |0x7a, 0x|fb, 0x7c|
|00002340| 2c 20 30 78 66 64 2c 20 | 30 78 66 65 2c 20 30 78 |, 0xfd, |0xfe, 0x|
|00002350| 37 66 2c 0a 7d 3b 0a 0a | 73 74 72 75 63 74 09 73 |7f,.};..|struct.s|
|00002360| 67 74 74 79 62 20 73 67 | 62 75 66 3b 0a 0a 6d 61 |gttyb sg|buf;..ma|
|00002370| 69 6e 28 61 72 67 63 2c | 20 61 72 67 76 29 0a 09 |in(argc,| argv)..|
|00002380| 69 6e 74 20 61 72 67 63 | 3b 0a 09 63 68 61 72 20 |int argc|;..char |
|00002390| 2a 2a 61 72 67 76 3b 0a | 7b 0a 09 72 65 67 69 73 |**argv;.|{..regis|
|000023a0| 74 65 72 20 69 6e 74 20 | 66 64 2c 20 63 2c 20 74 |ter int |fd, c, t|
|000023b0| 78 2c 20 6c 78 3b 0a 09 | 73 74 61 74 69 63 20 69 |x, lx;..|static i|
|000023c0| 6e 74 20 73 74 61 74 65 | 3b 0a 0a 09 5f 61 72 67 |nt state|;..._arg|
|000023d0| 76 30 20 3d 20 61 72 67 | 76 5b 30 5d 3b 0a 0a 09 |v0 = arg|v[0];...|
|000023e0| 73 70 65 65 64 20 3d 20 | 42 31 32 30 30 3b 0a 09 |speed = |B1200;..|
|000023f0| 65 73 63 63 68 61 72 20 | 3d 20 32 37 3b 0a 09 61 |escchar |= 27;..a|
|00002400| 72 67 75 65 28 61 72 67 | 63 2c 20 61 72 67 76 2c |rgue(arg|c, argv,|
|00002410| 20 31 29 3b 0a 0a 09 28 | 76 6f 69 64 29 20 6e 69 | 1);...(|void) ni|
|00002420| 63 65 28 2d 31 30 29 3b | 0a 09 28 76 6f 69 64 29 |ce(-10);|..(void)|
|00002430| 20 73 65 74 75 69 64 28 | 67 65 74 75 69 64 28 29 | setuid(|getuid()|
|00002440| 29 3b 0a 0a 09 66 64 20 | 3d 20 6f 70 65 6e 28 6c |);...fd |= open(l|
|00002450| 69 6e 6b 6e 61 6d 65 2c | 20 4f 5f 52 44 57 52 2c |inkname,| O_RDWR,|
|00002460| 20 30 29 3b 0a 09 69 66 | 20 28 66 64 20 3c 20 30 | 0);..if| (fd < 0|
|00002470| 29 0a 09 09 65 72 72 6f | 72 28 31 2c 20 65 72 72 |)...erro|r(1, err|
|00002480| 6e 6f 2c 20 22 63 61 6e | 27 74 20 6f 70 65 6e 20 |no, "can|'t open |
|00002490| 25 73 22 2c 20 6c 69 6e | 6b 6e 61 6d 65 29 3b 0a |%s", lin|kname);.|
|000024a0| 0a 09 6c 69 6e 6b 66 64 | 20 3d 20 66 64 3b 0a 09 |..linkfd| = fd;..|
|000024b0| 66 69 78 6c 69 6e 6b 28 | 29 3b 0a 09 72 61 77 74 |fixlink(|);..rawt|
|000024c0| 74 79 28 29 3b 0a 09 70 | 72 69 6e 74 66 28 22 6f |ty();..p|rintf("o|
|000024d0| 70 65 6e 5c 72 5c 6e 22 | 29 3b 0a 09 6c 78 20 3d |pen\r\n"|);..lx =|
|000024e0| 20 30 3b 0a 09 74 78 20 | 3d 20 30 3b 0a 0a 09 66 | 0;..tx |= 0;...f|
|000024f0| 6f 72 20 28 3b 3b 29 20 | 7b 0a 09 09 69 66 20 28 |or (;;) |{...if (|
|00002500| 6c 78 20 3e 3d 20 6c 69 | 6e 65 63 6f 75 6e 74 20 |lx >= li|necount |
|00002510| 26 26 20 74 78 20 3e 3d | 20 74 74 79 63 6f 75 6e |&& tx >=| ttycoun|
|00002520| 74 29 20 7b 0a 09 09 09 | 66 64 5f 73 65 74 20 69 |t) {....|fd_set i|
|00002530| 6e 62 69 74 73 3b 0a 0a | 09 09 09 69 66 20 28 74 |nbits;..|...if (t|
|00002540| 74 79 6f 63 6f 75 6e 74 | 29 0a 09 09 09 09 66 6c |tyocount|).....fl|
|00002550| 75 73 68 6f 28 74 74 79 | 6f 62 75 66 2c 20 26 74 |usho(tty|obuf, &t|
|00002560| 74 79 6f 63 6f 75 6e 74 | 2c 20 31 29 3b 0a 09 09 |tyocount|, 1);...|
|00002570| 09 69 66 20 28 6c 69 6e | 65 6f 63 6f 75 6e 74 29 |.if (lin|eocount)|
|00002580| 0a 09 09 09 09 66 6c 75 | 73 68 6f 28 6c 69 6e 65 |.....flu|sho(line|
|00002590| 6f 62 75 66 2c 20 26 6c | 69 6e 65 6f 63 6f 75 6e |obuf, &l|ineocoun|
|000025a0| 74 2c 20 66 64 29 3b 0a | 0a 09 09 09 2f 2a 20 72 |t, fd);.|..../* r|
|000025b0| 65 61 64 20 66 72 6f 6d | 20 74 74 79 20 61 6e 64 |ead from| tty and|
|000025c0| 2f 6f 72 20 6c 69 6e 65 | 20 2a 2f 0a 09 09 09 46 |/or line| */....F|
|000025d0| 44 5f 5a 45 52 4f 28 26 | 69 6e 62 69 74 73 29 3b |D_ZERO(&|inbits);|
|000025e0| 0a 09 09 09 46 44 5f 53 | 45 54 28 31 2c 20 26 69 |....FD_S|ET(1, &i|
|000025f0| 6e 62 69 74 73 29 3b 0a | 09 09 09 46 44 5f 53 45 |nbits);.|...FD_SE|
|00002600| 54 28 66 64 2c 20 26 69 | 6e 62 69 74 73 29 3b 0a |T(fd, &i|nbits);.|
|00002610| 09 09 09 63 20 3d 20 73 | 65 6c 65 63 74 28 66 64 |...c = s|elect(fd|
|00002620| 20 2b 20 31 2c 20 26 69 | 6e 62 69 74 73 2c 20 28 | + 1, &i|nbits, (|
|00002630| 66 64 5f 73 65 74 20 2a | 29 20 30 2c 20 28 66 64 |fd_set *|) 0, (fd|
|00002640| 5f 73 65 74 20 2a 29 20 | 30 2c 0a 09 09 09 09 20 |_set *) |0,..... |
|00002650| 20 20 28 73 74 72 75 63 | 74 20 74 69 6d 65 76 61 | (struc|t timeva|
|00002660| 6c 20 2a 29 20 30 29 3b | 0a 09 09 09 69 66 20 28 |l *) 0);|....if (|
|00002670| 63 20 3d 3d 20 30 29 20 | 7b 0a 09 09 09 09 65 72 |c == 0) |{.....er|
|00002680| 72 6f 72 28 30 2c 20 65 | 72 72 6e 6f 2c 20 22 73 |ror(0, e|rrno, "s|
|00002690| 65 6c 65 63 74 22 29 3b | 0a 09 09 09 09 63 6c 65 |elect");|.....cle|
|000026a0| 61 6e 75 70 28 31 29 3b | 0a 09 09 09 7d 0a 09 09 |anup(1);|....}...|
|000026b0| 09 69 66 20 28 46 44 5f | 49 53 53 45 54 28 31 2c |.if (FD_|ISSET(1,|
|000026c0| 20 26 69 6e 62 69 74 73 | 29 29 20 7b 0a 09 09 09 | &inbits|)) {....|
|000026d0| 09 74 74 79 63 6f 75 6e | 74 20 3d 20 72 65 61 64 |.ttycoun|t = read|
|000026e0| 28 30 2c 20 74 74 79 62 | 75 66 2c 20 42 55 46 53 |(0, ttyb|uf, BUFS|
|000026f0| 49 5a 29 3b 0a 09 09 09 | 09 69 66 20 28 74 74 79 |IZ);....|.if (tty|
|00002700| 63 6f 75 6e 74 20 3c 20 | 30 29 20 7b 0a 09 09 09 |count < |0) {....|
|00002710| 09 09 65 72 72 6f 72 28 | 30 2c 20 65 72 72 6e 6f |..error(|0, errno|
|00002720| 2c 20 22 72 65 61 64 28 | 30 29 22 29 3b 0a 09 09 |, "read(|0)");...|
|00002730| 09 09 09 63 6c 65 61 6e | 75 70 28 31 29 3b 0a 09 |...clean|up(1);..|
|00002740| 09 09 09 7d 0a 09 09 09 | 09 69 66 20 28 74 74 79 |...}....|.if (tty|
|00002750| 63 6f 75 6e 74 20 3d 3d | 20 30 29 20 7b 0a 09 09 |count ==| 0) {...|
|00002760| 09 09 09 65 72 72 6f 72 | 28 30 2c 20 30 2c 20 22 |...error|(0, 0, "|
|00002770| 65 6f 66 28 30 29 3f 22 | 29 3b 0a 09 09 09 09 09 |eof(0)?"|);......|
|00002780| 63 6c 65 61 6e 75 70 28 | 31 29 3b 0a 09 09 09 09 |cleanup(|1);.....|
|00002790| 7d 0a 09 09 09 09 74 78 | 20 3d 20 30 3b 0a 09 09 |}.....tx| = 0;...|
|000027a0| 09 7d 0a 09 09 09 69 66 | 20 28 46 44 5f 49 53 53 |.}....if| (FD_ISS|
|000027b0| 45 54 28 66 64 2c 20 26 | 69 6e 62 69 74 73 29 29 |ET(fd, &|inbits))|
|000027c0| 20 7b 0a 09 09 09 09 6c | 69 6e 65 63 6f 75 6e 74 | {.....l|inecount|
|000027d0| 20 3d 20 72 65 61 64 28 | 66 64 2c 20 6c 69 6e 65 | = read(|fd, line|
|000027e0| 62 75 66 2c 20 42 55 46 | 53 49 5a 29 3b 0a 09 09 |buf, BUF|SIZ);...|
|000027f0| 09 09 69 66 20 28 6c 69 | 6e 65 63 6f 75 6e 74 20 |..if (li|necount |
|00002800| 3c 20 30 29 20 7b 0a 09 | 09 09 09 09 65 72 72 6f |< 0) {..|....erro|
|00002810| 72 28 30 2c 20 65 72 72 | 6e 6f 2c 20 22 72 65 61 |r(0, err|no, "rea|
|00002820| 64 28 25 64 29 22 2c 20 | 66 64 29 3b 0a 09 09 09 |d(%d)", |fd);....|
|00002830| 09 09 63 6c 65 61 6e 75 | 70 28 31 29 3b 0a 09 09 |..cleanu|p(1);...|
|00002840| 09 09 7d 0a 09 09 09 09 | 69 66 20 28 6c 69 6e 65 |..}.....|if (line|
|00002850| 63 6f 75 6e 74 20 3d 3d | 20 30 29 20 7b 0a 09 09 |count ==| 0) {...|
|00002860| 09 09 09 65 72 72 6f 72 | 28 30 2c 20 30 2c 20 22 |...error|(0, 0, "|
|00002870| 65 6f 66 28 25 64 29 3f | 22 2c 20 66 64 29 3b 0a |eof(%d)?|", fd);.|
|00002880| 09 09 09 09 09 63 6c 65 | 61 6e 75 70 28 31 29 3b |.....cle|anup(1);|
|00002890| 0a 09 09 09 09 7d 0a 09 | 09 09 09 6c 78 20 3d 20 |.....}..|...lx = |
|000028a0| 30 3b 0a 09 09 09 7d 0a | 09 09 7d 0a 09 09 2f 2a |0;....}.|..}.../*|
|000028b0| 20 68 61 6e 64 6c 65 20 | 74 74 79 20 69 6e 70 75 | handle |tty inpu|
|000028c0| 74 20 2a 2f 0a 09 09 77 | 68 69 6c 65 20 28 74 78 |t */...w|hile (tx|
|000028d0| 20 3c 20 74 74 79 63 6f | 75 6e 74 29 20 7b 0a 09 | < ttyco|unt) {..|
|000028e0| 09 09 63 20 3d 20 74 74 | 79 62 75 66 5b 74 78 2b |..c = tt|ybuf[tx+|
|000028f0| 2b 5d 20 26 20 30 78 37 | 66 3b 0a 09 09 09 69 66 |+] & 0x7|f;....if|
|00002900| 20 28 73 74 61 74 65 29 | 20 7b 0a 09 09 09 09 73 | (state)| {.....s|
|00002910| 74 61 74 65 20 3d 20 30 | 3b 0a 09 09 09 09 69 66 |tate = 0|;.....if|
|00002920| 20 28 63 20 3d 3d 20 65 | 73 63 63 68 61 72 29 0a | (c == e|scchar).|
|00002930| 09 09 09 09 09 67 6f 74 | 6f 20 70 75 74 3b 0a 09 |.....got|o put;..|
|00002940| 09 09 09 73 77 69 74 63 | 68 20 28 63 29 20 7b 0a |...switc|h (c) {.|
|00002950| 09 09 09 09 63 61 73 65 | 20 27 62 27 3a 0a 09 09 |....case| 'b':...|
|00002960| 09 09 09 67 65 6e 62 72 | 65 61 6b 28 29 3b 0a 09 |...genbr|eak();..|
|00002970| 09 09 09 09 62 72 65 61 | 6b 3b 0a 0a 09 09 09 09 |....brea|k;......|
|00002980| 63 61 73 65 20 27 71 27 | 3a 0a 09 09 09 09 09 63 |case 'q'|:......c|
|00002990| 6c 65 61 6e 75 70 28 30 | 29 3b 0a 09 09 09 09 09 |leanup(0|);......|
|000029a0| 2f 2a 4e 4f 54 52 45 41 | 43 48 45 44 2a 2f 0a 0a |/*NOTREA|CHED*/..|
|000029b0| 09 09 09 09 63 61 73 65 | 20 27 7a 27 3a 0a 09 09 |....case| 'z':...|
|000029c0| 09 09 09 70 72 69 6e 74 | 66 28 22 5c 72 5c 6e 73 |...print|f("\r\ns|
|000029d0| 75 73 70 65 6e 64 5c 72 | 5c 6e 22 29 3b 0a 09 09 |uspend\r|\n");...|
|000029e0| 09 09 09 73 75 73 70 28 | 29 3b 0a 09 09 09 09 09 |...susp(|);......|
|000029f0| 70 72 69 6e 74 66 28 22 | 72 65 73 75 6d 65 64 5c |printf("|resumed\|
|00002a00| 72 5c 6e 22 29 3b 0a 09 | 09 09 09 09 62 72 65 61 |r\n");..|....brea|
|00002a10| 6b 3b 0a 0a 09 09 09 09 | 63 61 73 65 20 27 68 27 |k;......|case 'h'|
|00002a20| 3a 0a 09 09 09 09 63 61 | 73 65 20 27 48 27 3a 0a |:.....ca|se 'H':.|
|00002a30| 09 09 09 09 63 61 73 65 | 20 27 3f 27 3a 0a 09 09 |....case| '?':...|
|00002a40| 09 09 09 70 72 69 6e 74 | 66 28 22 5c 72 5c 6e 5c |...print|f("\r\n\|
|00002a50| 0a 45 53 43 20 73 75 62 | 63 6f 6d 6d 61 6e 64 73 |.ESC sub|commands|
|00002a60| 3a 5c 72 5c 6e 5c 0a 20 | 20 20 20 62 20 2d 20 67 |:\r\n\. | b - g|
|00002a70| 65 6e 65 72 61 74 65 20 | 61 20 62 72 65 61 6b 5c |enerate |a break\|
|00002a80| 72 5c 6e 5c 0a 20 20 20 | 20 6f 20 2d 20 73 65 74 |r\n\. | o - set|
|00002a90| 20 6f 70 74 69 6f 6e 73 | 5c 72 5c 6e 5c 0a 20 20 | options|\r\n\. |
|00002aa0| 20 20 71 20 2d 20 71 75 | 69 74 5c 72 5c 6e 5c 0a | q - qu|it\r\n\.|
|00002ab0| 20 20 20 20 7a 20 2d 20 | 73 75 73 70 65 6e 64 5c | z - |suspend\|
|00002ac0| 72 5c 6e 22 29 3b 0a 09 | 09 09 09 09 62 72 65 61 |r\n");..|....brea|
|00002ad0| 6b 3b 0a 0a 09 09 09 09 | 63 61 73 65 20 27 6f 27 |k;......|case 'o'|
|00002ae0| 3a 0a 09 09 09 09 63 61 | 73 65 20 27 4f 27 3a 0a |:.....ca|se 'O':.|
|00002af0| 09 09 09 09 09 6f 70 74 | 69 6f 6e 73 28 29 3b 0a |.....opt|ions();.|
|00002b00| 09 09 09 09 09 62 72 65 | 61 6b 3b 0a 0a 09 09 09 |.....bre|ak;.....|
|00002b10| 09 64 65 66 61 75 6c 74 | 3a 0a 62 65 65 70 3a 0a |.default|:.beep:.|
|00002b20| 09 09 09 09 09 74 74 79 | 6f 62 75 66 5b 74 74 79 |.....tty|obuf[tty|
|00002b30| 6f 63 6f 75 6e 74 2b 2b | 5d 20 3d 20 37 3b 0a 09 |ocount++|] = 7;..|
|00002b40| 09 09 09 09 69 66 20 28 | 74 74 79 6f 63 6f 75 6e |....if (|ttyocoun|
|00002b50| 74 20 3d 3d 20 42 55 46 | 53 49 5a 29 0a 09 09 09 |t == BUF|SIZ)....|
|00002b60| 09 09 09 66 6c 75 73 68 | 6f 28 74 74 79 6f 62 75 |...flush|o(ttyobu|
|00002b70| 66 2c 20 26 74 74 79 6f | 63 6f 75 6e 74 2c 20 31 |f, &ttyo|count, 1|
|00002b80| 29 3b 0a 09 09 09 09 09 | 62 72 65 61 6b 3b 0a 09 |);......|break;..|
|00002b90| 09 09 09 7d 0a 09 09 09 | 7d 20 65 6c 73 65 20 69 |...}....|} else i|
|00002ba0| 66 20 28 63 20 3d 3d 20 | 65 73 63 63 68 61 72 29 |f (c == |escchar)|
|00002bb0| 20 7b 0a 09 09 09 09 73 | 74 61 74 65 20 3d 20 31 | {.....s|tate = 1|
|00002bc0| 3b 0a 09 09 09 09 67 6f | 74 6f 20 62 65 65 70 3b |;.....go|to beep;|
|00002bd0| 0a 09 09 09 7d 20 65 6c | 73 65 20 7b 0a 70 75 74 |....} el|se {.put|
|00002be0| 3a 0a 09 09 09 09 69 66 | 20 28 70 61 72 74 61 62 |:.....if| (partab|
|00002bf0| 29 0a 09 09 09 09 09 63 | 20 3d 20 70 61 72 74 61 |)......c| = parta|
|00002c00| 62 5b 63 5d 3b 0a 09 09 | 09 09 65 6c 73 65 09 2f |b[c];...|..else./|
|00002c10| 2a 20 72 65 73 74 6f 72 | 65 20 70 61 72 69 74 79 |* restor|e parity|
|00002c20| 20 2a 2f 0a 09 09 09 09 | 09 63 20 3d 20 74 74 79 | */.....|.c = tty|
|00002c30| 62 75 66 5b 74 78 20 2d | 20 31 5d 3b 0a 09 09 09 |buf[tx -| 1];....|
|00002c40| 09 63 20 7c 3d 20 70 61 | 72 62 69 73 3b 0a 09 09 |.c |= pa|rbis;...|
|00002c50| 09 09 63 20 26 3d 20 7e | 70 61 72 62 69 63 3b 0a |..c &= ~|parbic;.|
|00002c60| 09 09 09 09 6c 69 6e 65 | 6f 62 75 66 5b 6c 69 6e |....line|obuf[lin|
|00002c70| 65 6f 63 6f 75 6e 74 2b | 2b 5d 20 3d 20 63 3b 0a |eocount+|+] = c;.|
|00002c80| 09 09 09 09 69 66 20 28 | 6c 69 6e 65 6f 63 6f 75 |....if (|lineocou|
|00002c90| 6e 74 20 3d 3d 20 42 55 | 46 53 49 5a 29 0a 09 09 |nt == BU|FSIZ)...|
|00002ca0| 09 09 09 66 6c 75 73 68 | 6f 28 6c 69 6e 65 6f 62 |...flush|o(lineob|
|00002cb0| 75 66 2c 20 26 6c 69 6e | 65 6f 63 6f 75 6e 74 2c |uf, &lin|eocount,|
|00002cc0| 20 66 64 29 3b 0a 09 09 | 09 7d 0a 09 09 7d 0a 09 | fd);...|.}...}..|
|00002cd0| 09 2f 2a 20 68 61 6e 64 | 6c 65 20 6c 69 6e 65 20 |./* hand|le line |
|00002ce0| 69 6e 70 75 74 20 2a 2f | 0a 09 09 77 68 69 6c 65 |input */|...while|
|00002cf0| 20 28 6c 78 20 3c 20 6c | 69 6e 65 63 6f 75 6e 74 | (lx < l|inecount|
|00002d00| 29 20 7b 0a 09 09 09 63 | 20 3d 20 6c 69 6e 65 62 |) {....c| = lineb|
|00002d10| 75 66 5b 6c 78 2b 2b 5d | 3b 0a 09 09 09 2f 2a 20 |uf[lx++]|;..../* |
|00002d20| 68 61 6e 64 6c 65 20 70 | 61 72 69 74 79 20 68 65 |handle p|arity he|
|00002d30| 72 65 20 73 6f 6d 65 64 | 61 79 20 2a 2f 0a 09 09 |re somed|ay */...|
|00002d40| 09 74 74 79 6f 62 75 66 | 5b 74 74 79 6f 63 6f 75 |.ttyobuf|[ttyocou|
|00002d50| 6e 74 2b 2b 5d 20 3d 20 | 63 20 26 20 30 78 37 66 |nt++] = |c & 0x7f|
|00002d60| 3b 0a 09 09 09 69 66 20 | 28 74 74 79 6f 63 6f 75 |;....if |(ttyocou|
|00002d70| 6e 74 20 3d 3d 20 42 55 | 46 53 49 5a 29 0a 09 09 |nt == BU|FSIZ)...|
|00002d80| 09 09 66 6c 75 73 68 6f | 28 74 74 79 6f 62 75 66 |..flusho|(ttyobuf|
|00002d90| 2c 20 26 74 74 79 6f 63 | 6f 75 6e 74 2c 20 66 64 |, &ttyoc|ount, fd|
|00002da0| 29 3b 0a 09 09 7d 0a 09 | 7d 0a 7d 0a 0a 66 6c 75 |);...}..|}.}..flu|
|00002db0| 73 68 6f 28 62 75 66 2c | 20 70 2c 20 66 64 29 0a |sho(buf,| p, fd).|
|00002dc0| 09 63 68 61 72 20 2a 62 | 75 66 3b 0a 09 72 65 67 |.char *b|uf;..reg|
|00002dd0| 69 73 74 65 72 20 69 6e | 74 20 2a 70 3b 0a 09 69 |ister in|t *p;..i|
|00002de0| 6e 74 20 66 64 3b 0a 7b | 0a 0a 09 69 66 20 28 77 |nt fd;.{|...if (w|
|00002df0| 72 69 74 65 28 66 64 2c | 20 62 75 66 2c 20 2a 70 |rite(fd,| buf, *p|
|00002e00| 29 20 21 3d 20 2a 70 29 | 20 7b 0a 09 09 65 72 72 |) != *p)| {...err|
|00002e10| 6f 72 28 30 2c 20 65 72 | 72 6e 6f 2c 20 22 77 72 |or(0, er|rno, "wr|
|00002e20| 69 74 65 28 25 64 29 22 | 2c 20 66 64 29 3b 0a 09 |ite(%d)"|, fd);..|
|00002e30| 09 63 6c 65 61 6e 75 70 | 28 31 29 3b 0a 09 7d 0a |.cleanup|(1);..}.|
|00002e40| 09 2a 70 20 3d 20 30 3b | 0a 7d 0a 0a 63 6c 65 61 |.*p = 0;|.}..clea|
|00002e50| 6e 75 70 28 63 6f 64 65 | 29 0a 09 69 6e 74 20 63 |nup(code|)..int c|
|00002e60| 6f 64 65 3b 0a 7b 0a 0a | 09 70 72 69 6e 74 66 28 |ode;.{..|.printf(|
|00002e70| 22 5c 72 5c 6e 63 6c 6f | 73 65 64 5c 72 5c 6e 22 |"\r\nclo|sed\r\n"|
|00002e80| 29 3b 0a 09 28 76 6f 69 | 64 29 20 69 6f 63 74 6c |);..(voi|d) ioctl|
|00002e90| 28 30 2c 20 54 49 4f 43 | 53 45 54 50 2c 20 26 73 |(0, TIOC|SETP, &s|
|00002ea0| 67 62 75 66 29 3b 0a 09 | 65 78 69 74 28 63 6f 64 |gbuf);..|exit(cod|
|00002eb0| 65 29 3b 0a 7d 0a 0a 72 | 61 77 74 74 79 28 29 0a |e);.}..r|awtty().|
|00002ec0| 7b 0a 09 73 74 72 75 63 | 74 20 73 67 74 74 79 62 |{..struc|t sgttyb|
|00002ed0| 20 72 61 77 3b 0a 0a 09 | 69 66 20 28 69 6f 63 74 | raw;...|if (ioct|
|00002ee0| 6c 28 30 2c 20 54 49 4f | 43 47 45 54 50 2c 20 26 |l(0, TIO|CGETP, &|
|00002ef0| 73 67 62 75 66 29 29 0a | 09 09 65 72 72 6f 72 28 |sgbuf)).|..error(|
|00002f00| 31 2c 20 65 72 72 6e 6f | 2c 20 22 69 6f 63 74 6c |1, errno|, "ioctl|
|00002f10| 20 54 49 4f 43 47 45 54 | 50 22 29 3b 0a 09 72 61 | TIOCGET|P");..ra|
|00002f20| 77 20 3d 20 73 67 62 75 | 66 3b 0a 09 72 61 77 2e |w = sgbu|f;..raw.|
|00002f30| 73 67 5f 66 6c 61 67 73 | 20 3d 20 52 41 57 3b 0a |sg_flags| = RAW;.|
|00002f40| 09 28 76 6f 69 64 29 20 | 69 6f 63 74 6c 28 30 2c |.(void) |ioctl(0,|
|00002f50| 20 54 49 4f 43 53 45 54 | 50 2c 20 26 72 61 77 29 | TIOCSET|P, &raw)|
|00002f60| 3b 0a 7d 0a 0a 73 75 73 | 70 28 29 0a 7b 0a 0a 09 |;.}..sus|p().{...|
|00002f70| 28 76 6f 69 64 29 20 69 | 6f 63 74 6c 28 30 2c 20 |(void) i|octl(0, |
|00002f80| 54 49 4f 43 53 45 54 50 | 2c 20 26 73 67 62 75 66 |TIOCSETP|, &sgbuf|
|00002f90| 29 3b 0a 09 6b 69 6c 6c | 28 30 2c 20 53 49 47 54 |);..kill|(0, SIGT|
|00002fa0| 53 54 50 29 3b 0a 09 72 | 61 77 74 74 79 28 29 3b |STP);..r|awtty();|
|00002fb0| 0a 7d 0a 0a 73 74 72 75 | 63 74 20 73 70 65 65 64 |.}..stru|ct speed|
|00002fc0| 73 20 7b 0a 09 69 6e 74 | 20 73 70 3b 0a 09 69 6e |s {..int| sp;..in|
|00002fd0| 74 20 73 70 5f 62 3b 0a | 7d 3b 0a 0a 66 69 6e 64 |t sp_b;.|};..find|
|00002fe0| 73 70 65 65 64 28 73 70 | 29 0a 7b 0a 09 72 65 67 |speed(sp|).{..reg|
|00002ff0| 69 73 74 65 72 20 73 74 | 72 75 63 74 20 73 70 65 |ister st|ruct spe|
|00003000| 65 64 73 20 2a 73 70 70 | 3b 0a 09 73 74 61 74 69 |eds *spp|;..stati|
|00003010| 63 20 73 74 72 75 63 74 | 20 73 70 65 65 64 73 20 |c struct| speeds |
|00003020| 73 70 65 65 64 73 5b 5d | 20 3d 20 7b 0a 09 09 33 |speeds[]| = {...3|
|00003030| 30 30 2c 20 42 33 30 30 | 2c 20 36 30 30 2c 20 42 |00, B300|, 600, B|
|00003040| 36 30 30 2c 20 31 32 30 | 30 2c 20 42 31 32 30 30 |600, 120|0, B1200|
|00003050| 2c 20 32 34 30 30 2c 20 | 42 32 34 30 30 2c 0a 09 |, 2400, |B2400,..|
|00003060| 09 34 38 30 30 2c 20 42 | 34 38 30 30 2c 20 39 36 |.4800, B|4800, 96|
|00003070| 30 30 2c 20 42 39 36 30 | 30 2c 20 2d 31 2c 20 2d |00, B960|0, -1, -|
|00003080| 31 0a 09 7d 3b 0a 0a 09 | 73 70 70 20 3d 20 73 70 |1..};...|spp = sp|
|00003090| 65 65 64 73 3b 0a 09 77 | 68 69 6c 65 20 28 73 70 |eeds;..w|hile (sp|
|000030a0| 70 2d 3e 73 70 20 3e 3d | 20 30 29 20 7b 0a 09 09 |p->sp >=| 0) {...|
|000030b0| 69 66 20 28 73 70 70 2d | 3e 73 70 20 3d 3d 20 73 |if (spp-|>sp == s|
|000030c0| 70 29 0a 09 09 09 72 65 | 74 75 72 6e 20 28 73 70 |p)....re|turn (sp|
|000030d0| 70 2d 3e 73 70 5f 62 29 | 3b 0a 09 09 73 70 70 2b |p->sp_b)|;...spp+|
|000030e0| 2b 3b 0a 09 7d 0a 09 72 | 65 74 75 72 6e 20 28 2d |+;..}..r|eturn (-|
|000030f0| 31 29 3b 0a 7d 0a 0a 67 | 65 6e 62 72 65 61 6b 28 |1);.}..g|enbreak(|
|00003100| 29 0a 7b 0a 0a 09 28 76 | 6f 69 64 29 20 69 6f 63 |).{...(v|oid) ioc|
|00003110| 74 6c 28 6c 69 6e 6b 66 | 64 2c 20 54 49 4f 43 53 |tl(linkf|d, TIOCS|
|00003120| 42 52 4b 2c 20 30 29 3b | 0a 09 73 6c 65 65 70 28 |BRK, 0);|..sleep(|
|00003130| 31 29 3b 0a 09 28 76 6f | 69 64 29 20 69 6f 63 74 |1);..(vo|id) ioct|
|00003140| 6c 28 6c 69 6e 6b 66 64 | 2c 20 54 49 4f 43 43 42 |l(linkfd|, TIOCCB|
|00003150| 52 4b 2c 20 30 29 3b 0a | 7d 0a 0a 63 68 61 72 20 |RK, 0);.|}..char |
|00003160| 2a 2a 0a 6d 61 6b 65 61 | 72 67 76 28 61 76 70 2c |**.makea|rgv(avp,|
|00003170| 20 73 29 0a 09 72 65 67 | 69 73 74 65 72 20 63 68 | s)..reg|ister ch|
|00003180| 61 72 20 2a 2a 61 76 70 | 2c 20 2a 73 3b 0a 7b 0a |ar **avp|, *s;.{.|
|00003190| 0a 09 66 6f 72 20 28 3b | 3b 29 20 7b 0a 09 09 77 |..for (;|;) {...w|
|000031a0| 68 69 6c 65 20 28 2a 73 | 20 3d 3d 20 27 20 27 20 |hile (*s| == ' ' |
|000031b0| 7c 7c 20 2a 73 20 3d 3d | 20 27 5c 74 27 20 7c 7c ||| *s ==| '\t' |||
|000031c0| 20 2a 73 20 3d 3d 20 27 | 5c 6e 27 29 0a 09 09 09 | *s == '|\n')....|
|000031d0| 73 2b 2b 3b 0a 09 09 69 | 66 20 28 2a 73 20 3d 3d |s++;...i|f (*s ==|
|000031e0| 20 30 29 20 7b 0a 09 09 | 09 2a 61 76 70 20 3d 20 | 0) {...|.*avp = |
|000031f0| 30 3b 0a 09 09 09 72 65 | 74 75 72 6e 20 61 76 70 |0;....re|turn avp|
|00003200| 3b 0a 09 09 7d 0a 09 09 | 2a 61 76 70 2b 2b 20 3d |;...}...|*avp++ =|
|00003210| 20 73 3b 0a 09 09 77 68 | 69 6c 65 20 28 2a 73 20 | s;...wh|ile (*s |
|00003220| 26 26 20 2a 73 20 21 3d | 20 27 20 27 20 26 26 20 |&& *s !=| ' ' && |
|00003230| 2a 73 20 21 3d 20 27 5c | 74 27 20 26 26 20 2a 73 |*s != '\|t' && *s|
|00003240| 20 21 3d 20 27 5c 6e 27 | 29 0a 09 09 09 73 2b 2b | != '\n'|)....s++|
|00003250| 3b 0a 09 09 69 66 20 28 | 2a 73 20 3d 3d 20 30 29 |;...if (|*s == 0)|
|00003260| 20 7b 0a 09 09 09 2a 61 | 76 70 20 3d 20 30 3b 0a | {....*a|vp = 0;.|
|00003270| 09 09 09 72 65 74 75 72 | 6e 20 61 76 70 3b 0a 09 |...retur|n avp;..|
|00003280| 09 7d 0a 09 09 2a 73 2b | 2b 20 3d 20 30 3b 0a 09 |.}...*s+|+ = 0;..|
|00003290| 7d 0a 7d 0a 0a 6f 70 74 | 69 6f 6e 73 28 29 0a 7b |}.}..opt|ions().{|
|000032a0| 0a 09 63 68 61 72 20 62 | 75 66 5b 32 30 30 5d 3b |..char b|uf[200];|
|000032b0| 0a 09 63 68 61 72 20 2a | 61 72 67 76 5b 31 30 30 |..char *|argv[100|
|000032c0| 5d 3b 0a 09 69 6e 74 20 | 61 72 67 63 3b 0a 0a 09 |];..int |argc;...|
|000032d0| 28 76 6f 69 64 29 20 69 | 6f 63 74 6c 28 30 2c 20 |(void) i|octl(0, |
|000032e0| 54 49 4f 43 53 45 54 50 | 2c 20 26 73 67 62 75 66 |TIOCSETP|, &sgbuf|
|000032f0| 29 3b 0a 09 70 72 69 6e | 74 66 28 22 6f 70 74 69 |);..prin|tf("opti|
|00003300| 6f 6e 73 3a 20 22 29 3b | 0a 09 69 66 20 28 66 67 |ons: ");|..if (fg|
|00003310| 65 74 73 28 62 75 66 2c | 20 73 69 7a 65 6f 66 20 |ets(buf,| sizeof |
|00003320| 62 75 66 2c 20 73 74 64 | 69 6e 29 20 3d 3d 20 4e |buf, std|in) == N|
|00003330| 55 4c 4c 29 0a 09 09 65 | 78 69 74 28 31 29 3b 0a |ULL)...e|xit(1);.|
|00003340| 09 61 72 67 76 5b 30 5d | 20 3d 20 5f 61 72 67 76 |.argv[0]| = _argv|
|00003350| 30 3b 0a 09 61 72 67 63 | 20 3d 20 6d 61 6b 65 61 |0;..argc| = makea|
|00003360| 72 67 76 28 61 72 67 76 | 20 2b 20 31 2c 20 62 75 |rgv(argv| + 1, bu|
|00003370| 66 29 20 2d 20 61 72 67 | 76 3b 0a 09 61 72 67 75 |f) - arg|v;..argu|
|00003380| 65 28 61 72 67 63 2c 20 | 61 72 67 76 2c 20 30 29 |e(argc, |argv, 0)|
|00003390| 3b 0a 09 72 61 77 74 74 | 79 28 29 3b 0a 7d 0a 0a |;..rawtt|y();.}..|
|000033a0| 61 72 67 75 65 28 61 72 | 67 63 2c 20 61 72 67 76 |argue(ar|gc, argv|
|000033b0| 2c 20 74 6f 70 6c 65 76 | 65 6c 29 0a 09 69 6e 74 |, toplev|el)..int|
|000033c0| 20 61 72 67 63 3b 0a 09 | 63 68 61 72 20 2a 2a 61 | argc;..|char **a|
|000033d0| 72 67 76 3b 0a 09 69 6e | 74 20 74 6f 70 6c 65 76 |rgv;..in|t toplev|
|000033e0| 65 6c 3b 0a 7b 0a 09 72 | 65 67 69 73 74 65 72 20 |el;.{..r|egister |
|000033f0| 69 6e 74 20 63 3b 0a 0a | 09 6f 70 74 69 6e 64 20 |int c;..|.optind |
|00003400| 3d 20 31 3b 0a 09 77 68 | 69 6c 65 20 28 28 63 20 |= 1;..wh|ile ((c |
|00003410| 3d 20 67 65 74 6f 70 74 | 28 61 72 67 63 2c 20 61 |= getopt|(argc, a|
|00003420| 72 67 76 2c 20 22 73 3a | 70 3a 6c 3a 65 3a 22 29 |rgv, "s:|p:l:e:")|
|00003430| 29 20 21 3d 20 45 4f 46 | 29 20 7b 0a 09 09 73 77 |) != EOF|) {...sw|
|00003440| 69 74 63 68 20 28 63 29 | 20 7b 0a 09 09 63 61 73 |itch (c)| {...cas|
|00003450| 65 20 27 3f 27 3a 0a 75 | 73 61 67 65 3a 0a 09 09 |e '?':.u|sage:...|
|00003460| 09 69 66 20 28 74 6f 70 | 6c 65 76 65 6c 29 20 7b |.if (top|level) {|
|00003470| 0a 09 09 09 09 65 72 72 | 6f 72 28 31 2c 20 30 2c |.....err|or(1, 0,|
|00003480| 20 22 5c 0a 75 73 61 67 | 65 3a 20 63 20 2d 6c 20 | "\.usag|e: c -l |
|00003490| 6c 69 6e 6b 20 5b 2d 73 | 20 73 70 65 65 64 5d 20 |link [-s| speed] |
|000034a0| 5b 2d 70 20 70 61 72 5d | 20 5b 2d 65 20 65 73 63 |[-p par]| [-e esc|
|000034b0| 5d 22 29 3b 0a 09 09 09 | 09 2f 2a 20 4e 4f 54 52 |]");....|./* NOTR|
|000034c0| 45 41 43 48 45 44 20 2a | 2f 0a 09 09 09 7d 0a 09 |EACHED *|/....}..|
|000034d0| 09 09 65 72 72 6f 72 28 | 30 2c 20 30 2c 20 22 6f |..error(|0, 0, "o|
|000034e0| 70 74 69 6f 6e 73 3a 20 | 5b 2d 73 20 73 70 65 65 |ptions: |[-s spee|
|000034f0| 64 5d 20 5b 2d 70 20 70 | 61 72 5d 20 5b 2d 65 20 |d] [-p p|ar] [-e |
|00003500| 65 73 63 5d 22 29 3b 0a | 09 09 09 62 72 65 61 6b |esc]");.|...break|
|00003510| 3b 0a 0a 09 09 63 61 73 | 65 20 27 6c 27 3a 0a 09 |;....cas|e 'l':..|
|00003520| 09 09 69 66 20 28 21 74 | 6f 70 6c 65 76 65 6c 29 |..if (!t|oplevel)|
|00003530| 20 7b 0a 09 09 09 09 65 | 72 72 6f 72 28 30 2c 20 | {.....e|rror(0, |
|00003540| 30 2c 20 22 63 61 6e 27 | 74 20 63 68 61 6e 67 65 |0, "can'|t change|
|00003550| 20 6c 69 6e 6b 20 69 6e | 20 6d 69 64 73 74 72 65 | link in| midstre|
|00003560| 61 6d 22 29 3b 0a 09 09 | 09 09 62 72 65 61 6b 3b |am");...|..break;|
|00003570| 0a 09 09 09 7d 0a 09 09 | 09 69 66 20 28 6c 69 6e |....}...|.if (lin|
|00003580| 6b 6e 61 6d 65 29 0a 09 | 09 09 09 65 72 72 6f 72 |kname)..|...error|
|00003590| 28 31 2c 20 30 2c 20 22 | 75 73 65 20 6f 6e 6c 79 |(1, 0, "|use only|
|000035a0| 20 6f 6e 65 20 2d 6c 20 | 6f 70 74 69 6f 6e 22 29 | one -l |option")|
|000035b0| 3b 0a 09 09 09 6c 69 6e | 6b 6e 61 6d 65 20 3d 20 |;....lin|kname = |
|000035c0| 6f 70 74 61 72 67 3b 0a | 09 09 09 62 72 65 61 6b |optarg;.|...break|
|000035d0| 3b 0a 0a 09 09 63 61 73 | 65 20 27 73 27 3a 0a 09 |;....cas|e 's':..|
|000035e0| 09 09 69 66 20 28 28 73 | 70 65 65 64 20 3d 20 66 |..if ((s|peed = f|
|000035f0| 69 6e 64 73 70 65 65 64 | 28 61 74 6f 69 28 6f 70 |indspeed|(atoi(op|
|00003600| 74 61 72 67 29 29 29 20 | 3c 20 30 29 0a 09 09 09 |targ))) |< 0)....|
|00003610| 09 65 72 72 6f 72 28 74 | 6f 70 6c 65 76 65 6c 2c |.error(t|oplevel,|
|00003620| 20 30 2c 20 22 69 6e 76 | 61 6c 69 64 20 73 70 65 | 0, "inv|alid spe|
|00003630| 65 64 20 25 73 22 2c 20 | 6f 70 74 61 72 67 29 3b |ed %s", |optarg);|
|00003640| 0a 09 09 09 69 66 20 28 | 21 74 6f 70 6c 65 76 65 |....if (|!topleve|
|00003650| 6c 29 0a 09 09 09 09 66 | 69 78 6c 69 6e 6b 28 29 |l).....f|ixlink()|
|00003660| 3b 0a 09 09 09 62 72 65 | 61 6b 3b 0a 0a 09 09 63 |;....bre|ak;....c|
|00003670| 61 73 65 20 27 70 27 3a | 0a 09 09 09 69 66 20 28 |ase 'p':|....if (|
|00003680| 2a 6f 70 74 61 72 67 20 | 3d 3d 20 27 65 27 29 20 |*optarg |== 'e') |
|00003690| 7b 0a 09 09 09 09 70 61 | 72 74 61 62 20 3d 20 65 |{.....pa|rtab = e|
|000036a0| 76 65 6e 70 61 72 3b 0a | 09 09 09 09 70 61 72 62 |venpar;.|....parb|
|000036b0| 69 73 20 3d 20 70 61 72 | 62 69 63 20 3d 20 30 3b |is = par|bic = 0;|
|000036c0| 0a 09 09 09 7d 20 65 6c | 73 65 20 69 66 20 28 2a |....} el|se if (*|
|000036d0| 6f 70 74 61 72 67 20 3d | 3d 20 27 6f 27 29 20 7b |optarg =|= 'o') {|
|000036e0| 0a 09 09 09 09 70 61 72 | 74 61 62 20 3d 20 6f 64 |.....par|tab = od|
|000036f0| 64 70 61 72 3b 0a 09 09 | 09 09 70 61 72 62 69 73 |dpar;...|..parbis|
|00003700| 20 3d 20 70 61 72 62 69 | 63 20 3d 20 30 3b 0a 09 | = parbi|c = 0;..|
|00003710| 09 09 7d 20 65 6c 73 65 | 20 69 66 20 28 2a 6f 70 |..} else| if (*op|
|00003720| 74 61 72 67 20 3d 3d 20 | 27 31 27 29 20 7b 0a 09 |targ == |'1') {..|
|00003730| 09 09 09 70 61 72 62 69 | 73 20 3d 20 30 78 38 30 |...parbi|s = 0x80|
|00003740| 3b 0a 09 09 09 09 70 61 | 72 62 69 63 20 3d 20 30 |;.....pa|rbic = 0|
|00003750| 3b 0a 09 09 09 7d 20 65 | 6c 73 65 20 69 66 20 28 |;....} e|lse if (|
|00003760| 2a 6f 70 74 61 72 67 20 | 3d 3d 20 27 30 27 29 20 |*optarg |== '0') |
|00003770| 7b 0a 09 09 09 09 70 61 | 72 62 69 73 20 3d 20 30 |{.....pa|rbis = 0|
|00003780| 3b 0a 09 09 09 09 70 61 | 72 62 69 63 20 3d 20 30 |;.....pa|rbic = 0|
|00003790| 78 38 30 3b 0a 09 09 09 | 7d 20 65 6c 73 65 20 69 |x80;....|} else i|
|000037a0| 66 20 28 2a 6f 70 74 61 | 72 67 20 3d 3d 20 27 6e |f (*opta|rg == 'n|
|000037b0| 27 29 20 7b 0a 09 09 09 | 09 70 61 72 62 69 73 20 |') {....|.parbis |
|000037c0| 3d 20 70 61 72 62 69 63 | 20 3d 20 30 3b 0a 09 09 |= parbic| = 0;...|
|000037d0| 09 09 70 61 72 74 61 62 | 20 3d 20 30 3b 0a 09 09 |..partab| = 0;...|
|000037e0| 09 7d 20 65 6c 73 65 0a | 09 09 09 09 65 72 72 6f |.} else.|....erro|
|000037f0| 72 28 74 6f 70 6c 65 76 | 65 6c 2c 20 30 2c 20 22 |r(toplev|el, 0, "|
|00003800| 5c 0a 66 6f 72 20 2d 70 | 2c 20 75 73 65 20 6f 6e |\.for -p|, use on|
|00003810| 65 20 6f 66 20 5b 65 2c | 20 6f 2c 20 31 2c 20 30 |e of [e,| o, 1, 0|
|00003820| 2c 20 6e 5d 22 29 3b 0a | 09 09 09 62 72 65 61 6b |, n]");.|...break|
|00003830| 3b 0a 0a 09 09 63 61 73 | 65 20 27 65 27 3a 0a 09 |;....cas|e 'e':..|
|00003840| 09 09 69 66 20 28 6f 70 | 74 61 72 67 5b 31 5d 20 |..if (op|targ[1] |
|00003850| 3d 3d 20 30 29 0a 09 09 | 09 09 65 73 63 63 68 61 |== 0)...|..esccha|
|00003860| 72 20 3d 20 2a 6f 70 74 | 61 72 67 3b 0a 09 09 09 |r = *opt|arg;....|
|00003870| 65 6c 73 65 20 69 66 20 | 28 6f 70 74 61 72 67 5b |else if |(optarg[|
|00003880| 30 5d 20 3d 3d 20 27 5e | 27 29 0a 09 09 09 09 65 |0] == '^|').....e|
|00003890| 73 63 63 68 61 72 20 3d | 20 6f 70 74 61 72 67 5b |scchar =| optarg[|
|000038a0| 31 5d 20 3d 3d 20 27 3f | 27 20 3f 20 30 78 37 66 |1] == '?|' ? 0x7f|
|000038b0| 20 3a 0a 09 09 09 09 09 | 20 20 2a 6f 70 74 61 72 | :......| *optar|
|000038c0| 67 20 26 20 30 78 31 66 | 3b 0a 09 09 09 65 6c 73 |g & 0x1f|;....els|
|000038d0| 65 0a 09 09 09 09 65 73 | 63 63 68 61 72 20 3d 20 |e.....es|cchar = |
|000038e0| 61 74 6f 69 28 6f 70 74 | 61 72 67 29 3b 0a 09 09 |atoi(opt|arg);...|
|000038f0| 09 70 72 69 6e 74 66 28 | 22 65 73 63 61 70 65 20 |.printf(|"escape |
|00003900| 73 65 74 20 74 6f 20 25 | 73 25 63 2e 5c 6e 22 2c |set to %|s%c.\n",|
|00003910| 0a 09 09 09 20 20 20 20 | 20 20 20 65 73 63 63 68 |.... | escch|
|00003920| 61 72 20 3e 3d 20 30 78 | 32 30 20 26 26 20 65 73 |ar >= 0x|20 && es|
|00003930| 63 63 68 61 72 20 3c 20 | 30 78 37 66 20 3f 20 22 |cchar < |0x7f ? "|
|00003940| 22 20 3a 20 22 5e 22 2c | 0a 09 09 09 65 73 63 63 |" : "^",|....escc|
|00003950| 68 61 72 20 3e 3d 20 30 | 78 32 30 20 3f 20 28 65 |har >= 0|x20 ? (e|
|00003960| 73 63 63 68 61 72 20 3d | 3d 20 30 78 37 66 20 3f |scchar =|= 0x7f ?|
|00003970| 20 27 3f 27 20 3a 20 65 | 73 63 63 68 61 72 29 20 | '?' : e|scchar) |
|00003980| 3a 0a 09 09 09 20 20 20 | 20 20 20 20 65 73 63 63 |:.... | escc|
|00003990| 68 61 72 20 2b 20 27 40 | 27 29 3b 0a 09 09 09 62 |har + '@|');....b|
|000039a0| 72 65 61 6b 3b 0a 09 09 | 64 65 66 61 75 6c 74 3a |reak;...|default:|
|000039b0| 0a 09 09 09 65 72 72 6f | 72 28 31 2c 20 30 2c 20 |....erro|r(1, 0, |
|000039c0| 22 69 6e 74 65 72 6e 61 | 6c 20 65 72 72 6f 72 3a |"interna|l error:|
|000039d0| 20 61 72 67 75 65 20 73 | 77 69 74 63 68 22 29 3b | argue s|witch");|
|000039e0| 0a 09 09 7d 0a 09 7d 0a | 09 69 66 20 28 6c 69 6e |...}..}.|.if (lin|
|000039f0| 6b 6e 61 6d 65 20 3d 3d | 20 30 29 0a 09 09 67 6f |kname ==| 0)...go|
|00003a00| 74 6f 20 75 73 61 67 65 | 3b 0a 7d 0a 0a 66 69 78 |to usage|;.}..fix|
|00003a10| 6c 69 6e 6b 28 29 0a 7b | 0a 09 73 74 72 75 63 74 |link().{|..struct|
|00003a20| 20 73 67 74 74 79 62 20 | 6c 3b 0a 0a 09 6c 2e 73 | sgttyb |l;...l.s|
|00003a30| 67 5f 69 73 70 65 65 64 | 20 3d 20 6c 2e 73 67 5f |g_ispeed| = l.sg_|
|00003a40| 6f 73 70 65 65 64 20 3d | 20 73 70 65 65 64 3b 0a |ospeed =| speed;.|
|00003a50| 09 6c 2e 73 67 5f 66 6c | 61 67 73 20 3d 20 52 41 |.l.sg_fl|ags = RA|
|00003a60| 57 3b 0a 09 28 76 6f 69 | 64 29 20 69 6f 63 74 6c |W;..(voi|d) ioctl|
|00003a70| 28 6c 69 6e 6b 66 64 2c | 20 54 49 4f 43 53 45 54 |(linkfd,| TIOCSET|
|00003a80| 4e 2c 20 26 6c 29 3b 0a | 7d 0a 0a 23 69 66 6e 64 |N, &l);.|}..#ifnd|
|00003a90| 65 66 20 6c 69 6e 74 0a | 2f 2a 0a 20 2a 20 45 72 |ef lint.|/*. * Er|
|00003aa0| 72 6f 72 20 72 6f 75 74 | 69 6e 65 20 66 72 6f 6d |ror rout|ine from|
|00003ab0| 20 74 68 65 20 6c 6f 63 | 61 6c 20 43 20 6c 69 62 | the loc|al C lib|
|00003ac0| 72 61 72 79 0a 20 2a 20 | 4e 2e 42 2e 3a 20 54 68 |rary. * |N.B.: Th|
|00003ad0| 69 73 20 63 6f 64 65 20 | 69 73 20 73 79 73 74 65 |is code |is syste|
|00003ae0| 6d 20 64 65 70 65 6e 64 | 65 6e 74 2e 0a 20 2a 2f |m depend|ent.. */|
|00003af0| 0a 0a 2f 2a 0a 20 2a 20 | 65 72 72 6f 72 20 2d 20 |../*. * |error - |
|00003b00| 55 6e 69 76 65 72 73 69 | 74 79 20 6f 66 20 4d 61 |Universi|ty of Ma|
|00003b10| 72 79 6c 61 6e 64 20 73 | 70 65 63 69 66 69 63 20 |ryland s|pecific |
|00003b20| 28 73 69 67 68 29 0a 20 | 2a 0a 20 2a 20 55 73 65 |(sigh). |*. * Use|
|00003b30| 66 75 6c 20 66 6f 72 20 | 70 72 69 6e 74 69 6e 67 |ful for |printing|
|00003b40| 20 65 72 72 6f 72 20 6d | 65 73 73 61 67 65 73 2e | error m|essages.|
|00003b50| 20 20 57 69 6c 6c 20 70 | 72 69 6e 74 20 74 68 65 | Will p|rint the|
|00003b60| 20 70 72 6f 67 72 61 6d | 20 6e 61 6d 65 0a 20 2a | program| name. *|
|00003b70| 20 61 6e 64 20 28 6f 70 | 74 69 6f 6e 61 6c 6c 79 | and (op|tionally|
|00003b80| 29 20 74 68 65 20 73 79 | 73 74 65 6d 20 65 72 72 |) the sy|stem err|
|00003b90| 6f 72 20 61 73 73 6f 63 | 69 61 74 65 64 20 77 69 |or assoc|iated wi|
|00003ba0| 74 68 20 74 68 65 20 76 | 61 6c 75 65 73 20 69 6e |th the v|alues in|
|00003bb0| 0a 20 2a 20 3c 65 72 72 | 6e 6f 2e 68 3e 2e 0a 20 |. * <err|no.h>.. |
|00003bc0| 2a 0a 20 2a 20 4e 6f 74 | 65 20 74 68 61 74 20 74 |*. * Not|e that t|
|00003bd0| 68 65 20 74 79 70 65 20 | 28 61 6e 64 20 65 76 65 |he type |(and eve|
|00003be0| 6e 20 74 68 65 20 65 78 | 69 73 74 65 6e 63 65 21 |n the ex|istence!|
|00003bf0| 29 20 6f 66 20 60 60 61 | 72 67 27 27 20 69 73 20 |) of ``a|rg'' is |
|00003c00| 75 6e 64 65 66 69 6e 65 | 64 2e 0a 20 2a 2f 0a 65 |undefine|d.. */.e|
|00003c10| 72 72 6f 72 28 71 75 69 | 74 2c 20 65 2c 20 66 6d |rror(qui|t, e, fm|
|00003c20| 74 2c 20 61 72 67 29 0a | 09 69 6e 74 20 71 75 69 |t, arg).|.int qui|
|00003c30| 74 3b 0a 09 72 65 67 69 | 73 74 65 72 20 69 6e 74 |t;..regi|ster int|
|00003c40| 20 65 3b 0a 09 63 68 61 | 72 20 2a 66 6d 74 3b 0a | e;..cha|r *fmt;.|
|00003c50| 7b 0a 09 65 78 74 65 72 | 6e 20 63 68 61 72 20 2a |{..exter|n char *|
|00003c60| 73 79 73 5f 65 72 72 6c | 69 73 74 5b 5d 3b 0a 09 |sys_errl|ist[];..|
|00003c70| 65 78 74 65 72 6e 20 69 | 6e 74 20 73 79 73 5f 6e |extern i|nt sys_n|
|00003c80| 65 72 72 3b 0a 09 72 65 | 67 69 73 74 65 72 20 63 |err;..re|gister c|
|00003c90| 68 61 72 20 2a 70 20 3d | 20 5f 61 72 67 76 30 3b |har *p =| _argv0;|
|00003ca0| 0a 0a 09 69 66 20 28 70 | 20 21 3d 20 4e 55 4c 4c |...if (p| != NULL|
|00003cb0| 29 0a 09 09 28 76 6f 69 | 64 29 20 66 70 72 69 6e |)...(voi|d) fprin|
|00003cc0| 74 66 28 73 74 64 65 72 | 72 2c 20 22 25 73 3a 20 |tf(stder|r, "%s: |
|00003cd0| 22 2c 20 70 29 3b 0a 09 | 5f 64 6f 70 72 6e 74 28 |", p);..|_doprnt(|
|00003ce0| 66 6d 74 2c 20 26 61 72 | 67 2c 20 73 74 64 65 72 |fmt, &ar|g, stder|
|00003cf0| 72 29 3b 09 2f 2a 20 6d | 61 67 69 63 20 2a 2f 0a |r);./* m|agic */.|
|00003d00| 09 69 66 20 28 65 20 3e | 20 30 29 20 7b 0a 09 09 |.if (e >| 0) {...|
|00003d10| 69 66 20 28 65 20 3c 20 | 73 79 73 5f 6e 65 72 72 |if (e < |sys_nerr|
|00003d20| 29 0a 09 09 09 28 76 6f | 69 64 29 20 66 70 72 69 |)....(vo|id) fpri|
|00003d30| 6e 74 66 28 73 74 64 65 | 72 72 2c 20 22 3a 20 25 |ntf(stde|rr, ": %|
|00003d40| 73 22 2c 20 73 79 73 5f | 65 72 72 6c 69 73 74 5b |s", sys_|errlist[|
|00003d50| 65 5d 29 3b 0a 09 09 65 | 6c 73 65 0a 09 09 09 28 |e]);...e|lse....(|
|00003d60| 76 6f 69 64 29 20 66 70 | 72 69 6e 74 66 28 73 74 |void) fp|rintf(st|
|00003d70| 64 65 72 72 2c 20 22 3a | 20 75 6e 6b 6e 6f 77 6e |derr, ":| unknown|
|00003d80| 20 65 72 72 6f 72 20 6e | 75 6d 62 65 72 20 25 64 | error n|umber %d|
|00003d90| 22 2c 20 65 29 3b 0a 09 | 7d 0a 09 28 76 6f 69 64 |", e);..|}..(void|
|00003da0| 29 20 70 75 74 63 28 27 | 5c 6e 27 2c 20 73 74 64 |) putc('|\n', std|
|00003db0| 65 72 72 29 3b 0a 09 28 | 76 6f 69 64 29 20 66 66 |err);..(|void) ff|
|00003dc0| 6c 75 73 68 28 73 74 64 | 65 72 72 29 3b 0a 09 69 |lush(std|err);..i|
|00003dd0| 66 20 28 71 75 69 74 29 | 0a 09 09 65 78 69 74 28 |f (quit)|...exit(|
|00003de0| 71 75 69 74 29 3b 0a 7d | 0a 23 65 6e 64 69 66 0a |quit);.}|.#endif.|
|00003df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e00| 64 69 61 6c 69 6e 6f 75 | 74 2f 64 69 61 6c 2e 74 |dialinou|t/dial.t|
|00003e10| 65 78 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |ex......|........|
|00003e20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e60| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 32 |.... 6|44 . 2|
|00003e70| 34 33 20 00 20 20 20 20 | 31 32 20 00 20 20 20 20 |43 . |12 . |
|00003e80| 20 20 32 31 37 34 30 20 | 20 34 34 30 32 31 31 30 | 21740 | 4402110|
|00003e90| 37 35 36 20 20 20 37 35 | 34 37 00 20 00 00 00 00 |756 75|47. ....|
|00003ea0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003eb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ec0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ed0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f00| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003f90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003fa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003fb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003fc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003fd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ff0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004000| 25 0a 25 20 64 69 61 6c | 2e 74 65 78 20 2d 20 73 |%.% dial|.tex - s|
|00004010| 6f 6d 65 20 6e 6f 74 65 | 73 20 6f 6e 20 74 68 65 |ome note|s on the|
|00004020| 20 69 6d 70 6c 65 6d 65 | 6e 74 61 74 69 6f 6e 20 | impleme|ntation |
|00004030| 6f 66 20 73 69 6d 75 6c | 74 61 6e 65 6f 75 73 20 |of simul|taneous |
|00004040| 64 69 61 6c 20 69 6e 2f | 6f 75 74 0a 25 20 6f 6e |dial in/|out.% on|
|00004050| 20 6d 6f 64 65 6d 20 6c | 69 6e 65 73 2e 0a 25 0a | modem l|ines..%.|
|00004060| 0a 25 20 31 31 20 70 74 | 0a 5c 6d 61 67 6e 69 66 |.% 11 pt|.\magnif|
|00004070| 69 63 61 74 69 6f 6e 3d | 5c 6d 61 67 73 74 65 70 |ication=|\magstep|
|00004080| 68 61 6c 66 0a 0a 25 20 | 46 6f 6e 74 73 2e 20 20 |half..% |Fonts. |
|00004090| 49 66 20 79 6f 75 20 61 | 72 65 20 75 73 69 6e 67 |If you a|re using|
|000040a0| 20 54 65 58 37 38 2c 20 | 6f 72 20 74 68 65 20 6e | TeX78, |or the n|
|000040b0| 65 77 20 43 6f 6d 70 75 | 74 65 72 20 4d 6f 64 65 |ew Compu|ter Mode|
|000040c0| 72 6e 20 66 6f 6e 74 73 | 2c 20 63 68 61 6e 67 65 |rn fonts|, change|
|000040d0| 0a 25 20 74 68 69 73 20 | 74 6f 20 63 6d 63 73 63 |.% this |to cmcsc|
|000040e0| 31 30 2e 0a 5c 66 6f 6e | 74 5c 74 65 6e 63 73 63 |10..\fon|t\tencsc|
|000040f0| 3d 61 6d 63 73 63 31 30 | 0a 0a 25 20 4d 61 63 72 |=amcsc10|..% Macr|
|00004100| 6f 73 0a 5c 6e 65 77 69 | 66 5c 69 66 74 6d 09 25 |os.\newi|f\iftm.%|
|00004110| 20 74 72 75 65 20 69 66 | 20 77 65 20 68 61 76 65 | true if| we have|
|00004120| 20 6d 65 6e 74 69 6f 6e | 65 64 20 74 68 65 20 74 | mention|ed the t|
|00004130| 72 61 64 65 6d 61 72 6b | 0a 5c 64 65 66 5c 55 6e |rademark|.\def\Un|
|00004140| 69 78 7b 7b 5c 74 65 6e | 63 73 63 20 55 6e 69 78 |ix{{\ten|csc Unix|
|00004150| 7d 5c 69 66 74 6d 5c 65 | 6c 73 65 5c 66 6f 6f 74 |}\iftm\e|lse\foot|
|00004160| 6e 6f 74 65 7b 24 5c 64 | 61 67 24 7d 7b 7b 5c 74 |note{$\d|ag$}{{\t|
|00004170| 65 6e 63 73 63 20 55 6e | 69 78 7d 20 69 73 20 61 |encsc Un|ix} is a|
|00004180| 0a 66 6f 6f 74 6e 6f 74 | 65 20 6f 66 20 41 54 5c |.footnot|e of AT\|
|00004190| 26 54 20 42 65 6c 6c 20 | 4c 61 62 6f 72 61 74 6f |&T Bell |Laborato|
|000041a0| 72 69 65 73 7d 5c 67 6c | 6f 62 61 6c 5c 74 6d 74 |ries}\gl|obal\tmt|
|000041b0| 72 75 65 5c 66 69 7d 0a | 5c 64 65 66 5c 62 73 64 |rue\fi}.|\def\bsd|
|000041c0| 7b 7b 5c 74 65 6e 63 73 | 63 20 34 2e 33 62 73 64 |{{\tencs|c 4.3bsd|
|000041d0| 7d 20 5c 55 6e 69 78 7d | 0a 25 20 5c 74 65 6e 63 |} \Unix}|.% \tenc|
|000041e0| 73 63 20 64 6f 65 73 20 | 6e 6f 74 20 6c 6f 6f 6b |sc does |not look|
|000041f0| 20 76 65 72 79 20 67 6f | 6f 64 20 6f 6e 20 74 68 | very go|od on th|
|00004200| 65 73 65 2c 20 73 6f 20 | 77 65 20 77 69 6c 6c 20 |ese, so |we will |
|00004210| 75 73 65 20 72 65 67 75 | 6c 61 72 20 66 6f 6e 74 |use regu|lar font|
|00004220| 73 2e 0a 25 5c 64 65 66 | 5c 64 65 63 7b 7b 5c 74 |s..%\def|\dec{{\t|
|00004230| 65 6e 63 73 63 20 64 65 | 63 7d 7d 0a 25 5c 64 65 |encsc de|c}}.%\de|
|00004240| 66 5c 64 7a 7b 7b 5c 74 | 65 6e 63 73 63 20 64 7a |f\dz{{\t|encsc dz|
|00004250| 31 31 7d 7d 09 25 20 6f | 66 66 69 63 69 61 6c 20 |11}}.% o|fficial |
|00004260| 76 65 72 73 69 6f 6e 0a | 25 5c 64 65 66 5c 64 7a |version.|%\def\dz|
|00004270| 7a 7b 7b 5c 74 65 6e 63 | 73 63 20 64 7a 7d 7d 09 |z{{\tenc|sc dz}}.|
|00004280| 09 25 20 73 68 6f 72 74 | 20 76 65 72 73 69 6f 6e |.% short| version|
|00004290| 2c 20 70 75 72 65 6c 79 | 20 66 6f 72 20 76 61 72 |, purely| for var|
|000042a0| 69 65 74 79 0a 25 5c 64 | 65 66 5c 64 68 7b 7b 5c |iety.%\d|ef\dh{{\|
|000042b0| 74 65 6e 63 73 63 20 64 | 68 31 31 7d 7d 0a 5c 64 |tencsc d|h11}}.\d|
|000042c0| 65 66 5c 64 65 63 7b 7b | 5c 72 6d 20 44 45 43 7d |ef\dec{{|\rm DEC}|
|000042d0| 7d 0a 5c 64 65 66 5c 64 | 7a 7b 7b 5c 72 6d 20 44 |}.\def\d|z{{\rm D|
|000042e0| 5a 31 31 7d 7d 0a 5c 64 | 65 66 5c 64 7a 7a 7b 7b |Z11}}.\d|ef\dzz{{|
|000042f0| 5c 72 6d 20 44 5a 7d 7d | 0a 5c 64 65 66 5c 64 68 |\rm DZ}}|.\def\dh|
|00004300| 7b 7b 5c 72 6d 20 44 48 | 31 31 7d 7d 0a 5c 63 68 |{{\rm DH|11}}.\ch|
|00004310| 61 72 64 65 66 5c 75 73 | 3d 60 5c 5f 0a 0a 25 20 |ardef\us|=`\_..% |
|00004320| 4c 61 79 6f 75 74 0a 5c | 70 61 72 73 6b 69 70 3d |Layout.\|parskip=|
|00004330| 2e 35 5c 62 61 73 65 6c | 69 6e 65 73 6b 69 70 20 |.5\basel|ineskip |
|00004340| 70 6c 75 73 31 70 74 0a | 5c 66 6f 6f 74 6c 69 6e |plus1pt.|\footlin|
|00004350| 65 3d 7b 5c 69 66 6e 75 | 6d 5c 70 61 67 65 6e 6f |e={\ifnu|m\pageno|
|00004360| 3d 31 5c 68 66 69 6c 5c | 65 6c 73 65 7b 5c 74 65 |=1\hfil\|else{\te|
|00004370| 6e 72 6d 5c 68 66 69 6c | 20 44 69 61 6c 20 44 65 |nrm\hfil| Dial De|
|00004380| 76 69 63 65 73 20 66 6f | 72 0a 5c 62 73 64 5c 68 |vices fo|r.\bsd\h|
|00004390| 66 69 6c 5c 6c 6c 61 70 | 7b 5c 66 6f 6c 69 6f 7d |fil\llap|{\folio}|
|000043a0| 7d 5c 66 69 7d 0a 0a 25 | 20 48 65 72 65 20 77 65 |}\fi}..%| Here we|
|000043b0| 20 67 6f 2e 2e 2e 0a 0a | 25 20 48 65 61 64 65 72 | go.....|% Header|
|000043c0| 2c 20 70 6c 75 73 20 70 | 61 67 65 20 31 20 28 73 |, plus p|age 1 (s|
|000043d0| 61 76 65 20 70 61 70 65 | 72 29 0a 25 20 48 6f 77 |ave pape|r).% How|
|000043e0| 20 61 62 6f 75 74 20 54 | 48 49 53 20 74 69 74 6c | about T|HIS titl|
|000043f0| 65 21 20 20 43 61 74 63 | 68 79 2c 20 6e 6f 3f 0a |e! Catc|hy, no?.|
|00004400| 5c 6e 75 6c 6c 0a 5c 76 | 73 6b 69 70 31 63 6d 0a |\null.\v|skip1cm.|
|00004410| 5c 63 65 6e 74 65 72 6c | 69 6e 65 7b 53 6f 6d 65 |\centerl|ine{Some|
|00004420| 20 4e 6f 74 65 73 20 6f | 6e 20 74 68 65 20 49 6d | Notes o|n the Im|
|00004430| 70 6c 65 6d 65 6e 74 61 | 74 69 6f 6e 20 6f 66 20 |plementa|tion of |
|00004440| 44 69 61 6c 6f 75 74 20 | 43 61 70 61 62 69 6c 69 |Dialout |Capabili|
|00004450| 74 65 73 7d 0a 5c 63 65 | 6e 74 65 72 6c 69 6e 65 |tes}.\ce|nterline|
|00004460| 7b 66 6f 72 20 4d 6f 64 | 65 6d 20 4c 69 6e 65 73 |{for Mod|em Lines|
|00004470| 20 75 6e 64 65 72 20 5c | 62 73 64 7d 0a 5c 76 73 | under \|bsd}.\vs|
|00004480| 6b 69 70 2e 35 63 6d 0a | 5c 63 65 6e 74 65 72 6c |kip.5cm.|\centerl|
|00004490| 69 6e 65 7b 43 68 72 69 | 73 20 54 6f 72 65 6b 7d |ine{Chri|s Torek}|
|000044a0| 0a 5c 76 73 6b 69 70 2e | 35 63 6d 0a 5c 63 65 6e |.\vskip.|5cm.\cen|
|000044b0| 74 65 72 6c 69 6e 65 7b | 44 65 70 61 72 74 6d 65 |terline{|Departme|
|000044c0| 6e 74 20 6f 66 20 43 6f | 6d 70 75 74 65 72 20 53 |nt of Co|mputer S|
|000044d0| 63 69 65 6e 63 65 7d 0a | 5c 63 65 6e 74 65 72 6c |cience}.|\centerl|
|000044e0| 69 6e 65 7b 55 6e 69 76 | 65 72 73 69 74 79 20 6f |ine{Univ|ersity o|
|000044f0| 66 20 4d 61 72 79 6c 61 | 6e 64 7d 0a 5c 63 65 6e |f Maryla|nd}.\cen|
|00004500| 74 65 72 6c 69 6e 65 7b | 43 6f 6c 6c 65 67 65 20 |terline{|College |
|00004510| 50 61 72 6b 2c 20 4d 44 | 20 32 30 37 34 32 7d 0a |Park, MD| 20742}.|
|00004520| 0a 5c 76 73 6b 69 70 20 | 32 63 6d 0a 0a 25 20 4f |.\vskip |2cm..% O|
|00004530| 6b 2e 20 20 4e 6f 77 20 | 77 68 61 74 3f 0a 25 20 |k. Now |what?.% |
|00004540| 48 6f 77 20 61 62 6f 75 | 74 20 74 68 69 73 3a 0a |How abou|t this:.|
|00004550| 0a 4d 6f 64 65 72 6e 20 | 6d 6f 64 65 6d 73 20 6d |.Modern |modems m|
|00004560| 61 79 20 62 65 20 75 73 | 65 64 20 69 6e 20 62 6f |ay be us|ed in bo|
|00004570| 74 68 20 60 6f 72 69 67 | 69 6e 61 74 65 27 20 61 |th `orig|inate' a|
|00004580| 6e 64 20 60 61 6e 73 77 | 65 72 27 20 6d 6f 64 65 |nd `answ|er' mode|
|00004590| 73 2d 2d 2d 74 68 61 74 | 0a 69 73 2c 20 74 68 65 |s---that|.is, the|
|000045a0| 79 20 63 61 6e 20 62 6f | 74 68 20 63 61 6c 6c 20 |y can bo|th call |
|000045b0| 6f 75 74 20 61 6e 64 20 | 61 6e 73 77 65 72 20 69 |out and |answer i|
|000045c0| 6e 63 6f 6d 69 6e 67 20 | 63 61 6c 6c 73 2e 20 20 |ncoming |calls. |
|000045d0| 54 72 61 64 69 74 69 6f | 6e 61 6c 0a 5c 55 6e 69 |Traditio|nal.\Uni|
|000045e0| 78 5c 20 73 79 73 74 65 | 6d 73 2c 20 68 6f 77 65 |x\ syste|ms, howe|
|000045f0| 76 65 72 2c 20 63 61 6e | 6e 6f 74 20 68 61 6e 64 |ver, can|not hand|
|00004600| 6c 65 20 74 68 69 73 20 | 77 65 6c 6c 3b 20 6d 6f |le this |well; mo|
|00004610| 64 65 6d 73 20 68 61 76 | 65 0a 74 79 70 69 63 61 |dems hav|e.typica|
|00004620| 6c 6c 79 20 62 65 65 6e | 20 64 65 64 69 63 61 74 |lly been| dedicat|
|00004630| 65 64 20 74 6f 20 6f 6e | 65 20 70 75 72 70 6f 73 |ed to on|e purpos|
|00004640| 65 20 6f 72 20 74 68 65 | 20 6f 74 68 65 72 2e 20 |e or the| other. |
|00004650| 20 41 74 20 74 68 65 0a | 55 6e 69 76 65 72 73 69 | At the.|Universi|
|00004660| 74 79 20 6f 66 20 4d 61 | 72 79 6c 61 6e 64 2c 20 |ty of Ma|ryland, |
|00004670| 77 65 20 68 61 76 65 20 | 64 65 76 69 73 65 64 20 |we have |devised |
|00004680| 61 20 73 65 74 20 6f 66 | 20 6b 65 72 6e 65 6c 20 |a set of| kernel |
|00004690| 6d 6f 64 69 66 69 63 61 | 74 69 6f 6e 73 0a 74 68 |modifica|tions.th|
|000046a0| 61 74 20 61 6c 6c 6f 77 | 20 6d 6f 64 65 6d 20 6c |at allow| modem l|
|000046b0| 69 6e 65 73 20 74 6f 20 | 62 65 20 75 73 65 64 20 |ines to |be used |
|000046c0| 62 69 64 69 72 65 63 74 | 69 6f 6e 61 6c 6c 79 2e |bidirect|ionally.|
|000046d0| 20 20 54 68 65 73 65 20 | 70 72 65 73 65 6e 74 0a | These |present.|
|000046e0| 61 20 73 69 6d 70 6c 65 | 20 75 73 65 72 20 69 6e |a simple| user in|
|000046f0| 74 65 72 66 61 63 65 20 | 61 6e 64 20 72 65 71 75 |terface |and requ|
|00004700| 69 72 65 20 6e 6f 6e 65 | 20 6f 66 20 74 68 65 20 |ire none| of the |
|00004710| 65 72 72 6f 72 2d 70 72 | 6f 6e 65 20 6c 6f 63 6b |error-pr|one lock|
|00004720| 69 6e 67 0a 70 72 6f 74 | 6f 63 6f 6c 73 20 74 68 |ing.prot|ocols th|
|00004730| 61 74 20 68 61 76 65 20 | 62 65 65 6e 20 75 73 65 |at have |been use|
|00004740| 64 20 69 6e 20 74 68 65 | 20 70 61 73 74 20 74 6f |d in the| past to|
|00004750| 20 69 6d 70 6c 65 6d 65 | 6e 74 20 73 69 6d 69 6c | impleme|nt simil|
|00004760| 61 72 0a 66 75 6e 63 74 | 69 6f 6e 61 6c 69 74 79 |ar.funct|ionality|
|00004770| 2e 20 20 4d 6f 72 65 6f | 76 65 72 2c 20 75 73 69 |. Moreo|ver, usi|
|00004780| 6e 67 20 6f 75 72 20 73 | 63 68 65 6d 65 2c 20 73 |ng our s|cheme, s|
|00004790| 69 74 65 20 61 64 6d 69 | 6e 69 73 74 72 61 74 6f |ite admi|nistrato|
|000047a0| 72 73 0a 63 61 6e 20 69 | 66 20 74 68 65 79 20 73 |rs.can i|f they s|
|000047b0| 6f 20 63 68 6f 6f 73 65 | 20 69 6d 70 6c 65 6d 65 |o choose| impleme|
|000047c0| 6e 74 20 61 63 63 6f 75 | 6e 74 69 6e 67 20 66 6f |nt accou|nting fo|
|000047d0| 72 20 61 6c 6c 20 6f 75 | 74 67 6f 69 6e 67 20 63 |r all ou|tgoing c|
|000047e0| 61 6c 6c 73 2e 0a 50 72 | 65 76 69 6f 75 73 20 73 |alls..Pr|evious s|
|000047f0| 79 73 74 65 6d 73 20 72 | 65 6e 64 65 72 65 64 20 |ystems r|endered |
|00004800| 74 68 69 73 20 64 69 66 | 66 69 63 75 6c 74 20 61 |this dif|ficult a|
|00004810| 74 20 62 65 73 74 2e 0a | 0a 25 20 45 6e 6f 75 67 |t best..|.% Enoug|
|00004820| 68 20 65 78 74 6f 6c 6c | 69 6e 67 20 6f 66 20 76 |h extoll|ing of v|
|00004830| 69 72 74 75 65 73 2e 20 | 20 4e 6f 77 20 66 6f 72 |irtues. | Now for|
|00004840| 20 73 6f 6d 65 20 64 65 | 74 61 69 6c 73 3a 0a 0a | some de|tails:..|
|00004850| 41 73 20 66 61 72 20 61 | 73 20 75 73 65 72 20 70 |As far a|s user p|
|00004860| 72 6f 67 72 61 6d 73 20 | 61 72 65 20 63 6f 6e 63 |rograms |are conc|
|00004870| 65 72 6e 65 64 2c 20 74 | 68 65 20 6f 6e 6c 79 20 |erned, t|he only |
|00004880| 63 68 61 6e 67 65 20 74 | 6f 20 74 68 65 20 73 79 |change t|o the sy|
|00004890| 73 74 65 6d 0a 69 73 20 | 74 68 65 20 61 64 64 69 |stem.is |the addi|
|000048a0| 74 69 6f 6e 20 6f 66 20 | 61 20 6e 65 77 20 73 65 |tion of |a new se|
|000048b0| 74 20 6f 66 20 7b 5c 69 | 74 20 64 69 61 6c 7d 20 |t of {\i|t dial} |
|000048c0| 64 65 76 69 63 65 73 2e | 20 20 54 68 65 73 65 20 |devices.| These |
|000048d0| 64 65 76 69 63 65 73 0a | 68 61 76 65 20 61 20 6f |devices.|have a o|
|000048e0| 6e 65 2d 74 6f 2d 6f 6e | 65 20 63 6f 72 72 65 73 |ne-to-on|e corres|
|000048f0| 70 6f 6e 64 65 6e 63 65 | 20 77 69 74 68 20 74 68 |pondence| with th|
|00004900| 65 20 7b 5c 69 74 20 74 | 74 79 7d 20 6c 69 6e 65 |e {\it t|ty} line|
|00004910| 73 3b 20 74 68 65 79 0a | 61 72 65 20 64 69 73 74 |s; they.|are dist|
|00004920| 69 6e 67 75 69 73 68 65 | 64 20 62 79 20 68 61 76 |inguishe|d by hav|
|00004930| 69 6e 67 20 61 20 64 69 | 66 66 65 72 65 6e 74 20 |ing a di|fferent |
|00004940| 6d 61 6a 6f 72 20 64 65 | 76 69 63 65 20 6e 75 6d |major de|vice num|
|00004950| 62 65 72 2e 20 20 46 6f | 72 0a 65 78 61 6d 70 6c |ber. Fo|r.exampl|
|00004960| 65 2c 20 6f 6e 20 6f 6e | 65 20 6d 61 63 68 69 6e |e, on on|e machin|
|00004970| 65 20 77 65 20 68 61 76 | 65 20 74 77 6f 20 52 61 |e we hav|e two Ra|
|00004980| 63 61 6c 2d 56 61 64 69 | 63 0a 56 41 33 34 30 30 |cal-Vadi|c.VA3400|
|00004990| 5c 66 6f 6f 74 6e 6f 74 | 65 7b 24 5c 64 64 61 67 |\footnot|e{$\ddag|
|000049a0| 24 7d 7b 56 61 64 69 63 | 20 61 6e 64 20 56 41 33 |$}{Vadic| and VA3|
|000049b0| 34 30 30 20 61 72 65 20 | 6e 6f 20 64 6f 75 62 74 |400 are |no doubt|
|000049c0| 20 74 72 61 64 65 6d 61 | 72 6b 73 0a 6f 66 20 73 | tradema|rks.of s|
|000049d0| 6f 6d 65 6f 6e 65 20 6f | 72 20 61 6e 6f 74 68 65 |omeone o|r anothe|
|000049e0| 72 7d 20 6d 6f 64 65 6d | 73 2e 20 20 54 68 65 73 |r} modem|s. Thes|
|000049f0| 65 20 61 70 70 65 61 72 | 20 61 73 20 7b 5c 74 74 |e appear| as {\tt|
|00004a00| 20 74 74 79 30 34 7d 20 | 61 6e 64 20 7b 5c 74 74 | tty04} |and {\tt|
|00004a10| 0a 74 74 79 30 35 7d 2c | 20 61 6e 64 20 61 6c 73 |.tty05},| and als|
|00004a20| 6f 20 61 73 20 7b 5c 74 | 74 20 64 69 61 6c 30 34 |o as {\t|t dial04|
|00004a30| 7d 20 61 6e 64 20 7b 5c | 74 74 20 64 69 61 6c 30 |} and {\|tt dial0|
|00004a40| 35 7d 3a 0a 0a 7b 5c 74 | 74 5c 76 73 6b 69 70 5c |5}:..{\t|t\vskip\|
|00004a50| 70 61 72 73 6b 69 70 5c | 70 61 72 73 6b 69 70 3d |parskip\|parskip=|
|00004a60| 30 70 74 5c 6f 62 65 79 | 6c 69 6e 65 73 5c 6f 62 |0pt\obey|lines\ob|
|00004a70| 65 79 73 70 61 63 65 73 | 25 0a 63 72 77 2d 2d 77 |eyspaces|%.crw--w|
|00004a80| 2d 2d 77 2d 20 20 31 20 | 72 6f 6f 74 20 20 20 20 |--w- 1 |root |
|00004a90| 20 20 20 31 2c 20 20 20 | 34 20 44 65 63 20 20 33 | 1, |4 Dec 3|
|00004aa0| 20 30 30 3a 30 36 20 2f | 64 65 76 2f 74 74 79 30 | 00:06 /|dev/tty0|
|00004ab0| 34 0a 63 72 77 2d 2d 77 | 2d 2d 77 2d 20 20 31 20 |4.crw--w|--w- 1 |
|00004ac0| 72 6f 6f 74 20 20 20 20 | 20 20 20 31 2c 20 20 20 |root | 1, |
|00004ad0| 35 20 44 65 63 20 20 32 | 20 30 30 3a 32 37 20 2f |5 Dec 2| 00:27 /|
|00004ae0| 64 65 76 2f 74 74 79 30 | 35 0a 63 72 77 2d 72 77 |dev/tty0|5.crw-rw|
|00004af0| 2d 72 77 2d 20 20 31 20 | 72 6f 6f 74 20 20 20 20 |-rw- 1 |root |
|00004b00| 20 20 34 31 2c 20 20 20 | 34 20 44 65 63 20 20 32 | 41, |4 Dec 2|
|00004b10| 20 32 33 3a 31 33 20 2f | 64 65 76 2f 64 69 61 6c | 23:13 /|dev/dial|
|00004b20| 30 34 0a 63 72 77 2d 72 | 77 2d 72 77 2d 20 20 31 |04.crw-r|w-rw- 1|
|00004b30| 20 72 6f 6f 74 20 20 20 | 20 20 20 34 31 2c 20 20 | root | 41, |
|00004b40| 20 35 20 44 65 63 20 20 | 32 20 32 33 3a 31 36 20 | 5 Dec |2 23:16 |
|00004b50| 2f 64 65 76 2f 64 69 61 | 6c 30 35 0a 0a 7d 20 25 |/dev/dia|l05..} %|
|00004b60| 20 77 68 61 74 2c 20 6d | 65 2c 20 77 6f 72 6b 20 | what, m|e, work |
|00004b70| 6c 61 74 65 3f 09 09 5e | 5e 5e 0a 0a 48 65 72 65 |late?..^|^^..Here|
|00004b80| 20 6d 61 6a 6f 72 20 64 | 65 76 69 63 65 20 31 20 | major d|evice 1 |
|00004b90| 63 6f 72 72 65 73 70 6f | 6e 64 73 20 74 6f 20 74 |correspo|nds to t|
|00004ba0| 68 65 20 5c 64 65 63 5c | 20 5c 64 7a 2e 5c 66 6f |he \dec\| \dz.\fo|
|00004bb0| 6f 74 6e 6f 74 65 7b 2a | 7d 7b 5c 64 65 63 2c 0a |otnote{*|}{\dec,.|
|00004bc0| 5c 64 68 2c 20 61 6e 64 | 20 5c 64 7a 5c 20 61 72 |\dh, and| \dz\ ar|
|00004bd0| 65 20 74 72 61 64 65 6d | 61 72 6b 73 20 6f 66 20 |e tradem|arks of |
|00004be0| 44 69 67 69 74 61 6c 20 | 45 71 75 69 70 6d 65 6e |Digital |Equipmen|
|00004bf0| 74 20 43 6f 72 70 6f 72 | 61 74 69 6f 6e 7d 0a 4d |t Corpor|ation}.M|
|00004c00| 61 6a 6f 72 20 64 65 76 | 69 63 65 20 34 31 20 69 |ajor dev|ice 41 i|
|00004c10| 73 20 61 6c 73 6f 20 74 | 68 65 20 5c 64 7a 2c 20 |s also t|he \dz, |
|00004c20| 62 75 74 20 69 6e 20 60 | 64 69 61 6c 20 6f 75 74 |but in `|dial out|
|00004c30| 27 20 6f 72 20 60 6f 75 | 74 67 6f 69 6e 67 27 0a |' or `ou|tgoing'.|
|00004c40| 6d 6f 64 65 2e 20 20 57 | 68 65 6e 20 61 20 70 72 |mode. W|hen a pr|
|00004c50| 6f 67 72 61 6d 20 6f 70 | 65 6e 73 20 74 68 65 20 |ogram op|ens the |
|00004c60| 6e 6f 72 6d 61 6c 20 6f | 72 20 60 69 6e 63 6f 6d |normal o|r `incom|
|00004c70| 69 6e 67 27 20 6c 69 6e | 65 2c 20 69 74 0a 62 65 |ing' lin|e, it.be|
|00004c80| 68 61 76 65 73 20 61 73 | 20 73 75 63 68 20 70 72 |haves as| such pr|
|00004c90| 6f 67 72 61 6d 73 20 61 | 6c 77 61 79 73 20 68 61 |ograms a|lways ha|
|00004ca0| 76 65 3a 20 20 49 66 20 | 74 68 65 72 65 20 69 73 |ve: If |there is|
|00004cb0| 20 61 20 63 61 72 72 69 | 65 72 20 6f 6e 0a 74 68 | a carri|er on.th|
|00004cc0| 65 20 6c 69 6e 65 2c 20 | 74 68 65 20 6f 70 65 6e |e line, |the open|
|00004cd0| 20 63 6f 6d 70 6c 65 74 | 65 73 20 6e 6f 72 6d 61 | complet|es norma|
|00004ce0| 6c 6c 79 3b 20 69 66 20 | 6e 6f 74 2c 20 74 68 65 |lly; if |not, the|
|00004cf0| 20 6f 70 65 6e 0a 60 68 | 61 6e 67 73 27 2d 2d 2d | open.`h|angs'---|
|00004d00| 73 75 73 70 65 6e 64 73 | 2d 2d 2d 77 61 69 74 69 |suspends|---waiti|
|00004d10| 6e 67 20 66 6f 72 20 61 | 20 63 61 72 72 69 65 72 |ng for a| carrier|
|00004d20| 2e 20 20 57 68 65 6e 20 | 61 20 70 72 6f 67 72 61 |. When |a progra|
|00004d30| 6d 20 6f 70 65 6e 73 0a | 74 68 65 20 60 6f 75 74 |m opens.|the `out|
|00004d40| 67 6f 69 6e 67 27 20 6c | 69 6e 65 2c 20 68 6f 77 |going' l|ine, how|
|00004d50| 65 76 65 72 2c 20 73 6f | 6d 65 74 68 69 6e 67 20 |ever, so|mething |
|00004d60| 6e 65 77 20 6f 63 63 75 | 72 73 2e 20 20 49 66 20 |new occu|rs. If |
|00004d70| 74 68 65 72 65 20 69 73 | 0a 61 20 63 61 72 72 69 |there is|.a carri|
|00004d80| 65 72 20 6f 6e 20 74 68 | 65 20 6c 69 6e 65 2c 20 |er on th|e line, |
|00004d90| 74 68 61 74 20 69 6e 64 | 69 63 61 74 65 73 20 74 |that ind|icates t|
|00004da0| 68 61 74 20 74 68 65 20 | 64 65 76 69 63 65 20 69 |hat the |device i|
|00004db0| 73 20 61 6c 72 65 61 64 | 79 0a 69 6e 20 75 73 65 |s alread|y.in use|
|00004dc0| 3b 20 61 6e 64 20 74 68 | 65 20 6f 70 65 6e 20 69 |; and th|e open i|
|00004dd0| 73 20 72 65 6a 65 63 74 | 65 64 20 77 69 74 68 20 |s reject|ed with |
|00004de0| 61 20 60 44 65 76 69 63 | 65 20 62 75 73 79 27 20 |a `Devic|e busy' |
|00004df0| 65 72 72 6f 72 2c 20 7b | 5c 74 74 0a 45 42 55 53 |error, {|\tt.EBUS|
|00004e00| 59 7d 2e 20 20 28 49 6e | 20 70 72 65 76 69 6f 75 |Y}. (In| previou|
|00004e10| 73 20 76 65 72 73 69 6f | 6e 73 20 6f 66 20 5c 55 |s versio|ns of \U|
|00004e20| 6e 69 78 5c 20 74 68 69 | 73 20 77 61 73 20 63 61 |nix\ thi|s was ca|
|00004e30| 6c 6c 65 64 20 61 20 60 | 4d 6f 75 6e 74 0a 64 65 |lled a `|Mount.de|
|00004e40| 76 69 63 65 20 62 75 73 | 79 27 20 65 72 72 6f 72 |vice bus|y' error|
|00004e50| 2e 29 20 20 54 68 65 20 | 6f 70 65 6e 20 69 73 20 |.) The |open is |
|00004e60| 6c 69 6b 65 77 69 73 65 | 20 72 65 6a 65 63 74 65 |likewise| rejecte|
|00004e70| 64 20 69 66 20 74 68 65 | 20 6c 69 6e 65 20 69 73 |d if the| line is|
|00004e80| 0a 61 6c 72 65 61 64 79 | 20 69 6e 20 75 73 65 20 |.already| in use |
|00004e90| 6f 75 74 67 6f 69 6e 67 | 2e 20 20 49 6e 64 65 65 |outgoing|. Indee|
|00004ea0| 64 2c 20 69 6e 20 73 75 | 63 68 20 63 61 73 65 73 |d, in su|ch cases|
|00004eb0| 20 74 68 65 72 65 20 69 | 73 20 61 6c 77 61 79 73 | there i|s always|
|00004ec0| 20 61 0a 63 61 72 72 69 | 65 72 2c 20 73 6f 20 6e | a.carri|er, so n|
|00004ed0| 6f 20 61 64 64 69 74 69 | 6f 6e 61 6c 20 63 6f 64 |o additi|onal cod|
|00004ee0| 65 20 69 73 20 72 65 71 | 75 69 72 65 64 20 66 6f |e is req|uired fo|
|00004ef0| 72 20 74 68 69 73 3a 20 | 20 4f 6e 6c 79 20 69 66 |r this: | Only if|
|00004f00| 20 74 68 65 72 65 0a 69 | 73 20 6e 6f 20 63 61 72 | there.i|s no car|
|00004f10| 72 69 65 72 20 64 6f 65 | 73 20 74 68 65 20 6f 70 |rier doe|s the op|
|00004f20| 65 6e 20 63 6f 6d 70 6c | 65 74 65 2d 2d 2d 61 6e |en compl|ete---an|
|00004f30| 64 20 69 74 20 77 69 6c | 6c 20 68 61 6e 67 20 75 |d it wil|l hang u|
|00004f40| 70 0a 61 75 74 6f 6d 61 | 74 69 63 61 6c 6c 79 20 |p.automa|tically |
|00004f50| 6f 6e 63 65 20 61 20 63 | 61 72 72 69 65 72 20 68 |once a c|arrier h|
|00004f60| 61 73 20 61 70 70 65 61 | 72 65 64 20 61 6e 64 20 |as appea|red and |
|00004f70| 74 68 65 6e 20 76 61 6e | 69 73 68 65 64 2e 0a 0a |then van|ished...|
|00004f80| 57 68 61 74 20 68 61 70 | 70 65 6e 73 2c 20 74 68 |What hap|pens, th|
|00004f90| 65 6e 2c 20 77 68 65 6e | 20 61 20 6c 69 6e 65 20 |en, when| a line |
|00004fa0| 69 73 20 69 6e 20 74 68 | 65 20 70 72 6f 63 65 73 |is in th|e proces|
|00004fb0| 73 20 6f 66 20 62 65 69 | 6e 67 20 6f 70 65 6e 65 |s of bei|ng opene|
|00004fc0| 64 0a 66 6f 72 20 69 6e | 63 6f 6d 69 6e 67 20 75 |d.for in|coming u|
|00004fd0| 73 65 20 77 68 65 6e 20 | 74 68 65 20 6f 75 74 67 |se when |the outg|
|00004fe0| 6f 69 6e 67 20 63 61 6c | 6c 20 69 73 20 6d 61 64 |oing cal|l is mad|
|00004ff0| 65 3f 20 20 57 68 79 2c | 20 6e 6f 74 68 69 6e 67 |e? Why,| nothing|
|00005000| 2c 20 6f 66 0a 63 6f 75 | 72 73 65 3a 20 20 74 68 |, of.cou|rse: th|
|00005010| 65 20 69 6e 63 6f 6d 69 | 6e 67 20 6f 70 65 6e 20 |e incomi|ng open |
|00005020| 72 65 6d 61 69 6e 73 20 | 73 75 73 70 65 6e 64 65 |remains |suspende|
|00005030| 64 20 75 6e 74 69 6c 20 | 74 68 65 20 6f 75 74 67 |d until |the outg|
|00005040| 6f 69 6e 67 0a 63 61 6c | 6c 20 68 61 73 20 62 65 |oing.cal|l has be|
|00005050| 65 6e 20 63 6f 6d 70 6c | 65 74 65 64 2e 20 20 41 |en compl|eted. A|
|00005060| 6e 79 74 68 69 6e 67 20 | 65 6c 73 65 20 77 6f 75 |nything |else wou|
|00005070| 6c 64 20 62 72 65 61 6b | 20 65 78 69 73 74 69 6e |ld break| existin|
|00005080| 67 20 63 6f 64 65 2e 0a | 41 73 20 61 20 62 6f 6e |g code..|As a bon|
|00005090| 75 73 2c 20 6e 6f 20 6c | 6f 63 6b 69 6e 67 20 69 |us, no l|ocking i|
|000050a0| 73 20 72 65 71 75 69 72 | 65 64 3b 20 6f 75 74 67 |s requir|ed; outg|
|000050b0| 6f 69 6e 67 20 6f 70 65 | 6e 73 20 73 75 63 63 65 |oing ope|ns succe|
|000050c0| 65 64 20 69 66 20 61 6e | 64 0a 6f 6e 6c 79 20 69 |ed if an|d.only i|
|000050d0| 66 20 74 68 65 20 6c 69 | 6e 65 20 69 73 20 6e 6f |f the li|ne is no|
|000050e0| 74 20 69 6e 20 75 73 65 | 2c 20 61 6e 64 20 69 6e |t in use|, and in|
|000050f0| 63 6f 6d 69 6e 67 20 6f | 70 65 6e 73 20 72 65 6d |coming o|pens rem|
|00005100| 61 69 6e 20 68 75 6e 67 | 0a 64 75 72 69 6e 67 20 |ain hung|.during |
|00005110| 6f 75 74 67 6f 69 6e 67 | 20 63 61 6c 6c 73 2e 0a |outgoing| calls..|
|00005120| 0a 25 20 46 69 6e 61 6c | 6c 79 2c 20 74 68 65 20 |.% Final|ly, the |
|00005130| 6e 69 74 74 79 2d 67 72 | 69 74 74 79 3b 20 74 68 |nitty-gr|itty; th|
|00005140| 65 20 64 65 74 61 69 6c | 73 3b 20 74 68 65 20 72 |e detail|s; the r|
|00005150| 65 61 6c 20 67 75 74 73 | 20 6f 66 20 74 68 65 20 |eal guts| of the |
|00005160| 67 61 6d 65 2e 0a 0a 54 | 6f 20 69 6c 6c 75 73 74 |game...T|o illust|
|00005170| 72 61 74 65 20 68 6f 77 | 20 74 68 69 73 20 69 73 |rate how| this is|
|00005180| 20 61 63 63 6f 6d 70 6c | 69 73 68 65 64 2c 20 49 | accompl|ished, I|
|00005190| 20 73 68 61 6c 6c 20 72 | 65 66 65 72 20 61 67 61 | shall r|efer aga|
|000051a0| 69 6e 20 74 6f 20 74 68 | 65 0a 5c 64 7a 5c 20 64 |in to th|e.\dz\ d|
|000051b0| 72 69 76 65 72 2e 20 20 | 57 65 20 68 61 76 65 20 |river. |We have |
|000051c0| 61 64 64 65 64 20 74 77 | 6f 20 6e 65 77 20 61 72 |added tw|o new ar|
|000051d0| 72 61 79 73 2c 20 61 6e | 64 20 6d 61 64 65 20 75 |rays, an|d made u|
|000051e0| 73 65 20 6f 66 20 61 6e | 0a 65 78 69 73 74 69 6e |se of an|.existin|
|000051f0| 67 20 74 68 69 72 64 20 | 61 72 72 61 79 3a 20 20 |g third |array: |
|00005200| 54 68 65 72 65 20 69 73 | 20 6e 6f 77 20 61 20 7b |There is| now a {|
|00005210| 5c 74 74 20 64 7a 5c 75 | 73 20 69 6e 6f 75 74 7d |\tt dz\u|s inout}|
|00005220| 20 61 6e 64 20 61 20 7b | 5c 74 74 0a 64 7a 5c 75 | and a {|\tt.dz\u|
|00005230| 73 20 66 6c 61 67 73 7d | 2c 20 62 6f 74 68 20 6f |s flags}|, both o|
|00005240| 66 20 73 69 7a 65 20 7b | 5c 74 74 20 4e 44 5a 7d |f size {|\tt NDZ}|
|00005250| 20 61 6e 64 20 74 79 70 | 65 20 7b 5c 74 74 20 63 | and typ|e {\tt c|
|00005260| 68 61 72 7d 2e 20 20 54 | 68 65 20 66 69 72 73 74 |har}. T|he first|
|00005270| 0a 68 6f 6c 64 73 20 74 | 68 65 20 60 6f 75 74 67 |.holds t|he `outg|
|00005280| 6f 69 6e 67 20 6d 6f 64 | 65 27 20 66 6c 61 67 20 |oing mod|e' flag |
|00005290| 66 6f 72 20 65 61 63 68 | 20 5c 64 7a 7a 5c 20 6c |for each| \dzz\ l|
|000052a0| 69 6e 65 2e 20 20 42 69 | 74 20 24 62 24 20 69 73 |ine. Bi|t $b$ is|
|000052b0| 20 73 65 74 0a 69 6e 20 | 7b 5c 74 74 20 64 7a 5c | set.in |{\tt dz\|
|000052c0| 75 73 20 69 6e 6f 75 74 | 5b 24 64 5c 2f 24 5d 7d |us inout|[$d\/$]}|
|000052d0| 20 77 68 65 6e 65 76 65 | 72 20 6c 69 6e 65 20 24 | wheneve|r line $|
|000052e0| 62 24 20 6f 66 20 5c 64 | 7a 7a 5c 20 24 64 24 20 |b$ of \d|zz\ $d$ |
|000052f0| 68 61 73 20 61 6e 20 6f | 75 74 67 6f 69 6e 67 0a |has an o|utgoing.|
|00005300| 6f 70 65 6e 20 69 6e 20 | 70 72 6f 67 72 65 73 73 |open in |progress|
|00005310| 2e 20 20 7b 5c 74 74 20 | 64 7a 5c 75 73 20 66 6c |. {\tt |dz\us fl|
|00005320| 61 67 73 7d 20 68 6f 6c | 64 73 20 61 20 70 65 72 |ags} hol|ds a per|
|00005330| 6d 61 6e 65 6e 74 20 63 | 6f 70 79 20 6f 66 20 74 |manent c|opy of t|
|00005340| 68 65 0a 60 66 6c 61 67 | 73 27 20 70 61 72 61 6d |he.`flag|s' param|
|00005350| 65 74 65 72 20 66 72 6f | 6d 20 74 68 65 20 6b 65 |eter fro|m the ke|
|00005360| 72 6e 65 6c 20 63 6f 6e | 66 69 67 75 72 61 74 69 |rnel con|figurati|
|00005370| 6f 6e 20 66 69 6c 65 2e | 20 20 49 6e 20 74 68 69 |on file.| In thi|
|00005380| 73 20 63 61 73 65 0a 74 | 68 65 73 65 20 61 72 65 |s case.t|hese are|
|00005390| 20 74 68 65 20 73 6f 66 | 74 77 61 72 65 20 63 61 | the sof|tware ca|
|000053a0| 72 72 69 65 72 20 66 6c | 61 67 73 2e 20 20 49 6e |rrier fl|ags. In|
|000053b0| 20 74 68 65 20 6f 72 69 | 67 69 6e 61 6c 20 6b 65 | the ori|ginal ke|
|000053c0| 72 6e 65 6c 20 74 68 65 | 73 65 0a 77 65 72 65 20 |rnel the|se.were |
|000053d0| 70 75 74 20 69 6e 74 6f | 20 74 68 65 20 61 72 72 |put into| the arr|
|000053e0| 61 79 20 7b 5c 74 74 20 | 64 7a 5c 75 73 20 73 6f |ay {\tt |dz\us so|
|000053f0| 66 74 43 41 52 7d 2d 2d | 2d 61 6c 73 6f 20 6f 66 |ftCAR}--|-also of|
|00005400| 20 73 69 7a 65 20 7b 5c | 74 74 0a 4e 44 5a 7d 2d | size {\|tt.NDZ}-|
|00005410| 2d 2d 61 6e 64 20 6e 65 | 76 65 72 20 74 6f 75 63 |--and ne|ver touc|
|00005420| 68 65 64 2e 20 20 57 65 | 20 6d 75 73 74 20 73 61 |hed. We| must sa|
|00005430| 76 65 20 74 68 65 6d 20 | 73 6f 6d 65 77 68 65 72 |ve them |somewher|
|00005440| 65 20 61 73 20 6f 75 74 | 67 6f 69 6e 67 0a 6f 70 |e as out|going.op|
|00005450| 65 6e 73 20 77 6f 72 6b | 20 62 79 20 74 65 6d 70 |ens work| by temp|
|00005460| 6f 72 61 72 69 6c 79 20 | 61 73 73 65 72 74 69 6e |orarily |assertin|
|00005470| 67 20 74 68 65 20 73 6f | 66 74 77 61 72 65 20 63 |g the so|ftware c|
|00005480| 61 72 72 69 65 72 2e 0a | 0a 57 65 20 6d 6f 64 69 |arrier..|.We modi|
|00005490| 66 69 65 64 20 74 68 65 | 20 64 65 76 69 63 65 20 |fied the| device |
|000054a0| 6f 70 65 6e 20 63 6f 64 | 65 20 74 6f 20 72 65 74 |open cod|e to ret|
|000054b0| 75 72 6e 20 7b 5c 74 74 | 20 45 42 55 53 59 7d 20 |urn {\tt| EBUSY} |
|000054c0| 6e 6f 74 20 6f 6e 6c 79 | 20 6f 6e 0a 61 74 74 65 |not only| on.atte|
|000054d0| 6d 70 74 73 20 74 6f 20 | 6f 70 65 6e 20 61 20 6c |mpts to |open a l|
|000054e0| 69 6e 65 20 69 6e 20 60 | 65 78 63 6c 75 73 69 76 |ine in `|exclusiv|
|000054f0| 65 20 75 73 65 27 20 6d | 6f 64 65 2c 20 62 75 74 |e use' m|ode, but|
|00005500| 20 61 6c 73 6f 20 6f 6e | 20 61 74 74 65 6d 70 74 | also on| attempt|
|00005510| 73 0a 74 6f 20 6f 70 65 | 6e 20 61 20 6c 69 6e 65 |s.to ope|n a line|
|00005520| 20 69 6e 20 6f 75 74 67 | 6f 69 6e 67 20 6d 6f 64 | in outg|oing mod|
|00005530| 65 20 77 68 65 6e 65 76 | 65 72 20 74 68 65 20 6c |e whenev|er the l|
|00005540| 69 6e 65 20 69 73 20 61 | 6c 72 65 61 64 79 20 6f |ine is a|lready o|
|00005550| 70 65 6e 0a 69 6e 20 61 | 6e 79 20 6d 6f 64 65 2e |pen.in a|ny mode.|
|00005560| 20 20 41 73 20 75 73 75 | 61 6c 2c 20 74 68 65 20 | As usu|al, the |
|00005570| 73 75 70 65 72 2d 75 73 | 65 72 20 69 73 20 65 78 |super-us|er is ex|
|00005580| 65 6d 70 74 20 66 72 6f | 6d 20 74 68 69 73 20 72 |empt fro|m this r|
|00005590| 65 73 74 72 69 63 74 69 | 6f 6e 2e 0a 57 65 20 61 |estricti|on..We a|
|000055a0| 6c 73 6f 20 6d 6f 64 69 | 66 69 65 64 20 74 68 65 |lso modi|fied the|
|000055b0| 20 6f 70 65 6e 20 63 6f | 64 65 20 74 6f 3a 0a 0a | open co|de to:..|
|000055c0| 5c 69 74 65 6d 20 7b 31 | 29 7d 20 61 73 73 65 72 |\item {1|)} asser|
|000055d0| 74 20 74 68 65 20 73 6f | 66 74 77 61 72 65 20 63 |t the so|ftware c|
|000055e0| 61 72 72 69 65 72 20 6f | 6e 20 6f 75 74 67 6f 69 |arrier o|n outgoi|
|000055f0| 6e 67 20 6f 70 65 6e 73 | 3b 0a 0a 5c 69 74 65 6d |ng opens|;..\item|
|00005600| 20 7b 32 29 7d 20 68 61 | 6e 67 20 75 6e 74 69 6c | {2)} ha|ng until|
|00005610| 20 74 68 65 72 65 20 69 | 73 20 61 20 63 61 72 72 | there i|s a carr|
|00005620| 69 65 72 20 28 6f 72 20 | 73 6f 66 74 77 61 72 65 |ier (or |software|
|00005630| 20 63 61 72 72 69 65 72 | 29 3b 0a 0a 5c 69 74 65 | carrier|);..\ite|
|00005640| 6d 20 7b 33 29 7d 20 68 | 61 6e 67 20 75 6e 74 69 |m {3)} h|ang unti|
|00005650| 6c 20 74 68 65 20 6c 69 | 6e 65 20 69 73 20 6e 6f |l the li|ne is no|
|00005660| 74 20 69 6e 20 75 73 65 | 20 6f 75 74 67 6f 69 6e |t in use| outgoin|
|00005670| 67 2c 20 75 6e 6c 65 73 | 73 20 74 68 69 73 20 69 |g, unles|s this i|
|00005680| 73 0a 74 68 65 20 6f 75 | 74 67 6f 69 6e 67 20 63 |s.the ou|tgoing c|
|00005690| 61 6c 6c 20 69 74 73 65 | 6c 66 3b 20 61 6e 64 0a |all itse|lf; and.|
|000056a0| 0a 5c 69 74 65 6d 20 7b | 34 29 7d 20 72 65 61 73 |.\item {|4)} reas|
|000056b0| 73 65 72 74 20 44 54 52 | 20 65 76 65 72 79 20 74 |sert DTR| every t|
|000056c0| 69 6d 65 20 74 68 65 20 | 73 74 61 74 65 20 6f 66 |ime the |state of|
|000056d0| 20 74 68 65 20 6c 69 6e | 65 20 63 68 61 6e 67 65 | the lin|e change|
|000056e0| 73 2e 0a 0a 5c 6e 6f 69 | 6e 64 65 6e 74 0a 49 6e |s...\noi|ndent.In|
|000056f0| 63 6f 6d 69 6e 67 20 61 | 6e 64 20 6f 75 74 67 6f |coming a|nd outgo|
|00005700| 69 6e 67 20 6f 70 65 6e | 73 20 61 72 65 20 64 69 |ing open|s are di|
|00005710| 73 74 69 6e 67 75 69 73 | 68 65 64 20 62 79 20 74 |stinguis|hed by t|
|00005720| 68 65 20 60 66 6c 61 67 | 27 20 61 72 67 75 6d 65 |he `flag|' argume|
|00005730| 6e 74 0a 74 6f 20 74 68 | 65 20 64 65 76 69 63 65 |nt.to th|e device|
|00005740| 20 6f 70 65 6e 20 72 6f | 75 74 69 6e 65 2e 20 20 | open ro|utine. |
|00005750| 54 68 69 73 20 69 73 20 | 61 6c 77 61 79 73 20 61 |This is |always a|
|00005760| 20 73 6d 61 6c 6c 20 6e | 6f 6e 6e 65 67 61 74 69 | small n|onnegati|
|00005770| 76 65 0a 69 6e 74 65 67 | 65 72 20 66 6f 72 20 6e |ve.integ|er for n|
|00005780| 6f 72 6d 61 6c 20 6f 70 | 65 6e 73 3b 20 62 75 74 |ormal op|ens; but|
|00005790| 20 74 68 65 20 6f 75 74 | 67 6f 69 6e 67 20 6f 70 | the out|going op|
|000057a0| 65 6e 20 72 6f 75 74 69 | 6e 65 20 63 61 6c 6c 73 |en routi|ne calls|
|000057b0| 20 74 68 65 0a 72 65 67 | 75 6c 61 72 20 6f 70 65 | the.reg|ular ope|
|000057c0| 6e 20 72 6f 75 74 69 6e | 65 20 77 69 74 68 20 61 |n routin|e with a|
|000057d0| 20 7b 5c 74 74 20 66 6c | 61 67 7d 20 6f 66 20 7b | {\tt fl|ag} of {|
|000057e0| 5c 74 74 20 2d 31 7d 2e | 0a 0a 54 68 65 20 66 6f |\tt -1}.|..The fo|
|000057f0| 75 72 74 68 20 70 6f 69 | 6e 74 20 69 73 20 69 6d |urth poi|nt is im|
|00005800| 70 6f 72 74 61 6e 74 20 | 62 65 63 61 75 73 65 20 |portant |because |
|00005810| 6f 66 20 61 20 63 68 61 | 6e 67 65 20 69 6e 20 74 |of a cha|nge in t|
|00005820| 68 65 20 63 6c 6f 73 65 | 0a 72 6f 75 74 69 6e 65 |he close|.routine|
|00005830| 2e 20 20 54 6f 20 65 6e | 73 75 72 65 20 74 68 61 |. To en|sure tha|
|00005840| 74 20 61 20 6d 6f 64 65 | 6d 20 68 61 6e 67 73 20 |t a mode|m hangs |
|00005850| 75 70 2c 20 69 74 20 69 | 73 20 6e 65 63 65 73 73 |up, it i|s necess|
|00005860| 61 72 79 20 74 6f 20 64 | 72 6f 70 0a 44 54 52 20 |ary to d|rop.DTR |
|00005870| 66 6f 72 20 61 74 20 6c | 65 61 73 74 20 24 31 5c |for at l|east $1\|
|00005880| 6f 76 65 72 32 24 20 73 | 65 63 6f 6e 64 2e 20 20 |over2$ s|econd. |
|00005890| 42 75 74 20 6d 6f 64 65 | 6d 73 20 77 69 6c 6c 20 |But mode|ms will |
|000058a0| 67 65 6e 65 72 61 6c 6c | 79 20 6e 6f 74 0a 61 6e |generall|y not.an|
|000058b0| 73 77 65 72 20 74 68 65 | 20 70 68 6f 6e 65 20 75 |swer the| phone u|
|000058c0| 6e 6c 65 73 73 20 44 54 | 52 20 69 73 20 61 73 73 |nless DT|R is ass|
|000058d0| 65 72 74 65 64 2e 20 20 | 53 6f 20 74 68 65 20 63 |erted. |So the c|
|000058e0| 6c 6f 73 65 20 72 6f 75 | 74 69 6e 65 0a 66 69 72 |lose rou|tine.fir|
|000058f0| 73 74 20 64 72 6f 70 73 | 20 44 54 52 20 61 6e 64 |st drops| DTR and|
|00005900| 20 6d 61 69 6e 74 61 69 | 6e 73 20 69 74 20 74 68 | maintai|ns it th|
|00005910| 61 74 20 77 61 79 20 66 | 6f 72 20 6f 6e 65 20 73 |at way f|or one s|
|00005920| 65 63 6f 6e 64 2c 20 74 | 68 65 6e 2c 20 69 66 0a |econd, t|hen, if.|
|00005930| 69 74 20 69 73 20 61 6e | 20 6f 75 74 67 6f 69 6e |it is an| outgoin|
|00005940| 67 20 63 6c 6f 73 65 2c | 20 74 75 72 6e 73 20 6f |g close,| turns o|
|00005950| 66 66 20 74 68 65 20 6f | 75 74 67 6f 69 6e 67 20 |ff the o|utgoing |
|00005960| 6d 6f 64 65 20 66 6c 61 | 67 2c 20 72 65 73 74 6f |mode fla|g, resto|
|00005970| 72 65 73 0a 74 68 65 20 | 73 6f 66 74 77 61 72 65 |res.the |software|
|00005980| 20 63 61 72 72 69 65 72 | 2c 20 61 6e 64 20 61 77 | carrier|, and aw|
|00005990| 61 6b 65 6e 73 20 61 6e | 79 20 68 75 6e 67 20 69 |akens an|y hung i|
|000059a0| 6e 63 6f 6d 69 6e 67 20 | 6f 70 65 6e 73 20 73 6f |ncoming |opens so|
|000059b0| 20 74 68 61 74 0a 74 68 | 65 79 20 6d 61 79 20 72 | that.th|ey may r|
|000059c0| 65 61 73 73 65 72 74 20 | 44 54 52 20 69 66 20 6e |eassert |DTR if n|
|000059d0| 65 63 65 73 73 61 72 79 | 2e 20 20 41 73 20 77 69 |ecessary|. As wi|
|000059e0| 74 68 20 74 68 65 20 6f | 70 65 6e 20 72 6f 75 74 |th the o|pen rout|
|000059f0| 69 6e 65 2c 20 61 6e 0a | 6f 75 74 67 6f 69 6e 67 |ine, an.|outgoing|
|00005a00| 20 63 6c 6f 73 65 20 69 | 73 20 64 69 73 74 69 6e | close i|s distin|
|00005a10| 67 75 69 73 68 65 64 20 | 62 79 20 69 74 73 20 7b |guished |by its {|
|00005a20| 5c 74 74 20 66 6c 61 67 | 7d 20 61 72 67 75 6d 65 |\tt flag|} argume|
|00005a30| 6e 74 2e 0a 0a 57 65 20 | 6d 61 64 65 20 6f 6e 65 |nt...We |made one|
|00005a40| 20 6d 6f 72 65 20 63 68 | 61 6e 67 65 20 74 6f 20 | more ch|ange to |
|00005a50| 74 68 65 20 64 72 69 76 | 65 72 2e 20 20 54 68 65 |the driv|er. The|
|00005a60| 20 6d 6f 64 65 6d 20 69 | 6e 74 65 72 72 75 70 74 | modem i|nterrupt|
|00005a70| 20 63 6f 64 65 2d 2d 2d | 6f 72 0a 69 6e 20 74 68 | code---|or.in th|
|00005a80| 65 20 63 61 73 65 20 6f | 66 20 74 68 65 20 5c 64 |e case o|f the \d|
|00005a90| 7a 2c 20 74 68 65 20 6d | 6f 64 65 6d 20 70 6f 6c |z, the m|odem pol|
|00005aa0| 6c 20 63 6f 64 65 2c 20 | 66 6f 72 20 74 68 65 72 |l code, |for ther|
|00005ab0| 65 20 61 72 65 20 6e 6f | 20 6d 6f 64 65 6d 0a 69 |e are no| modem.i|
|00005ac0| 6e 74 65 72 72 75 70 74 | 73 2d 2d 2d 6e 6f 77 20 |nterrupt|s---now |
|00005ad0| 63 68 65 63 6b 73 20 62 | 6f 74 68 20 74 68 65 20 |checks b|oth the |
|00005ae0| 72 65 61 6c 20 63 61 72 | 72 69 65 72 20 61 6e 64 |real car|rier and|
|00005af0| 20 74 68 65 20 73 6f 66 | 74 77 61 72 65 0a 63 61 | the sof|tware.ca|
|00005b00| 72 72 69 65 72 2e 20 20 | 45 69 74 68 65 72 20 77 |rrier. |Either w|
|00005b10| 69 6c 6c 20 61 6c 6c 6f | 77 20 74 68 65 20 6f 70 |ill allo|w the op|
|00005b20| 65 6e 20 74 6f 20 63 6f | 6d 70 6c 65 74 65 3b 20 |en to co|mplete; |
|00005b30| 62 75 74 20 69 66 20 74 | 68 65 20 72 65 61 6c 0a |but if t|he real.|
|00005b40| 63 61 72 72 69 65 72 20 | 69 73 20 61 73 73 65 72 |carrier |is asser|
|00005b50| 74 65 64 20 77 68 65 6e | 20 74 68 65 20 6c 69 6e |ted when| the lin|
|00005b60| 65 20 69 73 20 6f 70 65 | 6e 20 69 6e 20 6f 75 74 |e is ope|n in out|
|00005b70| 67 6f 69 6e 67 20 6d 6f | 64 65 2c 20 74 68 65 0a |going mo|de, the.|
|00005b80| 73 6f 66 74 77 61 72 65 | 20 63 61 72 72 69 65 72 |software| carrier|
|00005b90| 20 66 6f 72 20 74 68 61 | 74 20 6c 69 6e 65 20 69 | for tha|t line i|
|00005ba0| 73 20 63 6c 65 61 72 65 | 64 2e 20 20 54 68 69 73 |s cleare|d. This|
|00005bb0| 20 6d 65 61 6e 73 20 74 | 68 61 74 20 6f 6e 63 65 | means t|hat once|
|00005bc0| 0a 61 6e 20 6f 75 74 67 | 6f 69 6e 67 20 63 61 6c |.an outg|oing cal|
|00005bd0| 6c 20 63 6f 6d 70 6c 65 | 74 65 73 2c 20 74 68 65 |l comple|tes, the|
|00005be0| 20 6c 69 6e 65 20 69 73 | 20 75 73 61 62 6c 65 20 | line is| usable |
|00005bf0| 6f 6e 6c 79 20 75 6e 74 | 69 6c 20 74 68 65 0a 63 |only unt|il the.c|
|00005c00| 6f 6e 6e 65 63 74 69 6f | 6e 20 69 73 20 63 6c 6f |onnectio|n is clo|
|00005c10| 73 65 64 3a 20 20 57 68 | 65 6e 20 74 68 65 20 63 |sed: Wh|en the c|
|00005c20| 61 72 72 69 65 72 20 67 | 6f 65 73 20 61 77 61 79 |arrier g|oes away|
|00005c30| 2c 20 74 68 65 20 6c 69 | 6e 65 20 77 69 6c 6c 0a |, the li|ne will.|
|00005c40| 62 65 20 68 75 6e 67 20 | 75 70 2c 20 6a 75 73 74 |be hung |up, just|
|00005c50| 20 61 73 20 66 6f 72 20 | 61 20 6e 6f 72 6d 61 6c | as for |a normal|
|00005c60| 20 69 6e 63 6f 6d 69 6e | 67 20 6f 70 65 6e 2e 20 | incomin|g open. |
|00005c70| 20 54 68 69 73 20 61 6c | 6c 6f 77 73 20 6f 6e 65 | This al|lows one|
|00005c80| 0a 74 6f 20 70 65 72 66 | 6f 72 6d 20 63 61 6c 6c |.to perf|orm call|
|00005c90| 20 61 63 63 6f 75 6e 74 | 69 6e 67 2c 20 75 6e 64 | account|ing, und|
|00005ca0| 65 72 20 74 68 65 20 63 | 6f 6e 64 69 74 69 6f 6e |er the c|ondition|
|00005cb0| 20 74 68 61 74 20 74 68 | 65 20 6d 6f 64 65 6d 0a | that th|e modem.|
|00005cc0| 6e 65 76 65 72 20 61 6c | 6c 6f 77 73 20 63 61 6c |never al|lows cal|
|00005cd0| 6c 73 20 74 6f 20 62 65 | 20 70 6c 61 63 65 64 20 |ls to be| placed |
|00005ce0| 77 69 74 68 6f 75 74 20 | 68 61 76 69 6e 67 20 66 |without |having f|
|00005cf0| 69 72 73 74 20 6c 6f 73 | 74 20 63 61 72 72 69 65 |irst los|t carrie|
|00005d00| 72 3b 0a 61 6e 64 20 74 | 68 69 73 20 69 73 20 74 |r;.and t|his is t|
|00005d10| 72 75 65 20 6f 66 20 6d | 6f 73 74 20 6d 6f 64 65 |rue of m|ost mode|
|00005d20| 6d 73 2e 20 20 54 68 65 | 20 64 69 61 6c 2d 6f 75 |ms. The| dial-ou|
|00005d30| 74 20 70 72 6f 67 72 61 | 6d 20 77 6f 75 6c 64 20 |t progra|m would |
|00005d40| 62 65 0a 73 65 74 2d 67 | 72 6f 75 70 2d 49 44 20 |be.set-g|roup-ID |
|00005d50| 74 6f 20 61 20 67 72 6f | 75 70 20 74 68 61 74 20 |to a gro|up that |
|00005d60| 63 61 6e 20 6f 70 65 6e | 20 74 68 65 20 60 64 69 |can open| the `di|
|00005d70| 61 6c 27 20 64 65 76 69 | 63 65 73 2e 20 20 54 68 |al' devi|ces. Th|
|00005d80| 69 73 0a 70 72 6f 67 72 | 61 6d 20 77 6f 75 6c 64 |is.progr|am would|
|00005d90| 20 6f 70 65 6e 20 74 68 | 65 20 64 65 76 69 63 65 | open th|e device|
|00005da0| 2c 20 64 69 61 6c 20 74 | 68 65 20 6e 75 6d 62 65 |, dial t|he numbe|
|00005db0| 72 2c 20 77 61 69 74 20 | 66 6f 72 20 74 68 65 20 |r, wait |for the |
|00005dc0| 63 61 6c 6c 0a 74 6f 20 | 63 6f 6d 70 6c 65 74 65 |call.to |complete|
|00005dd0| 2c 20 61 6e 64 20 74 68 | 65 6e 20 6c 6f 67 20 74 |, and th|en log t|
|00005de0| 68 65 20 63 61 6c 6c 20 | 69 6e 20 61 20 66 69 6c |he call |in a fil|
|00005df0| 65 2e 20 20 41 73 20 6c | 6f 6e 67 20 61 73 20 74 |e. As l|ong as t|
|00005e00| 68 65 0a 70 72 6f 67 72 | 61 6d 20 77 65 72 65 20 |he.progr|am were |
|00005e10| 63 61 72 65 66 75 6c 20 | 6e 6f 74 20 74 6f 20 6c |careful |not to l|
|00005e20| 65 74 20 74 68 65 20 75 | 73 65 72 20 73 65 74 20 |et the u|ser set |
|00005e30| 7b 5c 74 74 20 4e 4f 48 | 55 50 7d 20 6d 6f 64 65 |{\tt NOH|UP} mode|
|00005e40| 20 6f 6e 0a 74 68 65 20 | 6c 69 6e 65 2c 20 6e 6f | on.the |line, no|
|00005e50| 20 66 75 72 74 68 65 72 | 20 63 61 6c 6c 73 20 63 | further| calls c|
|00005e60| 6f 75 6c 64 20 62 65 20 | 6d 61 64 65 2c 20 61 73 |ould be |made, as|
|00005e70| 20 74 68 65 20 66 69 6c | 65 20 64 65 73 63 72 69 | the fil|e descri|
|00005e80| 70 74 6f 72 0a 77 6f 75 | 6c 64 20 62 65 20 69 6e |ptor.wou|ld be in|
|00005e90| 76 61 6c 69 64 61 74 65 | 64 20 61 6e 64 20 74 68 |validate|d and th|
|00005ea0| 65 20 70 72 6f 67 72 61 | 6d 20 77 6f 75 6c 64 20 |e progra|m would |
|00005eb0| 62 65 20 73 65 6e 74 20 | 61 20 7b 5c 74 74 20 53 |be sent |a {\tt S|
|00005ec0| 49 47 48 55 50 7d 0a 73 | 69 67 6e 61 6c 20 61 73 |IGHUP}.s|ignal as|
|00005ed0| 20 73 6f 6f 6e 20 61 73 | 20 74 68 65 20 63 6f 6e | soon as| the con|
|00005ee0| 6e 65 63 74 69 6f 6e 20 | 77 65 72 65 20 62 72 6f |nection |were bro|
|00005ef0| 6b 65 6e 2e 0a 0a 28 57 | 65 20 61 63 74 75 61 6c |ken...(W|e actual|
|00005f00| 6c 79 20 6d 61 64 65 20 | 61 6e 6f 74 68 65 72 20 |ly made |another |
|00005f10| 63 68 61 6e 67 65 20 74 | 6f 20 74 68 65 20 5c 64 |change t|o the \d|
|00005f20| 7a 7a 5c 20 64 72 69 76 | 65 72 2e 20 20 7b 5c 74 |zz\ driv|er. {\t|
|00005f30| 74 20 4d 44 4d 42 55 46 | 7d 0a 6d 6f 64 65 2c 20 |t MDMBUF|}.mode, |
|00005f40| 77 68 65 72 65 69 6e 20 | 63 61 72 72 69 65 72 20 |wherein |carrier |
|00005f50| 74 72 61 6e 73 69 74 69 | 6f 6e 73 20 61 63 74 20 |transiti|ons act |
|00005f60| 61 73 20 66 6c 6f 77 20 | 63 6f 6e 74 72 6f 6c 2c |as flow |control,|
|00005f70| 20 6e 6f 77 20 77 6f 72 | 6b 73 0a 6f 6e 20 5c 64 | now wor|ks.on \d|
|00005f80| 7a 20 73 20 61 73 20 77 | 65 6c 6c 20 61 73 20 5c |z s as w|ell as \|
|00005f90| 64 68 20 73 2e 20 20 54 | 68 69 73 20 69 73 2c 20 |dh s. T|his is, |
|00005fa0| 68 6f 77 65 76 65 72 2c | 20 6f 66 20 6c 69 6d 69 |however,| of limi|
|00005fb0| 74 65 64 20 75 73 65 66 | 75 6c 6e 65 73 73 2c 0a |ted usef|ulness,.|
|00005fc0| 61 73 20 74 68 65 20 5c | 64 7a 7a 5c 20 6d 6f 64 |as the \|dzz\ mod|
|00005fd0| 65 6d 20 73 74 61 74 75 | 73 20 69 73 20 6f 6e 6c |em statu|s is onl|
|00005fe0| 79 20 70 6f 6c 6c 65 64 | 20 6f 6e 63 65 20 65 76 |y polled| once ev|
|00005ff0| 65 72 79 20 73 65 63 6f | 6e 64 3b 20 61 74 20 31 |ery seco|nd; at 1|
|00006000| 32 30 30 0a 62 61 75 64 | 2c 20 75 70 20 74 6f 20 |200.baud|, up to |
|00006010| 31 32 30 20 63 68 61 72 | 61 63 74 65 72 73 20 6d |120 char|acters m|
|00006020| 61 79 20 62 65 20 73 65 | 6e 74 20 61 66 74 65 72 |ay be se|nt after|
|00006030| 20 61 20 63 61 72 72 69 | 65 72 20 64 72 6f 70 20 | a carri|er drop |
|00006040| 62 65 66 6f 72 65 0a 74 | 72 61 6e 73 6d 69 73 73 |before.t|ransmiss|
|00006050| 69 6f 6e 20 69 73 20 73 | 75 73 70 65 6e 64 65 64 |ion is s|uspended|
|00006060| 2c 20 61 6e 64 20 61 74 | 20 39 36 30 30 20 62 61 |, and at| 9600 ba|
|00006070| 75 64 2c 20 75 70 20 74 | 6f 20 39 36 30 20 63 68 |ud, up t|o 960 ch|
|00006080| 61 72 61 63 74 65 72 73 | 0a 63 6f 75 6c 64 20 63 |aracters|.could c|
|00006090| 6f 6e 63 65 69 76 61 62 | 6c 79 20 62 65 20 73 65 |onceivab|ly be se|
|000060a0| 6e 74 2e 20 20 54 68 65 | 20 6c 61 63 6b 20 6f 66 |nt. The| lack of|
|000060b0| 20 61 20 6d 6f 64 65 6d | 20 69 6e 74 65 72 72 75 | a modem| interru|
|000060c0| 70 74 20 69 73 20 6f 6e | 65 20 6f 66 0a 6d 61 6e |pt is on|e of.man|
|000060d0| 79 20 70 72 6f 62 6c 65 | 6d 73 20 77 69 74 68 20 |y proble|ms with |
|000060e0| 5c 64 7a 20 73 2c 20 61 | 6e 64 20 63 61 6e 6e 6f |\dz s, a|nd canno|
|000060f0| 74 20 74 72 75 6c 79 20 | 62 65 20 63 6f 72 72 65 |t truly |be corre|
|00006100| 63 74 65 64 20 69 6e 20 | 73 6f 66 74 77 61 72 65 |cted in |software|
|00006110| 2e 29 0a 0a 25 20 4f 6b | 2e 20 20 53 75 6d 6d 61 |.)..% Ok|. Summa|
|00006120| 72 79 3a 0a 0a 54 68 65 | 73 65 20 6b 65 72 6e 65 |ry:..The|se kerne|
|00006130| 6c 20 63 68 61 6e 67 65 | 73 20 68 61 76 65 20 61 |l change|s have a|
|00006140| 6c 6c 6f 77 65 64 20 75 | 73 20 74 6f 20 6d 61 6b |llowed u|s to mak|
|00006150| 65 20 67 72 65 61 74 65 | 72 20 75 73 65 2c 20 77 |e greate|r use, w|
|00006160| 69 74 68 20 6d 6f 72 65 | 0a 65 61 73 65 2c 20 6f |ith more|.ease, o|
|00006170| 66 20 6f 75 72 20 65 78 | 69 73 74 69 6e 67 20 64 |f our ex|isting d|
|00006180| 69 61 6c 65 72 20 72 65 | 73 6f 75 72 63 65 73 2e |ialer re|sources.|
|00006190| 20 20 54 68 65 20 61 75 | 74 6f 6d 61 74 69 63 20 | The au|tomatic |
|000061a0| 6c 6f 63 6b 69 6e 67 20 | 68 61 73 0a 65 6c 69 6d |locking |has.elim|
|000061b0| 69 6e 61 74 65 64 20 61 | 6c 6c 20 70 72 6f 74 6f |inated a|ll proto|
|000061c0| 63 6f 6c 20 65 72 72 6f | 72 73 20 74 68 61 74 20 |col erro|rs that |
|000061d0| 68 61 76 65 20 70 6c 61 | 67 75 65 64 20 6f 74 68 |have pla|gued oth|
|000061e0| 65 72 20 73 79 73 74 65 | 6d 73 20 69 6e 0a 74 68 |er syste|ms in.th|
|000061f0| 65 20 70 61 73 74 2e 20 | 20 41 6e 64 20 77 65 20 |e past. | And we |
|00006200| 65 76 65 6e 20 6c 6f 67 | 20 6f 75 74 67 6f 69 6e |even log| outgoin|
|00006210| 67 20 63 61 6c 6c 73 2c | 20 74 68 6f 75 67 68 20 |g calls,| though |
|00006220| 77 65 20 64 6f 20 6e 6f | 74 20 63 68 61 72 67 65 |we do no|t charge|
|00006230| 0a 66 6f 72 20 74 68 65 | 6d 20 6f 72 20 6f 74 68 |.for the|m or oth|
|00006240| 65 72 77 69 73 65 20 72 | 65 73 74 72 69 63 74 20 |erwise r|estrict |
|00006250| 74 68 65 6d 2e 0a 0a 25 | 20 63 6c 65 61 6e 20 75 |them...%| clean u|
|00006260| 70 0a 0a 5c 76 73 6b 69 | 70 2e 35 63 6d 0a 5c 6c |p..\vski|p.5cm.\l|
|00006270| 69 6e 65 7b 5c 69 74 20 | 41 63 6b 6e 6f 77 6c 65 |ine{\it |Acknowle|
|00006280| 64 67 65 6d 65 6e 74 73 | 5c 68 66 69 6c 7d 0a 0a |dgements|\hfil}..|
|00006290| 43 72 65 64 69 74 20 69 | 73 20 64 75 65 20 4a 6f |Credit i|s due Jo|
|000062a0| 65 20 50 61 6c 6c 61 73 | 2c 20 42 6f 62 20 4b 69 |e Pallas|, Bob Ki|
|000062b0| 72 62 79 2c 20 61 6e 64 | 20 46 72 65 64 20 42 6c |rby, and| Fred Bl|
|000062c0| 6f 6e 64 65 72 2c 20 77 | 68 6f 20 77 6f 72 6b 65 |onder, w|ho worke|
|000062d0| 64 0a 77 69 74 68 20 6d | 65 20 6f 6e 20 6f 75 72 |d.with m|e on our|
|000062e0| 20 6f 72 69 67 69 6e 61 | 6c 20 69 6d 70 6c 65 6d | origina|l implem|
|000062f0| 65 6e 74 61 74 69 6f 6e | 20 66 6f 72 20 56 36 20 |entation| for V6 |
|00006300| 61 6e 64 20 34 2e 31 7b | 5c 74 65 6e 63 73 63 20 |and 4.1{|\tencsc |
|00006310| 62 73 64 7d 0a 5c 55 6e | 69 78 2e 20 20 54 68 69 |bsd}.\Un|ix. Thi|
|00006320| 73 20 77 6f 72 6b 20 77 | 61 73 20 6e 6f 20 64 6f |s work w|as no do|
|00006330| 75 62 74 20 69 6e 64 69 | 72 65 63 74 6c 79 20 73 |ubt indi|rectly s|
|00006340| 75 70 70 6f 72 74 65 64 | 20 62 79 20 73 65 76 65 |upported| by seve|
|00006350| 72 61 6c 0a 67 6f 76 65 | 72 6e 6d 65 6e 74 20 67 |ral.gove|rnment g|
|00006360| 72 61 6e 74 73 20 61 6e | 64 20 6f 74 68 65 72 20 |rants an|d other |
|00006370| 6d 69 73 64 69 72 65 63 | 74 65 64 20 72 65 73 65 |misdirec|ted rese|
|00006380| 61 72 63 68 20 66 75 6e | 64 73 2e 20 20 41 6c 6c |arch fun|ds. All|
|00006390| 20 74 68 65 0a 65 72 72 | 6f 72 73 20 69 6e 20 74 | the.err|ors in t|
|000063a0| 68 69 73 20 64 6f 63 75 | 6d 65 6e 74 2c 20 68 6f |his docu|ment, ho|
|000063b0| 77 65 76 65 72 2c 20 73 | 68 6f 75 6c 64 20 62 65 |wever, s|hould be|
|000063c0| 20 63 72 65 64 69 74 65 | 64 20 6f 6e 6c 79 20 74 | credite|d only t|
|000063d0| 6f 20 6d 79 73 65 6c 66 | 2e 0a 0a 5c 62 79 65 0a |o myself|...\bye.|
|000063e0| 20 61 62 6f 75 74 20 54 | 48 49 53 20 74 69 74 6c | about T|HIS titl|
|000063f0| 65 21 20 20 43 61 74 63 | 68 79 2c 20 6e 6f 3f 0a |e! Catc|hy, no?.|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.