$ od -c -N 50000 [Indigo]<Alto-1822>Comm>Telnet.dm!1 0000000 377 \0 \0 T e l n e t . m e s a \0 376 0000020 001 \0 A 033 - - T e l n e t . m e s 0000040 a \r - - L S t e w a r t A u g 0000060 u s t 1 7 , 1 9 7 8 1 0 0000100 : 4 2 A M \r \r D I R E C T O R 0000120 Y \r D i s p l a y D e f s : 0000140 F R O M " D i s p l a y D e 0000160 f s " U S I N G [ S e t S y 0000200 s t e m D i s p l a y S i z e ] 0000220 , \r I O D e f s : F R O M 0000240 " I O D e f s " , \r P r o 0000260 c e s s D e f s : F R O M " 0000300 P r o c e s s D e f s " U S I 0000320 N G [ Y i e l d ] , \r P u 0000340 p S t r e a m : F R O M " P 0000360 u p S t r e a m " , \r S t r 0000400 e a m : F R O M " S t r e a 0000420 m " , \r 376 001 \0 200 317 S t r e a 0000440 m D e f s : F R O M " S t r 0000460 e a m D e f s " ; \r \r T e l n e 0000500 t : P R O G R A M I M P O R 0000520 T S D i s p l a y D e f s , 0000540 I O D e f s , P u p S t r e a 0000560 m , S t r e a m , P r o c e 0000600 s s D e f s = \r \r B E G I 0000620 N O P E N I O D e f s , P 0000640 u p S t r e a m ; \r \r c h : C 0000660 H A R A C T E R ; \r m y W h y : 0000700 P u p S t r e a m . C l o s e 0000720 R e a s o n _ l o c a l C l 0000740 o s e ; \r w h y T e x t : A R 0000760 R A Y P u p S t r e a m . C l 0001000 o s e R e a s o n O F S T R 0001020 I N G _ \r [ 376 001 \0 p 364 \r 0001040 " l o c a l C l o s e " , " 0001060 r e m o t e C l o s e " , \r 0001100 " n o R o u t e T o N e t w o r 0001120 k " , " t r a n s m i s s i o 0001140 n T i m e o u t " , " r e m o 0001160 t e R e j e c t " ] ; \r \r l 0001200 i s t e n e r : P u p L i s t 0001220 e n e r _ N I L ; \r s o c N 0001240 u m : P u p S o c k e t I D 0001260 _ [ 0 , 1 ] ; - - t e l n 0001300 e t s o c k e t \r h e r a l d 0001320 : S T R I N G _ " M e s a 0001340 S e r v e r T e l n e t " ; 0001360 \r - - u s e r s t u f f \r s 0001400 : S T R I N G _ [ 8 0 ] ; 0001420 \r e s c a p e C h a r : C 376 001 0001440 \0 273 F H A R A C T E R _ 0 3 0001460 2 C ; - - c o n t r o l Z 0001500 \r a d d r e s s : P u p A d d 0001520 r e s s ; \r m y S o c k e t : 0001540 P u p S o c k e t I D _ [ 1 0001560 2 3 , 4 5 6 ] ; \r k e y S t r e 0001600 a m : S t r e a m D e f s . S 0001620 t r e a m H a n d l e _ G e 0001640 t I n p u t S t r e a m [ ] ; \r 0001660 m y S t r e a m : S t r e a m 0001700 . H a n d l e ; \r c l o s e d , 0001720 p l e a s e S t o p , e c h 0001740 o L F , s e r v e r S t o p , 0001760 c o n n e c t e d : B O O L 0002000 E A N ; \r r p : P R O C E S S 0002020 ; \r \r S e n d M a r k : P R O 0002040 C E D 376 001 \0 362 267 U R E [ b s : 0002060 S t r e a m . H a n d l e , m 0002100 a r k T y p e : I N T E G E R 0002120 , d a t a : I N T E G E R ] 0002140 = \r B E G I N \r S t r 0002160 e a m . S e t S S T [ b s , L O 0002200 O P H O L E [ m a r k T y p e ] 0002220 ] ; \r S t r e a m . P u t B 0002240 y t e [ b s , L O O P H O L E [ 0002260 d a t a ] ] ; \r S t r e a m 0002300 . S e n d N o w [ b s ] ; \r 0002320 E N D ; \r \r T a l k : P R O C 0002340 E D U R E = \r B E G I N \r 0002360 p l e a s e S t o p _ F 0002400 A L S E ; \r r p _ F O R 0002420 K R e a d [ ] ; \r W r i t 0002440 e [ ] ; \r J 376 001 \0 020 217 O I N 0002460 r p ; \r E N D ; \r \r R e a 0002500 d : P R O C E D U R E = \r 0002520 B E G I N \r c : C H A R 0002540 A C T E R ; \r e a t B y t e 0002560 : B O O L E A N _ F A L S 0002600 E ; \r U N T I L p l e 0002620 a s e S t o p D O \r 0002640 E N A B L E B E G I N \r 0002660 S t r e a m . S S T C h 0002700 a n g e = > \r 0002720 B E G I N \r I F 0002740 s s t = 5 T H E N - - W 0002760 A R N I N G ! T h i s i s 0003000 d a n g e r o u s ! ! \r 0003020 B E G I N \r 0003040 S t r e a m 376 001 \0 0003060 344 3 . S e t S S T [ m y S t r e 0003100 a m , 6 ] ; \r 0003120 S t r e a m . S e n d N o w [ 0003140 m y S t r e a m ] ; \r 0003160 E N D ; \r 0003200 I F s s t = 1 T H E N \r 0003220 B E G I N \r 0003240 W r i t e C 0003260 h a r [ C R ] ; W r i t e L i n 0003300 e [ " ! S y n c h ! " ] ; \r 0003320 E N D ; \r 0003340 I F s s t = 6 T H 0003360 E N \r B E G 0003400 I N \r W r i 0003420 t e C h a r [ C R ] ; W r i t e 0003440 L i n e [ " ! T i m i n g M a r 0003460 k R 376 001 \0 221 A e p l y ! " ] ; \r 0003500 E N D ; \r 0003520 I F s s t I 0003540 N [ 2 . . 4 ] T H E N \r 0003560 B E G I N \r 0003600 W r i t e C h a 0003620 r [ C R ] ; W r i t e S t r i n 0003640 g [ " M a r k T y p e " ] ; 0003660 \r W r i t e 0003700 D e c i m a l [ s s t ] ; W r i 0003720 t e S t r i n g [ " , A r g u 0003740 m e n t = " ] ; \r 0003760 e a t B y t e _ T 0004000 R U E ; \r E 0004020 N D ; \r R E S U 0004040 M E ; \r E N D ; 0004060 \r 376 001 \0 006 A P u p S 0004100 t r e a m . S t r e a m C l o s 0004120 i n g = > \r B 0004140 E G I N \r p l e 0004160 a s e S t o p _ c l o s e d 0004200 _ T R U E ; \r 0004220 c o n n e c t e d _ F A L 0004240 S E ; \r m y W h 0004260 y _ w h y ; \r 0004300 E X I T ; \r E 0004320 N D ; \r S t r e a m 0004340 . T i m e O u t = > I F p 0004360 l e a s e S t o p T H E N E 0004400 X I T E L S E R E S U M E ; 0004420 \r E N D ; \r 0004440 c _ L O O P H O L E [ S t r 0004460 e a m . G e t B y t e [ 376 001 \0 364 0004500 373 m y S t r e a m ] ] ; \r 0004520 I F e a t B y t e T H E N 0004540 \r B E G I N \r 0004560 W r i t e D e c i m a l [ 0004600 L O O P H O L E [ c ] ] ; W r i 0004620 t e C h a r [ C R ] ; \r 0004640 e a t B y t e _ F A L S 0004660 E ; \r E N D \r 0004700 E L S E I F c # L F T H 0004720 E N W r i t e C h a r [ c ] ; 0004740 \r E N D L O O P ; \r 0004760 E N D ; \r \r W r i t e : P R O 0005000 C E D U R E = \r B E G I N 0005020 \r c : C H A R A C T E R ; 0005040 \r U N T I L p l e a s 0005060 e S t o p D O E N A B L E 0005100 P 376 001 \0 & 306 u p S t r e a m . S 0005120 t r e a m C l o s i n g = > \r 0005140 B E G I N \r 0005160 c l o s e d _ p l e a s 0005200 e S t o p _ T R U E ; \r 0005220 c o n n e c t e d _ 0005240 F A L S E ; \r m y W 0005260 h y _ w h y ; \r 0005300 E X I T ; \r E N D ; 0005320 \r I F N O T k e y S 0005340 t r e a m . e n d o f [ k e y S 0005360 t r e a m ] T H E N \r 0005400 B E G I N \r c 0005420 _ R e a d C h a r [ ] ; \r 0005440 I F c = e s c a p e C 0005460 h a r T H E N p l e a s e S 0005500 t o p _ 376 001 \0 \f 003 T R U E \r 0005520 E L S E \r 0005540 B E G I N \r 0005560 S t r e a m . P u t B y t e [ 0005600 m y S t r e a m , L O O P H O L 0005620 E [ c ] ] ; \r I 0005640 F c = C R A N D e c h o L 0005660 F T H E N S t r e a m . P u 0005700 t B y t e [ m y S t r e a m , L 0005720 O O P H O L E [ L F ] ] ; \r 0005740 S t r e a m . S e n 0005760 d N o w [ m y S t r e a m ] ; \r 0006000 E N D ; \r 0006020 E N D ; \r P r o c 0006040 e s s D e f s . Y i e l d [ ] ; 0006060 \r E N D L O O P ; \r 0006100 E N D ; \r \r E c h o : 376 001 \0 215 225 0006120 P R O C E D U R E [ b s : 0006140 S t r e a m . H a n d l e , r 0006160 e m o t e : P u p A d d r e s 0006200 s ] = \r B E G I N \r e 0006220 r r s t r : S T R I N G _ 0006240 [ 8 0 ] ; \r c : C H A R A 0006260 C T E R ; \r i : C A R D I 0006300 N A L ; \r e a t B y t e : 0006320 B O O L E A N _ F A L S E ; 0006340 \r - - M a i n l i n e o 0006360 f s e r v e r \r W r i t e 0006400 S t r i n g [ " C o n n e c t i 0006420 o n f r o m " ] ; \r A p 0006440 p e n d P u p A d d r e s s [ e 0006460 r r s t r , @ r e m o t e ] ; \r 0006500 W r i t e S t r i n g [ e r 0006520 376 001 \0 217 300 r s t r ] ; \r W r 0006540 i t e L i n e [ " a c c e p t 0006560 e d " ] ; \r B E G I N 0006600 E N A B L E P u p S t r e a m 0006620 . S t r e a m C l o s i n g = 0006640 > \r B E G I N \r 0006660 W r i t e S t r i n g [ 0006700 " C o n n e c t i o n w i t h 0006720 " ] ; \r A p p e n 0006740 d P u p A d d r e s s [ e r r s 0006760 t r , @ r e m o t e ] ; \r 0007000 W r i t e S t r i n g [ " 0007020 c l o s e d b e c a u s e . 0007040 . . " ] ; \r W r i 0007060 t e L i n e [ w h y T e x t [ w 0007100 h y ] ] ; \r b s . d 0007120 e l e t e 376 001 \0 ! o [ b s ] ; \r 0007140 G O T O S h o r t 0007160 L i f e ; \r E N D ; 0007200 \r F O R i I N [ 0 0007220 . . h e r a l d . l e n g t h ) 0007240 \r D O \r 0007260 S t r e a m . P u t B y t e [ b 0007300 s , L O O P H O L E [ h e r a l 0007320 d . t e x t [ i ] ] ] ; \r 0007340 E N D L O O P ; \r 0007360 S t r e a m . P u t B y t e [ b 0007400 s , L O O P H O L E [ C R ] ] ; 0007420 \r I F e c h o L F T 0007440 H E N S t r e a m . P u t B y 0007460 t e [ b s , L O O P H O L E [ L 0007500 F ] ] ; \r S t r e a m . 0007520 S e n d N o w [ b s 376 001 \0 266 353 ] 0007540 ; \r E N D ; \r \r U N 0007560 T I L s e r v e r S t o p D 0007600 O \r E N A B L E B E G 0007620 I N \r P u p S t r e a m 0007640 . S t r e a m C l o s i n g = 0007660 > \r B E G I N \r 0007700 W r i t e S t r i n g [ 0007720 " C o n n e c t i o n w i t h 0007740 " ] ; \r A p p e n 0007760 d P u p A d d r e s s [ e r r s 0010000 t r , @ r e m o t e ] ; \r 0010020 W r i t e S t r i n g [ " 0010040 c l o s e d b e c a u s e . 0010060 . . " ] ; \r W r i 0010100 t e L i n e [ w h y T e x t [ w 0010120 h y ] ] ; \r b s . 376 0010140 001 \0 > 354 d e l e t e [ b s ] ; \r 0010160 E X I T ; \r 0010200 E N D ; \r S t r e a 0010220 m . S S T C h a n g e = > \r 0010240 B E G I N \r 0010260 I F s s t = 5 T H E N 0010300 - - W A R N I N G ! T h i s 0010320 i s d a n g e r o u s ! ! \r 0010340 B E G I N \r 0010360 S t r e a m . S e t 0010400 S S T [ b s , 6 ] ; \r 0010420 S t r e a m . S e n d N o 0010440 w [ b s ] ; \r E 0010460 N D ; \r I F s s t 0010500 = 1 T H E N \r 0010520 B E G I N \r W r 0010540 i t e C 376 001 \0 341 232 h a r [ C R ] 0010560 ; W r i t e L i n e [ " ! S y n 0010600 c h ! " ] ; \r E 0010620 N D ; \r I F s s t 0010640 = 6 T H E N \r 0010660 B E G I N \r W r 0010700 i t e C h a r [ C R ] ; W r i t 0010720 e L i n e [ " ! T i m i n g M a 0010740 r k R e p l y ! " ] ; \r 0010760 E N D ; \r I 0011000 F s s t I N [ 2 . . 4 ] 0011020 T H E N \r B E 0011040 G I N \r W r i t 0011060 e C h a r [ C R ] ; W r i t e S 0011100 t r i n g [ " M a r k T y p e 0011120 " ] ; \r W r i 0011140 t e D e c i m a l 376 001 \0 274 033 [ s 0011160 s t ] ; W r i t e S t r i n g [ 0011200 " , A r g u m e n t = " ] 0011220 ; \r e a t B y t 0011240 e _ T R U E ; \r 0011260 E N D ; \r I F 0011300 s e r v e r S t o p T H E N 0011320 E X I T E L S E R E S U M E 0011340 ; \r E N D ; \r 0011360 S t r e a m . T i m e O u t 0011400 = > I F s e r v e r S t o p 0011420 T H E N E X I T E L S E 0011440 R E S U M E ; \r E N D ; 0011460 \r c _ L O O P H O L 0011500 E [ S t r e a m . G e t B y t e 0011520 [ b s ] ] ; \r I F e a 0011540 t B y t e T H E N \r 376 001 0011560 \0 4 271 B E G I N \r 0011600 W r i t e D e c i m a l [ L 0011620 O O P H O L E [ c ] ] ; W r i t 0011640 e C h a r [ C R ] ; \r 0011660 e a t B y t e _ F A L S E 0011700 ; \r E N D \r 0011720 E L S E \r B E G I N 0011740 \r I F c # L F T 0011760 H E N \r B E G I 0012000 N \r W r i t e C 0012020 h a r [ c ] ; \r 0012040 S t r e a m . P u t B y t e [ b 0012060 s , L O O P H O L E [ c ] ] ; \r 0012100 E N D ; \r 0012120 I F c = C R A N D e 0012140 c h o L F T H E N S t r e a 0012160 m . P 376 001 \0 201 j u t B y t e [ b 0012200 s , L O O P H O L E [ L F ] ] ; 0012220 \r S t r e a m . S e 0012240 n d N o w [ b s ] ; \r 0012260 E N D ; \r I F l i s 0012300 t e n e r = N I L T H E N E 0012320 X I T ; \r E N D L O O P ; \r 0012340 W r i t e L i n e [ " S e r 0012360 v e r d y i n g . . . " ] ; \r 0012400 b s . d e l e t e [ b s ] ; 0012420 \r E X I T S \r S h o 0012440 r t L i f e = > N U L L ; \r 0012460 E N D ; \r \r - - M a i n l i 0012500 n e c o d e \r \r D i s p l 0012520 a y D e f s . S e t S y s t e m 0012540 D i s p l a y S i z e [ 4 0 , 4 0012560 0 ] ; \r A d 376 001 \0 , 303 j u s 0012600 t B u f f e r P a r m s [ 3 0 , 0012620 2 6 6 ] ; \r c o n n e c t e 0012640 d _ F A L S E ; \r P u p 0012660 P a c k a g e M a k e [ ] ; \r 0012700 W r i t e C h a r [ C R ] ; 0012720 W r i t e L i n e [ " A l t o 0012740 M e s a T e l n e t " ] ; \r 0012760 D O \t - - l o o p u n t i 0013000 l s t o p p e d b y u s e 0013020 r t y p i n g q o r Q 0013040 ( l a s t c a s e b e l o w 0013060 ) . \r E N A B L E P u 0013100 p N a m e T r o u b l e = > \r 0013120 B E G I N \r 0013140 W r i t e S t r i n g [ " 0013160 . . . E r r o r : " ] 376 001 \0 0013200 2 312 ; \r W r i t e L 0013220 i n e [ e ] ; \r L O 0013240 O P ; \r E N D ; \r 0013260 W r i t e C h a r [ C R ] 0013300 ; W r i t e S t r i n g [ " # 0013320 " ] ; \r c h _ R e 0013340 a d C h a r [ ] ; \r S E 0013360 L E C T c h F R O M \r 0013400 ' c , ' C = > \r 0013420 B E G I N \r 0013440 I F c o n n e c t e d 0013460 T H E N \r 0013500 B E G I N \r 0013520 W r i t e S t r i n g [ " C o n 0013540 n e c t i o n a l r e a d y 0013560 o p e n t o : " ] ; \r 0013600 376 001 \0 240 S s . l e 0013620 n g t h _ 0 ; \r 0013640 A p p e n d P u p A d d 0013660 r e s s [ s , @ a d d r e s s ] 0013700 ; \r W r i t 0013720 e S t r i n g [ s ] ; \r 0013740 G O T O R e j e c 0013760 t ; \r E N D 0014000 ; \r W r i t e S 0014020 t r i n g [ " C o n n e c t i o 0014040 n t o " ] ; \r 0014060 R e a d I D [ s ! R u b o 0014100 u t = > G O T O R e j e c 0014120 t ] ; \r G e t P 0014140 u p A d d r e s s [ @ a d d r e 0014160 s s , s ] ; \r s 0014200 . l e n g t h 376 001 \0 277 n _ 0 0014220 ; \r A p p e n d 0014240 P u p A d d r e s s [ s , @ a d 0014260 d r e s s ] ; \r 0014300 W r i t e S t r i n g [ " ( . 0014320 . . = " ] ; \r 0014340 W r i t e S t r i n g [ s ] ; \r 0014360 W r i t e S t r 0014400 i n g [ " ) i s " ] ; \r 0014420 m y S t r e a m 0014440 _ P u p B y t e S t r e a m C 0014460 r e a t e [ m y S o c k e t , a 0014500 d d r e s s , S e c o n d s T o 0014520 T o c k s [ 1 ] \r 0014540 ! S t r e a m C l o s i n g 0014560 = > \r 0014600 B E G I N \r 376 001 \0 ` 0014620 - W r i t e L i n e 0014640 [ " i n c o m p l e t e " ] ; \r 0014660 W r i t 0014700 e S t r i n g [ " b e c a u 0014720 s e : " ] ; \r 0014740 W r i t e S t r i n g [ w 0014760 h y T e x t [ w h y ] ] ; \r 0015000 L O O P ; \r 0015020 E N D ] 0015040 ; \r W r i t e L 0015060 i n e [ " c o m p l e t e " ] ; 0015100 W r i t e C h a r [ C R ] ; \r 0015120 c o n n e c t e d 0015140 _ T R U E ; \r 0015160 S e n d M a r k [ m y S t r e 0015200 a m , 4 , 1 0 ] ; - - t e r m 0015220 i 376 001 \0 340 V n a l t y p e \r 0015240 S e n d M a r k [ 0015260 m y S t r e a m , 2 , 8 0 ] ; 0015300 - - l i n e w i d t h \r 0015320 S e n d M a r k [ m y 0015340 S t r e a m , 3 , 3 9 ] ; - - 0015360 s c r e e n h e i g h t \r 0015400 E X I T S \r 0015420 R e j e c t = > N U 0015440 L L ; \r E N D ; 0015460 \r ' d , ' D = > 0015500 \r B E G I N \r 0015520 W r i t e S t r 0015540 i n g [ " D i s c o n n e c t . 0015560 . . " ] ; \r m 0015600 y S t r e a m . d e l e t e [ m 0015620 y S t r e a 376 001 \0 203 < m ] ; \r 0015640 c o n n e c t e d 0015660 _ F A L S E ; \r 0015700 W r i t e S t r i n g [ " C 0015720 o n n e c t i o n C l o s e d 0015740 " ] ; \r E N D ; 0015760 \r ' e , ' E = > 0016000 \r B E G I N \r 0016020 W r i t e S t r 0016040 i n g [ " E s c a p e C h a r 0016060 a c t e r i s " ] ; \r 0016100 e s c a p e C h a r 0016120 _ R e a d C h a r [ ] ; \r 0016140 W r i t e C h a r [ 0016160 e s c a p e C h a r ] ; \r 0016200 E N D ; \r 0016220 ' l , ' L = > \r 376 001 \0 304 241 0016240 B E G I N \r 0016260 W r i t e S t r i n 0016300 g [ " L i n e f e e d E c h o 0016320 i s " ] ; \r 0016340 I F e c h o L F T H E N \r 0016360 B E G I N \r 0016400 W r i t e S t 0016420 r i n g [ " O f f " ] ; \r 0016440 e c h o L F _ 0016460 F A L S E ; \r 0016500 E N D \r E L S 0016520 E \r B E G I 0016540 N \r W r i t 0016560 e S t r i n g [ " O n " ] ; \r 0016600 e c h o L F 0016620 _ T R U E ; \r 0016640 376 001 \0 025 \t E N D ; \r 0016660 E N D ; \r ' 0016700 n , ' N = > \r 0016720 B E G I N \r 0016740 a d d r e s s : P u p A d d r 0016760 e s s ; \r s : 0017000 S T R I N G _ [ 8 0 ] ; \r 0017020 W r i t e S t r i 0017040 n g [ " N a m e l o o k u p 0017060 o f " ] ; \r R 0017100 e a d I D [ s ! R u b o u t 0017120 = > G O T O R e j e c t ] ; 0017140 \r G e t P u p A 0017160 d d r e s s [ @ a d d r e s s , 0017200 s ] ; \r s . l e 0017220 n g t h _ 0 ; \r 0017240 A p p 376 001 \0 B & e n d P u p 0017260 A d d r e s s [ s , @ a d d r e 0017300 s s ] ; \r W r i 0017320 t e S t r i n g [ " . . . = 0017340 " ] ; \r W r i t 0017360 e S t r i n g [ s ] ; \r 0017400 E X I T S \r 0017420 R e j e c t = > N U L L 0017440 ; \r E N D ; \r 0017460 ' q , ' Q = > \r 0017500 B E G I N \r 0017520 P u p P a c k a g e 0017540 D e s t r o y [ ] ; \r 0017560 W r i t e L i n e [ " Q u 0017600 i t " ] ; W r i t e C h a r [ 0017620 C R ] ; \r S T O 0017640 P ; \r 376 001 \0 250 { 0017660 P u p P a c k a g e M a k e [ ] 0017700 ; \r E N D ; \r 0017720 ' s , ' S = > \r 0017740 B E G I N \r 0017760 W r i t e S t r i n 0020000 g [ " S e r v e r T e l n e t 0020020 " ] ; \r I F 0020040 l i s t e n e r = N I L T H E 0020060 N \r B E G I 0020100 N \r s e r v 0020120 e r S t o p _ F A L S E ; \r 0020140 l i s t e n 0020160 e r _ C r e a t e P u p B y 0020200 t e S t r e a m L i s t e n e r 0020220 [ s o c N u m , E c h o , 0020240 S e c o n d s T o T o c k s [ 376 0020260 001 \0 022 017 3 ] ] ; \r 0020300 W r i t e S t r i n g [ " 0020320 O n " ] ; \r 0020340 E N D \r E L S E 0020360 \r B E G I N 0020400 \r s e r v e 0020420 r S t o p _ T R U E ; \r 0020440 D e s t r o y P 0020460 u p L i s t e n e r [ l i s t e 0020500 n e r ] ; \r 0020520 l i s t e n e r _ N I L ; \r 0020540 W r i t e S t r 0020560 i n g [ " O f f " ] ; \r 0020600 E N D ; \r 0020620 E N D ; \r ' ? 0020640 = > \r B E G 0020660 I N \r 376 001 \0 f x 0020700 W r i t e L i n e [ " C ( o n n 0020720 e c t ) , Q ( u i t ) , L ( 0020740 i n e f e e d E c h o O n / 0020760 O f f ) " ] ; \r 0021000 W r i t e L i n e [ " N ( a m e 0021020 l o o k u p ) , S ( e r v e 0021040 r O n / O f f ) , " ] ; \r 0021060 W r i t e L i n e [ 0021100 " D ( i s c o n n e c t ) , E 0021120 ( s c a p e C h a r i s ) " 0021140 ] ; \r E N D ; \r 0021160 E N D C A S E = > 0021200 N U L L ; \r I F 0021220 c o n n e c t e d T H E N \r 0021240 B E G I N \r 0021260 W r i t 376 001 \0 233 b e L 0021300 i n e [ " # " ] ; \r 0021320 T a l k [ ] ; \r 0021340 E N D ; \r P r 0021360 o c e s s D e f s . Y i e l d [ 0021400 ] ; \r E N D L O O P 0021420 ; \r E N D . 032 ( 1 7 9 2 ) \ 0021440 2 9 0 b 6 B 7 1 2 b 8 B 1 8 2 b 0021460 4 B 9 4 b 4 B 1 7 0 b 3 3 B 6 8 0021500 2 t 2 1 t 0 1 2 t 2 1 t 0 0021520 2 8 6 b 5 B 2 1 t 2 1 t 0 0021540 1 7 4 t 2 1 t 0 1 0 t 2 2 0021560 t 0 3 6 8 b 4 B 5 3 9 t 2 1 0021600 t 0 1 0 t 2 1 t 0 2 2 8 t 0021620 2 1 t 0 2 6 7 t 2 1 t 0 0021640 1 0 t 2 1 t 0 5 6 b 3 3 B 5 0021660 1 4 t 2 1 t 0 5 8 0 b 1 376 \0 0021700 223 004 3 B 1 1 9 8 t 2 1 t 0 0021720 1 6 t 2 2 t 0 8 8 5 t 2 1 0021740 t 0 \r 377 \0 \0 S r v r T n D e f s 0021760 . m e s a \0 376 \0 260 002 214 - - S r v 0022000 r T n D e f s . m e s a \r - - S 0022020 e r v e r t e l n e t w i t 0022040 h o l d s t y l e s t r e 0022060 a m h o o k s \r - - L S t e w 0022100 a r t A u g u s t 1 7 , 1 0022120 9 7 8 1 2 : 5 8 P M \r \r S 0022140 r v r T n D e f s : D E F I N 0022160 I T I O N S = \r B E G I N 0022200 \r S r v r T n : P R O G R 0022220 A M ; \r E N D . \r 032 ( 1 7 9 0022240 2 ) \ 1 0 0 b 1 0 B \r 377 \0 \0 S r 0022260 v r T n . m e s a \0 376 001 \0 ^ 336 - 0022300 - S r v r T n . m e s a \r - - S 0022320 e r v e r t e l n e t w i t 0022340 h o l d s t y l e s t r e 0022360 a m h o o k s \r - - C o p i e 0022400 s o u t p u t t o d i s p 0022420 l a y , t a k e s k e y b o 0022440 a r d i f a n y t h i n g 0022460 i s t h e r e \r - - L S t e w 0022500 a r t S e p t e m b e r 6 , 0022520 1 9 7 8 7 : 1 2 P M \r \r 0022540 D I R E C T O R Y \r I O D e 0022560 f s : F R O M " I O D e f s 0022600 " , \r P r o c e s s D e f s 0022620 : F R O M " P r o c e s s D 0022640 e f s " U S I N G [ D e t a 0022660 c h , S e t T i m e o u t , M 376 0022700 001 \0 274 230 s e c T o T i c k s ] , 0022720 \r P u p S t r e a m : F R 0022740 O M " P u p S t r e a m " , \r 0022760 S r v r T n D e f s : F R 0023000 O M " S r v r T n D e f s " , 0023020 \r S t r e a m : F R O M 0023040 " S t r e a m " , \r S t r e 0023060 a m D e f s : F R O M " S t 0023100 r e a m D e f s " ; \r \r S r v r 0023120 T n : M O N I T O R \r I M 0023140 P O R T S I O D e f s , P u 0023160 p S t r e a m , S t r e a m , 0023200 P r o c e s s D e f s \r E 0023220 X P O R T S S r v r T n D e f 0023240 s \r S H A R E S S t r e a 0023260 m D e f s = \r \r B E G I N O 0023300 P E N 376 001 \0 6 305 I O D e f s , 0023320 S t r e a m , S t r e a m D 0023340 e f s ; \r \r l i s t e n e r : 0023360 P u p S t r e a m . P u p L i s 0023400 t e n e r _ N I L ; \r s o c 0023420 N u m : P u p S t r e a m . P 0023440 u p S o c k e t I D _ [ 0 , 0023460 1 ] ; - - t e l n e t s o 0023500 c k e t \r h e r a l d : S T R 0023520 I N G _ " M e s a S e r v 0023540 e r T e l n e t " ; \r m y S t 0023560 r e a m : S t r e a m . H a n 0023600 d l e ; \r c l o s e d : B O O 0023620 L E A N _ T R U E ; \r e c h 0023640 o L F : B O O L E A N _ T 0023660 R U E ; \r c h a r s : B O O L 0023700 E A N _ F A L 376 001 \0 217 261 S E 0023720 ; \r o p e n , s e n d e r : C 0023740 O N D I T I O N ; \r t i m e L a 0023760 s t S e n t : I N T E G E R ; 0024000 \r c l o c k : P O I N T E R 0024020 T O I N T E G E R = L O O 0024040 P H O L E [ 4 3 0 B ] ; \r k e y 0024060 S t r e a m , d i s p l a y S 0024100 t r e a m : S t r e a m H a n 0024120 d l e ; \r \r m y S t r e a m O b 0024140 j e c t : S t r e a m O b j e 0024160 c t _ \r [ \r r e s e t 0024200 : R e s e t , \r g e t : 0024220 G e t , \r p u t b a c k : 0024240 P u t B a c k , \r p u t : 0024260 P u t , \r e n d o f : E n 0024300 d o f , \r d e s t r o y 376 001 0024320 \0 335 317 : D e s t r o y , \r 0024340 b o d y : O t h e r [ ] \r 0024360 ] ; \r \r R e s e t : P R O C E 0024400 D U R E [ o s : S t r e a m H 0024420 a n d l e ] = \r B E G I N 0024440 \r N U L L ; \r E N D ; \r 0024460 \r G e t : P R O C E D U R E [ 0024500 o s : S t r e a m H a n d l e 0024520 ] R E T U R N S [ U N S P E 0024540 C I F I E D ] = \r B E G I 0024560 N \r e a t B y t e : B O O 0024600 L E A N ; \r c : U N S P E 0024620 C I F I E D ; \r B E G I 0024640 N \r E N A B L E B E G 0024660 I N \r S S T C h a n g e 0024700 = > \r B E G I N \r 0024720 376 001 \0 v \0 I F s s 0024740 t = 5 T H E N - - W A R N 0024760 I N G ! T h i s i s d a 0025000 n g e r o u s ! ! \r 0025020 B E G I N \r 0025040 S e t S S T [ m y S t r e a m , 0025060 6 ] ; \r S e n d 0025100 N o w [ m y S t r e a m ] ; \r 0025120 E N D ; \r 0025140 I F s s t I N [ 2 . . 0025160 4 ] T H E N e a t B y t e 0025200 _ T R U E ; \r R E 0025220 S U M E ; \r E N D ; 0025240 \r P u p S t r e a m . S 0025260 t r e a m C l o s i n g = > \r 0025300 B E G I N \r 0025320 c l o s e d 376 001 \0 = M _ 0025340 T R U E ; \r W a i t 0025360 F o r O p e n [ ] ; \r 0025400 R E T R Y ; \r E N 0025420 D ; \r S t r e a m . T i 0025440 m e O u t = > R E S U M E ; 0025460 \r E N D ; \r I F 0025500 k e y S t r e a m . e n d o f 0025520 [ k e y S t r e a m ] T H E N 0025540 \r B E G I N \r 0025560 W a i t F o r O p e n [ ] 0025600 ; \r e a t B y t e 0025620 _ T R U E ; \r W H 0025640 I L E e a t B y t e D O \r 0025660 e a t B y t e _ 0025700 F A L S E ; \r 0025720 c _ G e t B y t e [ m 376 001 \0 0025740 255 273 y S t r e a m ] ; \r 0025760 E N D L O O P ; \r 0026000 R E T U R N [ c ] ; \r 0026020 E N D \r E L S E 0026040 R E T U R N [ k e y S t r e 0026060 a m . g e t [ k e y S t r e a m 0026100 ] ] ; \r E N D ; \r E 0026120 N D ; \r \r P u t B a c k : P R 0026140 O C E D U R E [ o s : S t r e 0026160 a m H a n d l e , t h i n g : 0026200 U N S P E C I F I E D ] = \r 0026220 B E G I N \r N U L L ; \r 0026240 E N D ; \r \r P u t : P R O 0026260 C E D U R E [ o s : S t r e a 0026300 m H a n d l e , t h i n g : 0026320 U N S P E C I F I E D ] = \r 0026340 B 376 001 \0 q 032 E G I N E N A B 0026360 L E P u p S t r e a m . S t r 0026400 e a m C l o s i n g = > \r 0026420 B E G I N \r c l o s 0026440 e d _ T R U E ; \r W 0026460 a i t F o r O p e n [ ] ; \r 0026500 R E T R Y ; \r E N D 0026520 ; \r c : C H A R A C T E R 0026540 ; \r d i s p l a y S t r e a 0026560 m . p u t [ d i s p l a y S t r 0026600 e a m , t h i n g ] ; \r W a 0026620 i t F o r O p e n [ ] ; \r P 0026640 u t B y t e [ m y S t r e a m , 0026660 t h i n g ] ; \r c h a r s 0026700 _ T R U E ; \r c _ t h 0026720 i n g ; \r I F c = C R A 0026740 N D e c h o 376 001 \0 362 > L F T 0026760 H E N P u t B y t e [ m y S t 0027000 r e a m , L O O P H O L E [ L F 0027020 ] ] ; \r I F c = C R T H 0027040 E N M y S e n d N o w [ ] ; \r 0027060 E N D ; \r \r E n d o f : P 0027100 R O C E D U R E [ o s : S t r 0027120 e a m H a n d l e ] R E T U R 0027140 N S [ B O O L E A N ] = \r 0027160 B E G I N \r R E T U R N [ 0027200 c l o s e d ] ; \r E N D ; \r 0027220 \r D e s t r o y : E N T R Y 0027240 P R O C E D U R E [ o s : S t 0027260 r e a m H a n d l e ] = \r 0027300 B E G I N \r m y S t r e a m 0027320 . d e l e t e [ m y S t r e a m 0027340 ] ; \r E N D ; \r \r M 376 001 \0 376 0027360 \t y S e n d N o w : E N T R Y 0027400 P R O C E D U R E = \r B 0027420 E G I N \r S e n d i t [ ] ; 0027440 \r E N D ; \r \r S e n d i t : 0027460 I N T E R N A L P R O C E D 0027500 U R E = \r B E G I N \r 0027520 S e n d N o w [ m y S t r e a m 0027540 ] ; \r c h a r s _ F A L 0027560 S E ; \r t i m e L a s t S e 0027600 n t _ c l o c k ^ ; \r E 0027620 N D ; \r \r S e n d O c c a s i o 0027640 n a l l y : E N T R Y P R O 0027660 C E D U R E = \r B E G I N 0027700 \r W H I L E N O T c l o 0027720 s e d D O \r W A I T 0027740 s e n d e r ; \r I F c 0027760 h 376 001 \0 374 ! a r s A N D ( c 0030000 l o c k ^ - t i m e L a s t S e 0030020 n t ) > 5 0 T H E N S e n d 0030040 i t [ ] ; \r E N D L O O 0030060 P ; \r E N D ; \r \r W a i t F 0030100 o r O p e n : E N T R Y P R 0030120 O C E D U R E = \r B E G I 0030140 N \r W H I L E c l o s e d 0030160 D O W A I T o p e n E N 0030200 D L O O P ; \r E N D ; \r \r S 0030220 e r v e r S t a r t : E N T R 0030240 Y P R O C E D U R E [ b s : 0030260 H a n d l e , r e m o t e : 0030300 P u p S t r e a m . P u p A d 0030320 d r e s s ] = \r B E G I N 0030340 \r i : C A R D I N A L ; \r 0030360 e a t B 376 001 \0 332 # y t e : 0030400 B O O L E A N _ F A L S E ; 0030420 \r - - M a i n l i n e o 0030440 f s e r v e r \r I F c l 0030460 o s e d T H E N \r B E 0030500 G I N E N A B L E P u p S t 0030520 r e a m . S t r e a m C l o s i 0030540 n g = > G O T O C l o s e 0030560 i t ; \r F O R i I N 0030600 [ 0 . . h e r a l d . l e n g 0030620 t h ) \r D O \r 0030640 P u t B y t e [ b s , L O 0030660 O P H O L E [ h e r a l d . t e 0030700 x t [ i ] ] ] ; \r E 0030720 N D L O O P ; \r P u t B 0030740 y t e [ b s , L O O P H O L E [ 0030760 C R ] ] ; \r I 376 001 \0 ' 303 0031000 F e c h o L F T H E N P u 0031020 t B y t e [ b s , L O O P H O L 0031040 E [ L F ] ] ; \r S e n d 0031060 N o w [ b s ] ; \r m y S 0031100 t r e a m _ b s ; \r 0031120 c l o s e d _ F A L S E ; \r 0031140 P r o c e s s D e f s . 0031160 D e t a c h [ F O R K S e n d 0031200 O c c a s i o n a l l y ] ; \r 0031220 B R O A D C A S T o p e 0031240 n ; \r E N D ; \r E X 0031260 I T S \r C l o s e i t 0031300 = > \r B E G I N \r 0031320 b s . d e l e t e [ b 0031340 s ] ; \r c l o s e d 0031360 _ T R U E ; \r E 0031400 376 001 \0 005 346 N D ; \r E N D ; \r 0031420 \r - - M a i n l i n e c o d e 0031440 \r W r i t e L i n e [ " S t 0031460 a r t i n g S e r v e r T e 0031500 l n e t " ] ; \r l i s t e n 0031520 e r _ P u p S t r e a m . C 0031540 r e a t e P u p B y t e S t r e 0031560 a m L i s t e n e r [ s o c N 0031600 u m , S e r v e r S t a r t , 0031620 P u p S t r e a m . S e c o n 0031640 d s T o T o c k s [ 3 ] ] ; \r 0031660 P r o c e s s D e f s . S e t 0031700 T i m e o u t [ @ o p e n , P r 0031720 o c e s s D e f s . M s e c T o 0031740 T i c k s [ 1 0 0 0 ] ] ; \r 0031760 P r o c e s s D e f s . S e t T 0032000 i m e o u 376 001 \0 k r t [ @ s e n 0032020 d e r , P r o c e s s D e f s . 0032040 M s e c T o T i c k s [ 1 0 0 0 0032060 ] ] ; \r k e y S t r e a m 0032100 _ I O D e f s . G e t I n p u 0032120 t S t r e a m [ ] ; \r d i s 0032140 p l a y S t r e a m _ I O D 0032160 e f s . G e t O u t p u t S t r 0032200 e a m [ ] ; \r I O D e f s . 0032220 S e t I n p u t S t r e a m [ @ 0032240 m y S t r e a m O b j e c t ] ; 0032260 \r I O D e f s . S e t O u t 0032300 p u t S t r e a m [ @ m y S t r 0032320 e a m O b j e c t ] ; \r W a 0032340 i t F o r O p e n [ ] ; \r E 0032360 N D . 032 ( 1 7 9 2 ) \ 3 9 2 b 6 0032400 B 6 5 9 b 5 B 5 6 b 376 \0 s 374 336 3 0032420 B 1 7 5 b 3 3 B 2 4 8 t 2 1 t 0032440 0 1 0 t 2 1 t 0 3 1 8 b 7 0032460 B 7 6 b 3 B 1 5 1 t 2 1 t 0 0032500 8 t 2 2 t 0 2 2 4 b 6 B 8 4 0032520 b 7 B 8 3 b 9 B 4 8 b 6 B 1 0 2 0032540 b 1 6 B 1 4 5 b 1 1 B 7 3 b 1 1 0032560 B 5 1 8 t 2 1 t 0 9 9 b 1 3 0032600 B \r 374 0032603