$ od -c -N 50000 [phylum]<LISP>Lyric>Lispusers>FTPSERVER-MULTI-CONNECTIONS.TEDIT!1 0000000 X E R O X \t F T P S E R V E R - 0000020 M U L T I - C O N N E C T I O N 0000040 S \r 2 \r \r 4 \r \r 1 \r \r F T P S E 0000060 R V E R - M U L T I - C O N N 0000100 E C T I O N S \r 1 \r \r 4 \r \r B y 0000120 : M a t t H e f f r o n 0000140 ( B E C . H E F F R O N @ E C L 0000160 A . U S C . E D U ) \r R e q u i 0000200 r e s : F T P S E R V E R , 0000220 F T P S E R V E R P A T C H a 0000240 n d D P U P F T P P A T C H \r 0000260 I N T R O D U C T I O N \r T h i 0000300 s p a c k a g e ( a c t u a 0000320 l l y a c o m p l i m e n t 0000340 a r y p a i r o f f i l 0000360 e s ) e x t e n d s t h e 0000400 c a p a b i l i t i e s o f 0000420 t h e L i s p L i b r a r y 0000440 F T P S E R V E R p a c k a 0000460 g e t o s u p p o r t m u 0000500 l t i p l e s i m u l t a n e 0000520 o u s c o n n e c t i o n s 0000540 b e t w e e n X e r o x 1 1 0000560 x x s e r i e s A I w o r 0000600 k s t a t i o n s . I t a 0000620 l s o i n c l u d e s R o n 0000640 C l a r k e ' s f i x e s 0000660 f o r G E T F I L E I N F O 0000700 f r o m a n F T P S E R V E 0000720 R . \r I N S T A L L A T I O N \r 0000740 T o i n s t a l l t h i s 0000760 p a c k a g e , l o a d t h 0001000 e F T P S E R V E R P A T C H 0001020 . L C O M f i l e o n t h 0001040 e 1 1 x x m a c h i n e ( s 0001060 ) t h a t a r e t o b e 0001100 s e r v e r s ( t h i s w 0001120 i l l l o a d F T P S E R V 0001140 E R i f i t i s n o t 0001160 a l r e a d y l o a d e d ) . 0001200 T h e n l o a d t h e 0001220 D P U P F T P P A T C H . L C O 0001240 M f i l e o n a n y o f 0001260 t h e 1 1 x x m a c h i n 0001300 e s t h a t a r e t o b 0001320 e c l i e n t s o f t h e 0001340 s e s e r v e r s . Y o u 0001360 m u s t s e t t h e v a 0001400 l u e o f I L : * F T P . N 0001420 E G O T I A T E D . C O N N E C 0001440 T I O N . H O S T S * o n e 0001460 a c h o f t h e c l i e n 0001500 t m a c h i n e s t o s p 0001520 e c i f y t h e s e r v e r 0001540 m a c h i n e s t h a t s 0001560 u p p o r t t h e F T P S E 0001600 R V E R P A T C H s y s t e m 0001620 o f m u l t i p l e s i m 0001640 u l t a n e o u s c o n n e c 0001660 t i o n s ( b e l o w ) . \r V 0001700 A R I A B L E S \r I L : * F T P 0001720 . N E G O T I A T E D . C O N N 0001740 E C T I O N . H O S T S * \t [ G 0001760 l o b a l V a r i a b l e ] \r 0002000 T h i s v a r i a b l e m u 0002020 s t b e s e t t o s p e 0002040 c i f y t h e s e r v e r 0002060 m a c h i n e s t h a t s u 0002100 p p o r t t h e F T P S E R 0002120 V E R P A T C H s y s t e m 0002140 o f m u l t i p l e s i m u 0002160 l t a n e o u s c o n n e c t 0002200 i o n s . I t s v a l u e 0002220 i s a l i s t o f P U 0002240 P h o s t n u m b e r s . 0002260 ( S p e c i f i c a l l y , 0002300 i t i s a l i s t o f 0002320 t h e v a l u e s o f ( C 0002340 A R ( B E S T P U P A D D R E 0002360 S S < S E R V E R 377 377 \0 357 $ 377 0002400 \0 H O S T 377 377 \0 357 $ 377 \0 N A M E 0002420 > ) ) f o r e a c h o f 0002440 t h e s e r v e r m a c h i 0002460 n e s . ) \r H O W I T W O R 0002500 K S \r T h i s p a c k a g e 0002520 m o d i f i e s t h e D P U 0002540 P F T P c o d e o f t h e 0002560 c l i e n t m a c h i n e s 0002600 , s o t h a t w h e n i 0002620 t i s t r y i n g t o o 0002640 p e n a n F T P c o n n e 0002660 c t i o n B S P s t r e a m 0002700 , i t f i r s t c h e c k 0002720 s t o s e e i f t h e 0002740 s e r v e r h o s t i s o 0002760 n e o f t h e I L : * F T 0003000 P . N E G O T I A T E D . C O N 0003020 N E C T I O N . H O S T S * , 0003040 a n d i f s o , i t s e 0003060 n d s a m e s s a g e t o 0003100 t h e m o d i f i e d F T 0003120 P S E R V E R o n t h a t 0003140 s y s t e m ( u s i n g P U 0003160 P t y p e \ P T . N E G O T 0003200 I A T E D . C O N N E C T I O N 0003220 ( = 1 2 8 ) o n P U P 0003240 s o c k e t \ P U P S O C K E 0003260 T . N E G O T I A T E D . C O N 0003300 N E C T I O N ( = 6 3 ) ) . 0003320 T h e s e r v e r m a c h 0003340 i n e c r e a t e s a s o 0003360 c k e t f o r t h i s c o 0003400 n n e c t i o n a n d s t a 0003420 r t s a s t a n d a r d F 0003440 T P S E R V E R l i s t e n e 0003460 r p r o c e s s o n t h i 0003500 s s o c k e t , a n d r e 0003520 t u r n s t h e s o c k e t 0003540 n u m b e r t o t h e c 0003560 l i e n t . ( T h e p r o 0003600 c e s s i s m o d i f i e d 0003620 s o i t w i l l g o a 0003640 w a y w h e n t h e c o n 0003660 n e c t i o n i s c l o s e 0003700 d i n s t e a d o f l i n 0003720 g e r i n g f o r e v e r . ) 0003740 T h e c l i e n t u s e 0003760 s t h e r e t u r n e d s 0004000 o c k e t n u m b e r f o r 0004020 t h e c o n n e c t i o n 0004040 i n s t e a d o f \ P U P 0004060 S O C K E T . F T P . I f 0004100 t h e s e r v e r i s N O 0004120 T o n I L : * F T P . N E G 0004140 O T I A T E D . C O N N E C T I 0004160 O N . H O S T S * , o r f a 0004200 i l s t o r e s p o n d w 0004220 i t h i n 1 0 s e c o n d s 0004240 w i t h t h e n e w s o 0004260 c k e t n u m b e r , t h e 0004300 n \ P U P S O C K E T . F T 0004320 P i s u s e d . W h e n 0004340 t h e n e g o t i a t e d 0004360 c o n n e c t i o n s e r v e 0004400 r i s s t a r t e d o n 0004420 t h e s e r v e r m a c h i 0004440 n e ( w i t h t h e i n c 0004460 a n t a t i o n ( F T P S E R 0004500 V E R ) w h i c h i s t h 0004520 e o r i g i n a l F T P S E 0004540 R V E R s t a r t u p ) , 0004560 i t a l s o w i l l s t a 0004600 r t u p a p e r m a n e n 0004620 t F T P S E R V E R l i s t 0004640 e n e r o n \ P U P S O C K 0004660 E T . F T P s o r e g u l a 0004700 r c o n n e c t i o n r e q 0004720 u e s t s c a n b e h a n 0004740 d l e d . \r A C K N O W L E D G 0004760 E M E N T S \r T h a n k s t o 0005000 T o m L i p k i s o f S 0005020 a v o i r f o r s u g g e s 0005040 t i n g t h i s s o r t o 0005060 f s c h e m e , a n d t o 0005100 R o n C l a r k e o f X 0005120 e r o x f o r h i s p a t 0005140 c h e s f o r G E T F I L E 0005160 I N F O . \0 \0 \0 \0 \0 003 ( L I S T 0005200 ( ( P A G E N I L ( P A P 0005220 E R S I Z E L E T T E R S T 0005240 A R T I N G P A G E # 9 6 ) 0005260 ( 0 0 6 1 2 7 9 2 ) ( ( 0005300 F O L I O N I L ( P A R A L 0005320 O O K S ( Q U A D C E N T E 0005340 R E D ) C H A R L O O K S ( 0005360 S U P E R S C R I P T 0 I N 0005400 V I S I B L E O F F S E L E 0005420 C T P O I N T O F F P R O T 0005440 E C T E D O F F S I Z E 1 0005460 0 F A M I L Y M O D E R N 0005500 O V E R L I N E O F F S T R 0005520 I K E O U T O F F U N D E R 0005540 L I N E O F F E X P A N S I 0005560 O N R E G U L A R S L O P E 0005600 R E G U L A R W E I G H T 0005620 M E D I U M I N V E R T E D 0005640 O F F U S E R I N F O N I L 0005660 S T Y L E N I L ) F O R M 0005700 A T I N F O N I L ) ( 1 7 4 0005720 3 6 2 8 8 3 6 ) N I L ) 0005740 ( H E A D I N G N I L ( H 0005760 E A D I N G T Y P E R U N N I 0006000 N G H E A D ) ( 8 4 7 4 4 0006020 5 2 8 3 6 ) N I L ) ( T E 0006040 X T N I L N I L ( 8 4 9 0006060 6 4 5 6 6 0 0 ) N I L ) ) 0006100 ) ( P A G E N I L ( P A P 0006120 E R S I Z E N I L . L E T 0006140 T E R ) ( 0 0 6 1 2 7 9 0006160 2 ) ( ( F O L I O N I L ( 0006200 P A R A L O O K S ( Q U A D 0006220 C E N T E R E D ) C H A R L O 0006240 O K S ( S U P E R S C R I P T 0006260 0 I N V I S I B L E O F F 0006300 S E L E C T P O I N T O F F 0006320 P R O T E C T E D O F F S 0006340 I Z E 1 0 F A M I L Y M O 0006360 D E R N O V E R L I N E O F 0006400 F S T R I K E O U T O F F 0006420 U N D E R L I N E O F F E X 0006440 P A N S I O N R E G U L A R 0006460 S L O P E R E G U L A R W E 0006500 I G H T M E D I U M I N V E 0006520 R T E D O F F U S E R I N F 0006540 O N I L S T Y L E N I L ) 0006560 F O R M A T I N F O N I L ) 0006600 ( 1 7 4 3 6 2 8 8 3 6 ) 0006620 N I L ) ( H E A D I N G N 0006640 I L ( H E A D I N G T Y P E 0006660 R U N N I N G H E A D ) ( 8 4 0006700 7 4 4 5 2 8 3 6 ) N I L 0006720 ) ( T E X T N I L N I L 0006740 ( 8 4 9 6 4 5 6 6 0 0 ) 0006760 N I L ) ) ) ( P A G E N I L 0007000 ( P A P E R S I Z E N I L 0007020 . L E T T E R ) ( 0 0 6 0007040 1 2 7 9 2 ) ( ( F O L I O 0007060 N I L ( P A R A L O O K S ( 0007100 Q U A D C E N T E R E D ) C 0007120 H A R L O O K S ( S U P E R S 0007140 C R I P T 0 I N V I S I B L 0007160 E O F F S E L E C T P O I N 0007200 T O F F P R O T E C T E D 0007220 O F F S I Z E 1 0 F A M I 0007240 L Y M O D E R N O V E R L I 0007260 N E O F F S T R I K E O U T 0007300 O F F U N D E R L I N E O 0007320 F F E X P A N S I O N R E G 0007340 U L A R S L O P E R E G U L 0007360 A R W E I G H T M E D I U M 0007400 I N V E R T E D O F F U S 0007420 E R I N F O N I L S T Y L E 0007440 N I L ) F O R M A T I N F O 0007460 N I L ) ( 1 7 4 3 6 2 8 0007500 8 3 6 ) N I L ) ( H E A D 0007520 I N G N I L ( H E A D I N G 0007540 T Y P E R U N N I N G H E A D 0007560 ) ( 8 4 7 4 4 5 2 8 3 6 0007600 ) N I L ) ( T E X T N I L 0007620 N I L ( 8 4 9 6 4 5 6 0007640 6 0 0 ) N I L ) ) ) ) ) \0 \0 \0 0007660 \0 \0 005 \0 \a \0 1 \0 \0 \0 \0 001 310 \0 \a \0 0007700 \0 \0 001 003 004 \0 \0 002 \0 \0 001 001 310 001 \0 \0 0007720 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0007740 \0 \0 \0 \0 \0 \0 \0 ( \0 \0 \0 \0 001 310 \0 \a 0007760 \0 \0 \0 001 002 004 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010000 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 ( 0010020 \0 \0 \0 \0 001 310 \0 \v \0 \0 \0 004 002 003 \0 \0 0010040 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010060 \0 \0 \0 \0 \0 \0 \0 ( \0 \0 \0 \0 001 310 \0 021 0010100 \0 \0 \0 004 002 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010120 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 ( 0010140 \0 212 \0 212 001 8 \0 006 \0 \0 \0 004 002 003 \0 \0 0010160 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010200 \0 \0 \0 \0 \0 \0 \0 ( \0 212 \0 212 001 8 \0 \0 0010220 \0 \0 \0 004 002 004 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010240 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 D 0010260 \0 \0 \0 \0 001 310 \0 \0 \0 \0 \0 \0 003 004 \0 \0 0010300 001 001 310 001 \0 \0 \0 \0 \0 \0 \0 \v P A G E 0010320 H E A D I N G \0 \v R U N N I N G 0010340 H E A D \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010360 \0 \0 \0 \0 \0 \0 \0 004 \0 \b \0 026 \0 \b T E 0010400 R M I N A L \0 \n \0 \0 \0 \0 \0 \0 \0 \0 0010420 \0 027 \0 \t H E L V E T I C A \0 \n \0 0010440 \0 \0 \0 \0 \0 \0 \0 \0 024 \0 006 M O D E R 0010460 N \0 \n \0 \0 \0 \0 \0 \0 002 \0 \0 024 \0 006 M 0010500 O D E R N \0 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 0010520 024 \0 006 M O D E R N \0 \f \0 \0 \0 \0 \0 0010540 \0 002 \0 \0 024 \0 006 M O D E R N \0 006 \0 0010560 \0 \0 \0 \0 \0 \0 \0 \0 024 \0 006 M O D E R 0010600 N \0 \n \0 \0 \0 \0 \0 \0 001 \0 \0 022 \0 004 L 0010620 O G O \0 030 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010640 \0 \0 002 \0 \a \0 \0 \0 005 \0 \0 \0 \0 \b \0 \0 0010660 \0 001 \0 \0 \0 \0 006 \0 \0 \0 034 \0 \0 \0 \0 004 0010700 \0 \0 \0 \0 \0 002 \0 \a \0 \0 \0 002 \0 001 \0 \v 0010720 H R U L E . G E T F N 001 \0 024 \0 006 0010740 M O D E R N \0 \n \0 \0 \0 \0 \0 \0 \0 \0 0010760 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 002 \0 0011000 006 \0 \0 \0 002 \0 001 \0 \v H R U L E . G 0011020 E T F N 001 \0 024 \0 006 M O D E R N \0 0011040 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 0011060 \0 004 \0 \0 \0 \0 \0 002 \0 006 \0 \0 \0 002 \0 001 0011100 \0 \v H R U L E . G E T F N 001 \0 024 0011120 \0 006 M O D E R N \0 \n \0 \0 \0 \0 \0 \0 0011140 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 0011160 002 \0 005 \0 \0 \0 035 \0 \0 \0 \0 005 \0 \0 \0 \0 0011200 \0 002 \0 005 \0 \0 \0 002 \0 001 \0 \v H R U L 0011220 E . G E T F N 001 \0 024 \0 006 M O D E 0011240 R N \0 \f \0 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 001 0011260 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 006 \0 \0 \0 0011300 002 \0 001 \0 \v H R U L E . G E T F N 0011320 001 \0 024 \0 006 M O D E R N \0 \f \0 \0 \0 0011340 \0 \0 \0 002 \0 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0 0011360 \0 \0 \0 002 \0 004 \0 \0 \0 - \0 \0 \0 \0 004 \0 0011400 \0 \0 \0 \0 002 \0 003 \0 \0 \0 5 \0 \0 \0 \0 004 0011420 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 \f \0 \0 \0 \0 0011440 003 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 002 0011460 \0 002 \0 \0 001 026 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 0011500 002 \0 002 \0 \0 \0 \r \0 \0 \0 \0 003 \0 \0 \0 \0 0011520 \0 002 \0 002 \0 \0 001 337 \0 \0 \0 \0 004 \0 \0 \0 0011540 \0 \0 002 \0 002 \0 \0 \0 \n \0 \0 \0 \0 003 \0 \0 0011560 \0 \0 \0 002 \0 001 \0 \0 \0 $ \0 \0 \0 \0 004 \0 0011600 \0 \0 001 \0 \0 \0 \0 002 \0 \0 \0 022 \0 \0 \0 \0 0011620 004 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 336 \0 \0 \0 0011640 \0 004 \0 \0 \0 025 \0 \0 \0 \0 001 \0 \0 \0 \a \0 0011660 \0 \0 \0 004 \0 \0 \0 005 \0 \0 002 \0 004 \0 \0 \0 0011700 006 \0 \0 \0 \0 004 \0 \0 \0 005 \0 \0 002 \0 004 \0 0011720 \0 \0 \a \0 \0 \0 \0 004 \0 \0 \0 002 \0 \0 \0 \0 0011740 001 \0 \0 \0 # \0 \0 \0 \0 004 \0 \0 \0 \0 \0 002 0011760 \0 002 \0 \0 \0 \r \0 \0 \0 \0 003 \0 \0 \0 \0 \0 0012000 002 \0 002 \0 \0 003 366 \0 \0 \0 \0 004 \0 \0 \0 \v 0012020 \0 \0 \0 \0 001 \0 \0 \0 D \0 \0 \0 \0 004 \0 \0 0012040 \0 \t \0 \0 \0 \0 \a \0 \0 \0 U \0 \0 \0 \0 004 0012060 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 021 \0 \0 \0 \0 0012100 003 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 ~ \0 \0 \0 0012120 \0 004 \0 \0 \n u \0 ? z 272 0012132