$ od -c -N 50000 [_CD8_]<pup>FTPSPEC.DM!2 0000000 377 \0 \0 F T P S p e c . b r a v o 0000020 \0 373 233 243 - 004 \0 \0 376 001 \0 + 002 H e a 0000040 d i n g : 032 q j k 4 0 ( 6 3 5 ) 0000060 \ g \r P u p F i l e T r a n 0000100 s f e r P r o t o c o l S p 0000120 e c i f i c a t i o n 023 5 t h 0000140 e d i t i o n 032 y 7 5 6 q k 4 0 0000160 \ b g 5 2 B \r P a g e N u m b 0000200 e r s : Y e s X : 5 2 7 0000220 Y : 1 0 . 5 " 032 q j k 4 0 0000240 \ g \r C o p y r i g h t X e r 0000260 o x C o r p o r a t i o n 1 0000300 9 8 2 , 1 9 8 3 032 z 1 8 6 9 7 0000320 l 3 0 3 3 y 4 5 c ( 1 2 7 0 ) \ 0000340 g \r X E R O X P a l o A l 0000360 t o R e s e a r c h C e n t 0000400 e r \r \r 032 z 1 9 0 5 0 y 7 0 2 e 0000420 1 0 j ( 6 3 5 ) \ f 2 g 5 376 001 \0 0000440 _ 357 f 0 2 b 2 5 B \r S e p t e 0000460 m b e r 2 9 , 1 9 8 3 ; 7 0000500 t h e d i t i o n 032 z 1 9 0 5 0000520 0 l 1 1 6 4 2 e 1 0 j \ g \r T o 0000540 : \t C o m m u n i c a t i o n 0000560 P r o t o c o l s \r \r F r o m : 0000600 \t J o h n S h o c h a n d 0000620 E d T a f t \r \r S u b j e c t 0000640 : \t P u p F i l e T r a n s 0000660 f e r P r o t o c o l S p e 0000700 c i f i c a t i o n 023 5 t h e 0000720 d i t i o n \r \r F i l e : \t < P 0000740 u p > F T P S p e c . p r e s s 0000760 032 z 1 9 0 5 0 e 1 0 j ( 0 , 5 2 0001000 9 2 ) \ i g 3 I 2 6 i 5 I 2 5 i 0001020 8 I 1 b 5 2 B 2 i 5 I \r 032 ( 6 3 0001040 5 ) 376 001 \0 205 \f \ g \r T h i s d 0001060 o c u m e n t r e p r e s e n 0001100 t s a n a t t e m p t t o 0001120 d e f i n e a s i m p l e 0001140 p r o t o c o l f o r t h 0001160 e m o v e m e n t o f f i 0001200 l e s a m o n g t h e m a 0001220 n y d i f f e r e n t c o m 0001240 p u t e r s c u r r e n t l y 0001260 c o n n e c t e d t o t h 0001300 e P A R C c o m m u n i c a 0001320 t i o n s n e t w o r k s . 0001340 032 z 1 8 6 9 7 e 1 0 j k 4 0 ( 0001360 1 2 7 0 ) \ g \r T h i s d o c 0001400 u m e n t p r o v i d e s a 0001420 g e n e r a l e x p l a n a 0001440 t i o n a n 376 001 \0 Z Z d o v 0001460 e r v i e w o f t h e f u 0001500 l l r a n g e o f t h e 0001520 F i l e T r a n s f e r P r 0001540 o t o c o l , a s w e l l 0001560 a s a s p e c i f i c a t i 0001600 o n f o r t h e p r o t o 0001620 c o l . S p e c i f i c 0001640 d e t a i l s o f t h e 0001660 a c t u a l F T P i m p l e 0001700 m e n t e d f o r M a x c 0001720 o r t h e A l t o m a y 0001740 b e f o u n d i n t h e 0001760 a p p r o p r i a t e d o c u 0002000 m e n t a t i o n . 032 z 1 8 6 9 0002020 7 e 1 0 j k 4 0 \ g \r A l l p 0002040 r e v i o u s v e r s 376 001 \0 307 0002060 361 i o n s o f t h i s m e 0002100 m o a r e n o w o b s o l 0002120 e t e . M a t e r i a l i 0002140 n a s m a l l f o n t c 0002160 o n c e r n s f a c i l i t i 0002200 e s w h o s e d e s i g n 0002220 i s i n c o m p l e t e a n 0002240 d w h i c h h a v e n e v 0002260 e r b e e n i m p l e m e n 0002300 t e d . 032 z 1 8 6 9 7 e 1 0 0002320 j k 4 0 \ g 6 8 f 1 1 0 f 0 G 0002340 8 6 g \r T h e d e v e l o p m 0002360 e n t a n d r e f i n e m e 0002400 n t o f t h e p r o t o c 0002420 o l h a v e b e n e f i t e 0002440 d g r e a t l y f r o m c 0002460 o 376 001 \0 254 325 m m e n t s a n d 0002500 i d e a s o r i g i n a l l 0002520 y p r o v i d e d b y B o 0002540 b M e t c a l f e , E d T 0002560 a f t , D a v i d B o g g s 0002600 , B i l l D u v a l l , B 0002620 o b S p r o u l l , a n d 0002640 o t h e r s ; a n d s u p p 0002660 l e m e n t e d b y l a t e 0002700 r e x p e r i e n c e i n 0002720 M e s a b y S m o k e y W 0002740 a l l a c e , J i m W h i t 0002760 e , a n d H a l M u r r a 0003000 y . 032 z 1 8 6 9 7 e 1 0 j k 4 0 0003020 \ g \r 1 . C o m p a n i o n 0003040 d o c u m e n t s 032 z 1 8 6 9 7 0003060 e 2 2 k 8 0 376 001 \0 203 207 \ b g \r B 0003100 a c k g r o u n d i n f o r m 0003120 a t i o n o n P u p a n d 0003140 B S P ( o n - l i n e v e 0003160 r s i o n s a r e a v a i l 0003200 a b l e o n m a n y p u b 0003220 l i c f i l e s e r v e r s 0003240 ) : 032 z 1 8 6 9 7 e 1 0 j k 4 0 0003260 \ g \r 023 B o b M e t c a l f e 0003300 a n d E d T a f t , \a \a 0003320 P u p S p e c i f i c a t i o 0003340 n ' ' , f i l e < P u p > P 0003360 u p S p e c . p r e s s . 032 z 1 0003400 8 6 9 7 l 3 7 0 4 e 1 0 j k 4 0 0003420 \ g \r 023 D . B o g g s , J . 0003440 S h o c h , E . T a f t , 0003460 a n d R . M e t 376 001 \0 202 357 0003500 c a l f e , \a \a P u p : a n 0003520 I n t e r n e t w o r k A r 0003540 c h i t e c t u r e ' ' , I E 0003560 E E T r a n s a c t i o n s 0003600 o n C o m m u n i c a t i o n 0003620 s , C O M - 2 8 4 , A p r 0003640 i l 1 9 8 0 , f i l e < P 0003660 u p > P u p P a p e r . p r e s 0003700 s . 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0003720 0 j k 4 0 \ g 8 6 i 3 5 I 2 f 1 0003740 3 f 0 \r D e t a i l e d d e 0003760 s c r i p t i o n o f p a r 0004000 t i c u l a r F T P i m p l 0004020 e m e n t a t i o n s : 032 z 1 8 0004040 6 9 7 e 1 0 j k 4 0 \ g \r 023 E d 0004060 T a f t , \a \a P U P F T P 023 0004100 376 001 \0 374 ( M a x c P u p F i 0004120 l e T r a n s f e r P r o g 0004140 r a m ' ' , f i l e < P u p 0004160 > P U P F T P . p r e s s . 032 z 0004200 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 4 0004220 0 \ g \r 023 D a v e B o g g s 0004240 a n d E d T a f t , \a \a B 0004260 C P L F T P P a c k a g e ' 0004300 ' , i n t h e A l t o S 0004320 u b s y s t e m s m a n u a l 0004340 o r f i l e < A l t o D o 0004360 c s > F T P P a c k a g e . t t 0004400 y . 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0004420 0 j k 4 0 \ g 5 4 i 1 5 I \r 023 J 0004440 i m W h i t e a n d H a l 0004460 M u r r a y , \a \a M e s a 0004500 F T P F 376 001 \0 \f 227 u n c t i o 0004520 n a l S p e c i f i c a t i o 0004540 n ' ' , f i l e < M e s a > 0004560 D o c > F T P . p r e s s . 032 z 0004600 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 4 0004620 0 \ g \r A r e l a t e d p r 0004640 o t o c o l : 032 z 1 8 6 9 7 e 1 0004660 0 j k 4 0 \ g \r 023 E d T a f t 0004700 , \a \a P u p M a i l T r a 0004720 n s f e r P r o t o c o l ' ' 0004740 , f i l e < P u p > M a i l 0004760 T r a n s f e r . p r e s s . 0005000 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j 0005020 k 4 0 \ g \r 2 . A s s u m p t 0005040 i o n s a n d b a s i c p 0005060 r i n c i p l e s 032 z 1 8 6 9 7 0005100 e 2 2 k 8 0 \ b g \r 376 001 \0 023 4 I 0005120 f y o u a r e r e a d i n 0005140 g t h i s d o c u m e n t , 0005160 i t i s a s s u m e d t 0005200 h a t y o u a r e f a m i 0005220 l i a r w i t h t h e c o 0005240 n t e n t s o f \a \a P u p 0005260 S p e c i f i c a t i o n ' ' 0005300 b y B o b M e t c a l f e 0005320 a n d E d T a f t . 032 z 1 8 0005340 6 9 7 e 1 0 j k 4 0 \ g \r W e 0005360 a r e t a l k i n g a b o u 0005400 t f i l e s t r a n s m i t 0005420 t e d f r o m o n e l o g 0005440 i c a l p r o c e s s t o 0005460 a n o t h e r l o g i c a l 0005500 p r o c e s s , a n d n o 376 0005520 001 \0 C % t n e c e s s a r i l 0005540 y f r o m o n e f i l e 0005560 s y s t e m t o a n o t h e 0005600 r f i l e s y s t e m . 0005620 I t i s p o s s i b l e , 0005640 f o r e x a m p l e , t o 0005660 g e n e r a t e a f i l e 0005700 \a o n t h e f l y ' w i t 0005720 h o n e p r o c e s s a n 0005740 d t h e n h a v e i t c 0005760 o n s u m e d b y a n o t h 0006000 e r p r o c e s s , w i t h 0006020 o u t i t e v e r r e s i 0006040 d i n g o n a p h y s i c 0006060 a l d i s k . 032 z 1 8 6 9 7 e 0006100 1 0 j k 4 0 \ g \r W e a r e 0006120 n o t 376 001 \0 R k d i s c u s s 0006140 i n g p a r t i c u l a r p 0006160 r o g r a m s w h i c h m i 0006200 g h t c h o s e t o u s e 0006220 t h e F i l e T r a n s f 0006240 e r P r o t o c o l , n o r 0006260 a r e w e c o n c e r n e 0006300 d h e r e w i t h i m p l 0006320 e m e n t a t i o n q u e s t 0006340 i o n s . P r o g r a m s 0006360 s u c h a s a F i l e 0006400 T r a n s f e r P r o g r a m 0006420 , a B C P L r e m o t e - 0006440 s t r e a m f a c i l i t y , 0006460 m a i l s y s t e m s , o 0006500 r a n a u t o m a t i c d 0006520 i s k u p d a t 376 001 \0 276 L e 0006540 p r o g r a m c a n m a k e 0006560 u s e o f t h e F i l e 0006600 T r a n s f e r P r o t o c 0006620 o l ; b u t t h a t i s 0006640 a m a t t e r o f c o n v 0006660 e n t i o n . 032 z 1 8 6 9 7 e 1 0006700 0 j k 4 0 \ g \r I t s h o u l 0006720 d b e p o s s i b l e t o 0006740 c o n s t r u c t a s i m 0006760 p l e f i l e t r a n s f e 0007000 r p r o t o c o l a s a 0007020 t h i n v e n e e r p l a c 0007040 e d o v e r t h e B y t e 0007060 S t r e a m P r o t o c o l 0007100 ( B S P ) . W h i l e t 0007120 h e m i x o f m a c h 376 001 0007140 \0 Y 272 i n e s a n d n e t w 0007160 o r k s i s v e r y h e t 0007200 e r o g e n e o u s , t h e s 0007220 e d i f f e r e n c e s a r 0007240 e s u b s u m e d b y t h 0007260 e d e f i n i t i o n o f 0007300 P u p s a n d t h e B y t 0007320 e S t r e a m P r o t o c o 0007340 l . T h e B S P i s d 0007360 e s i g n e d t o p r o v i 0007400 d e \a \a . . . e r r o r - a 0007420 n d f l o w - c o n t r o l l 0007440 e d b y t e s t r e a m s 0007460 b e t w e e n c o o p e r a t 0007500 i n g p r o c e s s e s . ' ' 0007520 T h u s , t h e o n l y 0007540 p a 376 001 \0 343 h r t s o f t 0007560 h e \a o u t s i d e w o r l 0007600 d ' w h i c h t h e F T P 0007620 w i l l e v e r s e e 023 o 0007640 r u s e 023 a r e t h e f a 0007660 c i l i t i e s p r o v i d e 0007700 d b y t h e B S P . 032 z 1 0007720 8 6 9 7 e 1 0 j k 4 0 \ g \r T h 0007740 e F i l e T r a n s f e r 0007760 P r o t o c o l o n l y c o 0010000 m e s i n t o p l a y a f 0010020 t e r a B S P s t r e a m 0010040 h a s b e e n e s t a b l 0010060 i s h e d . T h a t i s , 0010100 a c t u a l p r o g r a m s 0010120 w i l l u s e t h e R e 0010140 n d e v o u s 376 001 \0 330 304 a n d 0010160 T e r m i n a t i o n P r o 0010200 t o c o l ( o r s o m e o 0010220 t h e r m e a n s ) t o e 0010240 s t a b l i s h a c o n n e 0010260 c t i o n b e t w e e n t w 0010300 o p o r t s . T h e F T 0010320 P d o e s n o t d e f i n 0010340 e t h i s m e c h a n i s m 0010360 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0010400 g \r O n e B S P c o n n e c 0010420 t i o n i s s u f f i c i e 0010440 n t f o r t r a n s m i t t 0010460 i n g a f i l e . U n l i 0010500 k e t h e A r p a n e t p 0010520 r o t o c o l , b o t h c o 0010540 m m a n d i n f o r m a 376 001 \0 0010560 u 216 t i o n a n d d a t a 0010600 p a s s t h r o u g h t h e 0010620 s a m e b i - d i r e c t i 0010640 o n a l B S P s t r e a m . 0010660 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 0010700 \r T h e t w o p a r t i e s 0010720 t o a f i l e t r a n s 0010740 f e r a r e n a m e d t h 0010760 e u s e r a n d t h e s 0011000 e r v e r : t h e u s e r 0011020 i n i t i a t e s a c t i o n 0011040 s a n d t h e s e r v e r 0011060 r e s p o n d s . A c t u 0011100 a l f i l e s , h o w e v e 0011120 r , m a y m o v e i n e 0011140 i t h e r d i r e c t i o n : 0011160 a 376 001 \0 313 l u s e r p r o 0011200 c e s s m a y t r y t o 0011220 s t o r e a f i l e u p o 0011240 n t h e s e r v e r s y s 0011260 t e m , o r t r y t o r 0011300 e t r i e v e a f i l e f 0011320 r o m t h e s e r v e r . 032 0011340 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 4 0011360 9 i 4 I 9 i 7 I 1 3 3 i 5 I 4 2 0011400 i 8 I \r T h e F i l e T r a 0011420 n s f e r P r o t o c o l g 0011440 e n e r a l l y p r e s c r i 0011460 b e s t h e b e h a v i o r 0011500 o f t h e s e r v e r p 0011520 r o c e s s ; t h e u s e r 0011540 p r o c e s s i s m e r e 0011560 l y o n e 376 001 \0 316 F t h a t 0011600 p r e s e n t s r e q u e s 0011620 t s t o t h e s e r v e r 0011640 i n a c c o r d a n c e w 0011660 i t h t h e s e r v e r ' s 0011700 d e s c r i b e d f o r m a 0011720 t , a n d f o l l o w s t 0011740 h e c o m m a n d / r e s p o 0011760 n s e s e q u e n c e . 0012000 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 0012020 \r 3 . O n t h e n a t u r 0012040 e o f f i l e s 032 z 1 8 6 9 0012060 7 e 2 2 k 8 0 \ b g \r I t i s 0012100 c o m m o n t o s a y t 0012120 h a t a f i l e i s m e 0012140 r e l y a c o l l e c t i o 0012160 n o f b i t s , b 376 001 \0 036 0012200 & u t t h a t i s , o f 0012220 c o u r s e , o v e r s i m 0012240 p l i f i e d . A f i l e 0012260 i s a c o l l e c t i o n 0012300 o f b i t s v i e w e d 0012320 i n a p a r t i c u l a r 0012340 w a y w i t h i n a s p e 0012360 c i f i e d c o n t e x t . 0012400 M u c h o f t h e w o r 0012420 k i n v o l v e d i n t r 0012440 a n s f e r r i n g f i l e s 0012460 f r o m o n e m a c h i n 0012500 e t o a n o t h e r o v e 0012520 r s o m e n u m b e r o f 0012540 d i f f e r e n t n e t w o 0012560 r k s i s t h e r e s u l 0012600 t 376 001 \0 257 272 o f a t t e m p 0012620 t i n g t o r e s o l v e 0012640 c o n f l i c t i n g c o n t 0012660 e x t u a l r e p r e s e n t 0012700 a t i o n s o f a f i l e 0012720 : 7 , 8 , o r 3 6 b i 0012740 t , A S C I I o r b i n a 0012760 r y , n a m i n g c o n v e 0013000 n t i o n s , C R o r E O 0013020 L , a d i n f i n i t u m . 0013040 032 z 1 8 6 9 7 e 1 0 j k 4 0 0013060 \ g 4 6 2 i 1 2 I \r I n a d d 0013100 i t i o n , s u c h c o n t 0013120 e x t u a l d i f f e r e n c 0013140 e s m a k e i t h a r d 0013160 t o a d d a n e w m a c 0013200 h i n e o 376 001 \0 \a 204 r d i f 0013220 f e r e n t n e t w o r k t 0013240 o a m u l t i - n e t w o r 0013260 k s y s t e m w i t h o u t 0013300 r e d o i n g t h e r e s 0013320 o l u t i o n m a t r i x ; 0013340 a n d i t i s a l s o i 0013360 m p o r t a n t t o a v o i 0013400 d r e f o r m a t t i n g d 0013420 a t a t o c o n f o r m t 0013440 o l o c a l c o n v e n t i 0013460 o n s a t e v e r y s t e 0013500 p t h r o u g h a c o l l 0013520 e c t i o n o f n e t w o r 0013540 k s . 032 z 1 8 6 9 7 e 1 0 j k 0013560 4 0 \ g \r T o s i m p l i f y 0013600 t h e s i t u a t 376 001 \0 242 202 0013620 i o n , t h i s c o n t e x 0013640 t u a l i n f o r m a t i o n 0013660 m a y b e v i e w e d a 0013700 s a n a d j u n c t p a r 0013720 t o f a f i l e , w h i 0013740 c h m i g h t m i g r a t e 0013760 w i t h t h e f i l e , 0014000 a s n e c e s s a r y . T h 0014020 i s i n f o r m a t i o n , 0014040 o r f i l e p r o p e r t y 0014060 l i s t , m a y b e u s 0014100 e d t o d e s c r i b e d 0014120 i f f e r e n t k i n d s o 0014140 f \a \a f i l e s ' ' , i n c 0014160 l u d i n g t h o s e : 032 z 1 0014200 8 6 9 7 e 1 0 j k 4 0 \ g 1 6 9 0014220 376 001 \0 364 R i 1 8 I \r 023 r e s i d 0014240 i n g o n a p h y s i c a 0014260 l d i s k ; 032 z 1 8 6 9 7 l 3 0014300 7 0 4 e 1 0 j k 4 0 \ g \r 023 i n 0014320 t r a n s i t , o n a B 0014340 S P c o n n e c t i o n ; 032 0014360 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 0014400 4 0 \ g \r 023 b e i n g s o u g 0014420 h t b y a p a r t i c u l 0014440 a r u s e r ; o r , 032 z 1 8 0014460 6 9 7 l 3 7 0 4 e 1 0 j k 4 0 \ 0014500 g \r 023 b e i n g g e n e r a t 0014520 e d b y a s e r v e r . 032 0014540 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 0014560 4 0 \ g \r T h e p r o p e r t 0014600 i e s o f a f i l e a r 0014620 e , i n 376 001 \0 275 x g e n e r 0014640 a l , c o n t a i n e d e i 0014660 t h e r e x p l i c i t l y 0014700 o r i m p l i c i t l y w i 0014720 t h i n a n o p e r a t i n 0014740 g s y s t e m o n a p a 0014760 r t i c u l a r m a c h i n e 0015000 . A n a c t u a l p r o 0015020 p e r t y l i s t m a y c 0015040 o n t a i n i n f o r m a t i 0015060 o n p r o v i d e d b y t 0015100 h e u s e r , f r o m t h 0015120 e f i l e s y s t e m , o 0015140 r f r o m s p e c i a l i z 0015160 e d i n f o r m a t i o n a 0015200 b o u t t h e e n v i r o n 0015220 m e n t . C o n 376 001 \0 r 032 s 0015240 i d e r a t y p i c a l s 0015260 c e n a r i o : m o v i n g 0015300 a t e x t f i l e f r o m 0015320 a f i l e s e r v e r t 0015340 o a n A l t o : 032 z 1 8 6 9 0015360 7 e 1 0 j k 4 0 \ g \r 1 . \t T h 0015400 e s e r v e r c a n g e n 0015420 e r a t e a p r o p e r t y 0015440 l i s t i n c l u d i n g 0015460 t h e f i l e n a m e , d 0015500 a t e l a s t w r i t t e n 0015520 , a u t h o r , p r o t e c 0015540 t i o n , b y t e s i z e , 0015560 e t c . 032 z 1 8 6 9 7 l 3 7 0 0015600 4 d 2 9 9 9 e 1 0 j k 4 0 ( 0 , 0015620 3 7 0 4 ) \ g \r 2 . \t T h i s 376 0015640 001 \0 g G i n f o r m a t i o n 0015660 , a l o n g w i t h t h e 0015700 f i l e , i s t r a n s m 0015720 i t t e d t o t h e A l t 0015740 o . 032 z 1 8 6 9 7 l 3 7 0 4 d 2 0015760 9 9 9 e 1 0 j k 4 0 \ g \r 3 . \t 0016000 T h e A l t o p r o c e s s 0016020 d o e s i t s b e s t t 0016040 o m a p t h e p r o p e r 0016060 t y l i s t i n t o i t s 0016100 e n v i r o n m e n t : t h 0016120 e f i l e n a m e i s u 0016140 s e d , p e r h a p s w i t 0016160 h o u t t h e v e r s i o n 0016200 n u m b e r ; p r o t e c t 0016220 i o n i n f o r m a t i o n 0016240 i s d 376 001 \0 032 | i s c a r d e 0016260 d ; t h e e n d o f l i 0016300 n e i n d i c a t i o n m a 0016320 y b e c h a n g e d , i f 0016340 n e c e s s a r y ; e t c . 0016360 032 z 1 8 6 9 7 l 3 7 0 4 d 2 9 9 0016400 9 e 1 0 j k 4 0 \ g \r T h e r e 0016420 i s n o g u a r a n t e e 0016440 t h a t a r e c e i v i n 0016460 g p r o c e s s w i l l b 0016500 e a b l e t o p r o p e 0016520 r l y e n c o d e a l l p 0016540 r o p e r t i e s . 032 z 1 8 0016560 6 9 7 e 1 0 j k 4 0 ( 1 2 7 0 ) 0016600 \ g \r A f i l e c o u l d , 0016620 h o w e v e r , a t t e m p 0016640 t t o p r e s 376 001 \0 " 037 e r 0016660 v e s o m e o f i t s o 0016700 r i g i n a l c o n t e x t 0016720 b y i n c l u d i n g a s 0016740 o n e o f i t s p r o p e 0016760 r t i e s a n e x t r a o r 0017000 d i n a r y r e q u e s t t 0017020 o m a i n t a i n t h e p 0017040 r o p e r t y l i s t . F 0017060 o r e x a m p l e , a n A 0017100 l t o m i g h t b e w i l 0017120 l i n g t o s a v e a p 0017140 r o p e r t y l i s t o n 0017160 a n a u x i l i a r y f i l 0017200 e , a n d u s e s o m e 0017220 o f t h a t i n f o r m a t 0017240 i o n t o r e g e n e r 376 001 0017260 \0 212 206 a t e a p r o p e r t 0017300 y l i s t w h e n t h e 0017320 f i l e i s r e t u r n e d 0017340 t o t h e s e r v e r . 032 0017360 z 1 8 6 9 7 e 1 0 j k 4 0 \ f 1 0017400 g \r A p r o p e r t y l i s 0017420 t m a y b e g e n e r a t 0017440 e d b y a n y p r o c e s 0017460 s w h i c h d e s i r e s 0017500 t o t r a n s m i t a f i 0017520 l e . S i m i l a r l y , 0017540 a n y p r o c e s s r e c e 0017560 i v i n g a f i l e a n d 0017600 i t s p r o p e r t y l i 0017620 s t c a n u s e t h a t 0017640 i n f o r m a t i o n t o i 0017660 n t e 376 001 \0 021 330 r p r e t t h 0017700 e c o n t e n t s o f t h 0017720 e f i l e . ( R e m e m b 0017740 e r t h a t a l l d a t a 0017760 m o v e d u n d e r t h e 0020000 B S P a r e s e n t a s 0020020 8 - b i t b y t e s , a n 0020040 d t h e p r o p e r t y l 0020060 i s t w i l l i n d i c a t 0020100 e a n y u n u s u a l p a 0020120 c k i n g o f d a t a . ) 032 0020140 z 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 0020160 T h e p r o p e r t y l i s 0020200 t m i g h t a l s o b e 0020220 u s e d t o m e r e l y p 0020240 r o v i d e i n f o r m a t i 0020260 o n a b o u t 376 001 \0 317 335 o n 0020300 e o r m o r e f i l e s 0020320 ( w h e r e t h e y a r e , 0020340 w h e n l a s t w r i t t 0020360 e n , e t c . ) I n a 0020400 d d i t i o n , a f i l e 0020420 p r o p e r t y l i s t c a 0020440 n p r o v i d e a p a r t 0020460 i a l d e s c r i p t i o n 0020500 f o r a f i l e w h i c h 0020520 y o u a r e t r y i n g 0020540 t o f i n d , o r w h i c 0020560 h y o u w o u l d l i k e 0020600 t o c r e a t e . 032 z 1 8 6 0020620 9 7 e 1 0 j k 4 0 \ g \r T h i s 0020640 n o t i o n o f a f i l 0020660 e p r o p e r t y l i 376 001 \0 0020700 j 322 s t i s c e n t r a l 0020720 t o t h e f i l e t r a n 0020740 s f e r p r o t o c o l . 032 z 0020760 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 4 0021000 . S u m m a r y o f t h e 0021020 F i l e T r a n s f e r P 0021040 r o t o c o l 032 z 1 8 6 9 7 e 2 0021060 2 k 8 0 \ b g \r T h e r e a r 0021100 e t h r e e m a j o r e l 0021120 e m e n t s d e f i n e d i 0021140 n t h e p r o t o c o l : 0021160 s y n t a x o f a p r o p 0021200 e r t y l i s t , t y p i c 0021220 a l p r o p e r t y / v a l u 0021240 e p a i r s , a n d c o m 0021260 m a n d s e q u e n c e s . 0021300 A 376 001 \0 Y \v g e n e r a l 0021320 d e s c r i p t i o n o f e 0021340 a c h i s p r o v i d e d 0021360 h e r e a s a n i n t r o 0021400 d u c t i o n ; t h e c o m 0021420 p l e t e l y s p e c i f i e 0021440 d d e t a i l s c a n b e 0021460 f o u n d i n s u b s e q 0021500 u e n t s e c t i o n s . 032 z 0021520 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 4 0021540 . 1 . S y n t a x o f a 0021560 f i l e p r o p e r t y l 0021600 i s t 032 z 1 8 6 9 7 e 1 6 k 8 0 0021620 \ i g \r A f i l e p r o p e 0021640 r t y l i s t c o n s i s t 0021660 s o f a s t r i n g o f 0021700 A S C I I 376 001 \0 260 w c h a r 0021720 a c t e r s , b e g i n n i n 0021740 g w i t h a l e f t p a 0021760 r e n t h e s i s a n d e n 0022000 d i n g w i t h a m a t c 0022020 h i n g r i g h t p a r e n 0022040 t h e s i s . W i t h i n 0022060 t h a t l i s t , e a c h 0022100 p r o p e r t y i s r e p r 0022120 e s e n t e d s i m i l a r l 0022140 y a s a p a r e n t h e s 0022160 i z e d l i s t . F o r 0022200 e x a m p l e : 032 z 1 8 6 9 7 e 0022220 1 0 j k 4 0 \ g 4 5 f 1 5 f 0 0022240 \r ( ( S e r v e r - F i l e n a 0022260 m e T E S T F I L E . 7 ) ( B 0022300 y t e - S i z e 3 6 ) 376 001 \0 337 0022320 357 ) 032 z 1 9 0 5 0 l 3 7 0 4 e 1 0022340 0 ( 6 3 5 ) \ g \r 4 . 2 . T 0022360 y p i c a l p r o p e r t i e 0022400 s a n d t h e i r v a l u 0022420 e s 032 z 1 8 6 9 7 e 1 6 k 8 0 ( 0022440 1 2 7 0 ) \ i g \r O n e c a n 0022460 r e a s o n a b l y e x p e 0022500 c t t o f i n d p r o p e 0022520 r t i e s s u c h a s t h 0022540 e s e i n a f i l e p r 0022560 o p e r t y l i s t : 032 z 1 8 0022600 6 9 7 e 1 0 j k 4 0 \ g \r S e r 0022620 v e r - F i l e n a m e \t < S U 0022640 B S Y S > P U P F T P . S A V ; 0022660 3 \r \t < A l t o > B r a v o . d 0022700 m \r \t B r a v o . d m \r \t M y . 0022720 F 376 001 \0 356 247 u n n y . B u t . L 0022740 e g a l . A l t o . N a m e 032 z 0022760 1 9 0 5 0 l 3 7 0 4 e 1 0 ( 0 , 0023000 1 0 5 8 3 ) \ g \r B y t e - S i 0023020 z e \t 7 , 8 , 3 6 032 z 1 9 0 0023040 5 0 l 3 7 0 4 e 1 0 \ g \r T y p 0023060 e \t T e x t , B i n a r y 032 z 0023100 1 9 0 5 0 l 3 7 0 4 e 1 0 \ g \r 0023120 A u t h o r \t P a n c h o V i l 0023140 l a , S y s t e m 032 z 1 9 0 5 0023160 0 l 3 7 0 4 e 1 0 \ g \r D a t e 0023200 - W r i t t e n \t 2 3 - J a n - 0023220 7 6 1 1 : 3 0 : 2 2 P S T 032 0023240 z 1 9 0 5 0 l 3 7 0 4 e 1 0 \ g 0023260 \r 032 ( 6 3 5 ) \ g \r 4 . 3 . 0023300 C o m m a n d s a n d c o m 0023320 m a n d / r 376 001 \0 235 200 e s p o n 0023340 s e s e q u e n c e s 032 z 1 8 0023360 6 9 7 e 1 6 k 8 0 ( 1 2 7 0 ) \ 0023400 i g \r I n e v e r y F T P 0023420 c o n n e c t i o n , o n e 0023440 p a r t y i s t h e U s e 0023460 r a n d t h e o t h e r 0023500 p a r t y i s t h e S e r 0023520 v e r : t h e U s e r i n 0023540 i t i a t e s c o m m a n d s 0023560 , w h i l e t h e S e r v 0023600 e r p r o v i d e s r e p l 0023620 i e s . I n g e n e r a l 0023640 , t h e r e w i l l b e 0023660 s o m e f o r m o f r e p 0023700 l y g e n e r a t e d i n 0023720 a n s w e r t o e 376 001 \0 307 # 0023740 v e r y c o m m a n d . 032 z 1 0023760 8 6 9 7 e 1 0 j k 4 0 \ g \r E v 0024000 e r y t r a n s a c t i o n 0024020 i n t h e F T P c o n s i 0024040 s t s o f a B S P M a r 0024060 k B y t e , f o l l o w e d 0024100 b y a p i e c e o f d 0024120 a t a , a n d t e r m i n a 0024140 t e d a t t h e n e x t 0024160 B S P M a r k B y t e e n 0024200 c o u n t e r e d . T h e 0024220 d a t a t h u s e n c l o s 0024240 e d m i g h t b e o n e 0024260 o r m o r e f i l e p r o 0024300 p e r t y l i s t s , a t 0024320 e x t s t r i n g , o r a 0024340 376 001 \0 331 R f i l e . A c 0024360 o m m a n d m i g h t s i m 0024400 p l y b e t e r m i n a t e 0024420 d b y t h e a r r i v a l 0024440 o f t h e n e x t M a r 0024460 k B y t e c o m m a n d , 0024500 o r b y a n E n d - o f - 0024520 C o m m a n d M a r k B y t 0024540 e ( e s s e n t i a l l y a 0024560 n o - o p ) . A l l o f 0024600 t h e M a r k B y t e c 0024620 o d e s u s e d i n t h e 0024640 F T P a r e l i s t e d 0024660 a t t h e e n d o f t h 0024700 i s d o c u m e n t . 032 z 1 8 0024720 6 9 7 e 1 0 j k 4 0 \ g \r F o r 0024740 e x a m 376 001 \0 o 224 p l e , a 0024760 s i m p l e r e t r i e v a 0025000 l o f a f i l e w o u l 0025020 d i n c l u d e : 032 z 1 8 6 9 0025040 7 e 1 0 j k 4 0 \ g \r 1 . \t U s 0025060 e r s e n d s t h e S e r 0025100 v e r a c o m m a n d r e 0025120 q u e s t i n g t h e r e t 0025140 r i e v a l , w i t h a f 0025160 i l e p r o p e r t y l i s 0025200 t d e s c r i b i n g t h e 0025220 d e s i r e d f i l e . 032 z 0025240 1 8 6 9 7 l 3 7 0 4 d 2 9 9 9 e 0025260 1 0 j k 4 0 ( 0 , 3 7 0 4 ) \ g 0025300 \r 2 . \t S e r v e r r e s p o 0025320 n d s w i t h a n a p p r 0025340 o p r i a t e m e 376 001 \0 331 205 s 0025360 s a g e . 032 z 1 8 6 9 7 l 3 7 0 0025400 4 d 2 9 9 9 e 1 0 j k 4 0 \ g \r 0025420 3 . \t I f t h e S e r v e r 0025440 s a i d Y e s , t h e n 0025460 t h e f i l e i s p l a c 0025500 e d i n t o t h e b y t e 0025520 s t r e a m . 032 z 1 8 6 9 7 l 0025540 3 7 0 4 d 2 9 9 9 e 1 0 j k 4 0 0025560 \ g \r I f a p r o c e s s 0025600 r e p l i e s w i t h a N 0025620 o , t h e f i r s t b y t 0025640 e o f t h e f o l l o w i 0025660 n g d a t a i s a n u m 0025700 e r i c c o d e f o r p o 0025720 s s i b l e m a c h i n e p 0025740 r o c e s s i n g , a n d 376 0025760 001 \0 313 214 t h e r e m a i n i n 0026000 g b y t e s a r e a c o 0026020 m m e n t f o r t h e u s 0026040 e r . ( T h e c o r r e c 0026060 t f u n c t i o n i n g o f 0026100 t h e p r o t o c o l , h 0026120 o w e v e r , d o e s n o t 0026140 d e p e n d u p o n t h e 0026160 m a n y p o s s i b l e n 0026200 u m e r i c c o d e s ; t h 0026220 e s i m p l e Y e s a n d 0026240 N o m e s s a g e s a r e 0026260 s u f f i c i e n t f o r 0026300 u s i n g t h e p r o t o c 0026320 o l . ) 032 z 1 8 6 9 7 e 1 0 j k 0026340 4 0 ( 1 2 7 0 ) \ g \r O n c e 0026360 a g a i 376 001 \0 t 203 n , p a r t 0026400 i c u l a r i m p l e m e n t 0026420 a t i o n s o f t h e F T 0026440 P m a y n o t s u p p o r 0026460 t a l l p o s s i b l e c 0026500 o m m a n d s . T h e p r 0026520 o t o c o l p r o v i d e s 0026540 a s t a n d a r d r e s p o 0026560 n s e ( t h e N o m e s s 0026600 a g e w i t h a s p e c i 0026620 f i c c o d e ) b y w h i 0026640 c h a s e r v e r m a y 0026660 i n d i c a t e t h a t a 0026700 r e q u e s t e d c o m m a n 0026720 d i s n o t i m p l e m e 0026740 n t e d . T h i s m u s t 0026760 b e t h e s 376 001 \0 { 3 e r 0027000 v e r ' s s o l e r e s p o 0027020 n s e t o a n u n i m p l 0027040 e m e n t e d c o m m a n d ; 0027060 i t m u s t n o t t a k 0027100 e m o r e d r a s t i c a 0027120 c t i o n s u c h a s b r 0027140 e a k i n g t h e c o n n e 0027160 c t i o n . 032 z 1 8 6 9 7 e 1 0 0027200 j k 4 0 \ g 3 1 9 i 8 I \r 5 . 0027220 D e t a i l s o f t h e F 0027240 i l e T r a n s f e r P r o 0027260 t o c o l 032 z 1 8 6 9 7 e 2 2 k 0027300 8 0 \ b g \r T h i s s e c t i 0027320 o n s p e c i f i e s t h e 0027340 m i n i m u m c o n v e n t 0027360 i o n s r e q u i r e d 376 001 0027400 \0 x 321 t o u s e t h e F T 0027420 P , a s w e l l a s m a 0027440 n y o p t i o n a l f e a t 0027460 u r e s w h i c h h a v e 0027500 b e e n f o u n d u s e f u 0027520 l . A n y F T P s e r v 0027540 e r i n t e n d e d f o r 0027560 g e n e r a l u s e i s e 0027600 x p e c t e d t o r e s p o 0027620 n d p r o p e r l y t o t 0027640 h e m i n i m u m s e t o 0027660 f c o m m a n d s ; a n y 0027700 o f t h e o p t i o n a l 0027720 f a c i l i t i e s i n c l u 0027740 d e d w i l l i n c r e a s 0027760 e t h e u t i l i t y o f 0030000 t h 376 001 \0 325 340 e s e r v e r 0030020 . A n y i m p l e m e n t 0030040 a t i o n o f a u s e r 0030060 p r o c e s s i s f r e e 0030100 t o s e l e c t t h o s e 0030120 f e a t u r e s d e e m e d 0030140 u s e f u l , b u t t h e 0030160 m i n i m a l s e t s h o u 0030200 l d s e e m e v i d e n t 0030220 f r o m t h e d i s c u s s 0030240 i o n b e l o w . 032 z 1 8 6 9 0030260 7 e 1 0 j k 4 0 \ g \r 5 . 1 . 0030300 S y n t a x o f a f i l 0030320 e p r o p e r t y l i s t 032 0030340 z 1 8 6 9 7 e 1 6 k 8 0 \ i g \r 0030360 A f i l e p r o p e r t y 0030400 l i s t c o n 376 001 \0 : F s i s 0030420 t s o f a s t r i n g o 0030440 f A S C I I c h a r a c t e 0030460 r s , b e g i n n i n g w i 0030500 t h a l e f t p a r e n t 0030520 h e s i s a n d e n d i n g 0030540 w i t h a m a t c h i n g 0030560 r i g h t p a r e n t h e s 0030600 i s . W i t h i n t h a t 0030620 l i s t , e a c h p r o p 0030640 e r t y i s r e p r e s e n 0030660 t e d s i m i l a r l y a s 0030700 a p a r e n t h e s i z e d 0030720 l i s t . F o r e x a m 0030740 p l e : 032 z 1 8 6 9 7 e 1 0 j k 0030760 4 0 \ g 4 5 f 1 5 f 0 \r ( ( S 0031000 e r v e r - F i l e n a m 376 001 \0 0031020 c ! e T E S T F I L E . 7 ) ( 0031040 B y t e - S i z e 3 6 ) ) 032 z 0031060 1 9 0 5 0 l 3 7 0 4 e 1 0 ( 6 3 0031100 5 ) \ g \r T h i s s c h e m e 0031120 h a s t h e a d v a n t a 0031140 g e o f b e i n g h u m a 0031160 n r e a d a b l e , a l t h 0031200 o u g h i t w i l l r e q 0031220 u i r e s o m e f o r m o 0031240 f s c a n n e r o r i n t 0031260 e r p r e t e r . N e v e r 0031300 t h e l e s s , t h i s i s 0031320 a r i g i d f o r m a t , 0031340 w i t h m i n i m u m f l 0031360 e x i b i l i t y i n f o r 0031400 m ; F T P i s a m a c h 0031420 i n 376 001 \0 206 231 e - t o - m a c h 0031440 i n e p r o t o c o l , n o 0031460 t a p r o g r a m m i n g 0031500 l a n g u a g e . 032 z 1 8 6 9 7 0031520 e 1 0 j k 4 0 ( 1 2 7 0 ) \ g \r 0031540 T h e f i r s t i t e m i 0031560 n e a c h p r o p e r t y 0031600 ( d e l i m i t e d b y a 0031620 l e f t p a r e n t h e s i s 0031640 a n d a s p a c e ) i s 0031660 t h e p r o p e r t y n a 0031700 m e , t a k e n f r o m a 0031720 f i x e d b u t e x t e n 0031740 s i b l e s e t . U p p e 0031760 r - a n d l o w e r - c a s 0032000 e l e t t e r s a r e c o 0032020 n s i d e r e 376 001 \0 030 343 d e q 0032040 u i v a l e n t i n t h e 0032060 p r o p e r t y n a m e . 0032100 T h e t e x t b e t w e e n 0032120 t h e f i r s t s p a c e 0032140 a n d t h e r i g h t p 0032160 a r e n t h e s i s i s t h 0032200 e p r o p e r t y v a l u e 0032220 . A l l c h a r a c t e r 0032240 s i n t h e p r o p e r t 0032260 y v a l u e a r e t a k e 0032300 n l i t e r a l l y , e x c 0032320 e p t i n a c c o r d a n c 0032340 e w i t h t h e q u o t i 0032360 n g c o n v e n t i o n d e 0032400 s c r i b e d b e l o w . 032 z 0032420 1 8 6 9 7 e 1 0 j k 4 0 376 001 \0 224 0032440 206 \ g \r A l l s p a c e s a 0032460 r e s i g n i f i c a n t , 0032500 a n d m u l t i p l e s p a 0032520 c e s m a y n o t b e a 0032540 r b i t r a r i l y i n c l u 0032560 d e d . T h e r e s h o u 0032600 l d b e n o s p a c e b 0032620 e t w e e n t h e t w o l 0032640 e a d i n g p a r e n t h e s 0032660 e s , f o r e x a m p l e , 0032700 a n d a s i n g l e s p 0032720 a c e s e p a r a t e s a 0032740 p r o p e r t y n a m e f r 0032760 o m t h e p r o p e r t y 0033000 v a l u e . O t h e r s p 0033020 a c e s i n a p r o p e r 0033040 t 376 001 \0 324 221 y v a l u e w i 0033060 l l b e c o m e p a r t o 0033100 f t h a t v a l u e , s o 0033120 t h a t t h e f o l l o w 0033140 i n g e x a m p l e w i l l 0033160 w o r k p r o p e r l y : 032 0033200 z 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 0033220 ( ( S e r v e r - F i l e n a m 0033240 e x x x x x ) ( R e a d - D a 0033260 t e 2 3 - J a n - 7 6 1 1 : 0033300 3 0 : 2 2 P S T ) ) 032 z 1 9 0 0033320 5 0 l 3 7 0 4 e 1 0 ( 6 3 5 ) \ 0033340 g \r A s i n g l e a p o s t 0033360 r o p h e i s u s e d a s 0033400 t h e q u o t e c h a r a 0033420 c t e r i n a p r o p e r 0033440 t y v a l 376 001 \0 f 021 u e , a 0033460 n d s h o u l d b e u s e 0033500 d b e f o r e a p a r e n 0033520 t h e s i s o r a d e s i 0033540 r e d a p o s t r o p h e : 032 0033560 z 1 8 6 9 7 e 1 0 j k 4 0 ( 1 2 0033600 7 0 ) \ g \r D o n ' t ( ! ) G o 0033620 o f = = > ( P r o p e r 0033640 t y N a m e D o n ' ' t ' ( ! 0033660 ' ) G o o f ) 032 z 1 9 0 5 0 l 3 0033700 7 0 4 e 1 0 ( 6 3 5 ) \ g \r F T 0033720 P i m p l e m e n t a t i o n 0033740 s a r e r e q u i r e d t 0033760 o i g n o r e p r o p e r t 0034000 i e s w h o s e n a m e s 0034020 t h e y d o n ' t k n o w . 0034040 T h i s e n a b 376 001 \0 335 D 0034060 l e s e x t e n s i o n s t 0034100 o b e i n t r o d u c e d 0034120 t o t h e s e t o f d e 0034140 f i n e d p r o p e r t i e s 0034160 w i t h o u t i n v a l i d 0034200 a t i n g e x i s t i n g p 0034220 r o g r a m s . 032 z 1 8 6 9 7 e 0034240 1 0 j k 4 0 ( 1 2 7 0 ) \ g 2 4 0034260 i 8 I \r F T P i m p l e m e n 0034300 t a t i o n s a r e e x p e 0034320 c t e d t o s e n d a s 0034340 c o m p l e t e a s e t o 0034360 f p r o p e r t i e s a s 0034400 i s p o s s i b l e i n e 0034420 v e r y m e s s a g e . H 0034440 o w e v e r , t h e F T P 0034460 376 001 \0 ( 327 u s e r m a y i n 0034500 s t r u c t t h e s e r v e 0034520 r t o s e n d o n l y a 0034540 s p e c i f i c s u b s e t 0034560 o f t h e f i l e p r o 0034600 p e r t i e s , u s i n g t 0034620 h e D e s i r e d - P r o p e 0034640 r t y p r o p e r t y d e s 0034660 c r i b e d b e l o w . 032 z 1 0034700 8 6 9 7 e 1 0 j k 4 0 \ g \r 5 . 0034720 2 . D e f i n e d p r o p e 0034740 r t i e s a n d t h e i r 0034760 v a l u e s 032 z 1 8 6 9 7 e 1 6 0035000 k 8 0 \ i g \r 5 . 2 . 1 . M 0035020 a n d a t o r y p r o p e r t 0035040 i e s . A n F T P s e r 0035060 v e r m 376 001 \0 364 w u s t b e 0035100 a b l e t o r e s p o n d 0035120 t o t h e s e e l e m e n 0035140 t s i n a f i l e p r o 0035160 p e r t y l i s t . T h e 0035200 s e p r o p e r t i e s m a 0035220 y o r m a y n o t b e 0035240 r e q u i r e d i n a l l 0035260 p r o p e r t y l i s t s ; 0035300 t h i s i s d i s c u s s e 0035320 d i n t h e i n d i v i d 0035340 u a l d e s c r i p t i o n s 0035360 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0035400 b g 2 9 B \r ( S e r v e r - F i 0035420 l e n a m e f i l e n a m e ) 0035440 032 z 1 8 6 9 7 e 1 0 k 4 0 \ g 1 0035460 7 i 8 I \r I n c o 376 001 \0 g 305 m 0035500 m a n d s f r o m u s e r 0035520 t o s e r v e r ( s u c h 0035540 a s S t o r e , R e t r i e 0035560 v e , a n d E n u m e r a t 0035600 e ) , s p e c i f i e s t h 0035620 e n a m e o f t h e f i 0035640 l e t o b e m a n i p u l 0035660 a t e d . T h i s f i l e 0035700 n a m e m u s t c o n f o r 0035720 m t o t h e c o n v e n t 0035740 i o n s o f t h e s e r v 0035760 e r s y s t e m ( u n l i k 0036000 e t h e m o r e m a c h i 0036020 n e - i n d e p e n d e n t n 0036040 a m e c o n v e n t i o n t 0036060 o b e d e s c r i b e d 376 0036100 001 \0 ? 224 a s o p t i o n s b 0036120 e l o w ) . T h i s n e e 0036140 d n o t b e a n e x a c 0036160 t f i l e n a m e ; i t m 0036200 a y b e a p a t t e r n 0036220 ( p o s s i b l y m a t c h i 0036240 n g m u l t i p l e f i l e 0036260 n a m e s ) o r c o n t a i 0036300 n d e f a u l t e d f i e l 0036320 d s 023 w h a t e v e r i s s 0036340 u p p o r t e d b y t h e 0036360 s e r v e r ' s f i l e s y 0036400 s t e m . 032 z 1 8 6 9 7 l 3 7 0 0036420 4 e 1 0 j \ g 1 7 8 i 6 I \r I n 0036440 r e s p o n s e s f r o m 0036460 s e r v e r t o u s e r , 0036500 s p e c 376 001 \0 M 215 i f i e s t 0036520 h e e x a c t , c o m p l e 0036540 t e n a m e o f t h e f 0036560 i l e p r e s e n t l y u n 0036600 d e r c o n s i d e r a t i o 0036620 n . 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0036640 0 j \ g \r ( T y p e T e x t | 0036660 B i n a r y ) 032 z 1 8 6 9 7 e 1 0036700 0 k 4 0 \ g \r S p e c i f i e s 0036720 t h e t y p e o f d a t 0036740 a t o b e t r a n s f e r 0036760 r e d ( n o d e f a u l t ) 0037000 . T e x t d a t a i s 0037020 7 - b i t A S C I I ( r i g 0037040 h t - j u s t i f i e d i n 0037060 8 - b i t b y t e s ) c o n 0037100 f o r m i n g t 376 001 \0 216 330 o 0037120 t h e E n d - o f - L i n e - 0037140 C o n v e n t i o n ( s e e 0037160 b e l o w ) . B i n a r y 0037200 d a t a c o n s i s t s o f 0037220 b y t e s c o n f o r m i n 0037240 g t o t h e B y t e - S i 0037260 z e p r o p e r t y ( s e e 0037300 b e l o w ) . I f t h e 0037320 t y p e i s n o t s p e 0037340 c i f i e d b y t h e u s 0037360 e r i n a R e t r i e v e 0037400 c o m m a n d ( t h e u s 0037420 u a l c a s e ) , t h e s 0037440 e r v e r s h o u l d d e t 0037460 e r m i n e t h e a p p r o 0037500 p r i a t e t y p e b a 376 001 0037520 \0 242 g s e d o n l o c a l 0037540 i n f o r m a t i o n a b o u 0037560 t t h e f i l e b e i n g 0037600 r e t r i e v e d , i f p 0037620 o s s i b l e . 032 z 1 8 6 9 7 l 0037640 3 7 0 4 e 1 0 j \ g 7 9 f 1 5 0037660 f 0 \r ( E n d - o f - L i n e - 0037700 C o n v e n t i o n C R | C R 0037720 L F | T r a n s p a r e n t ) 032 0037740 z 1 8 6 9 7 e 1 0 k 4 0 \ g \r S 0037760 p e c i f i e s t h e r e p 0040000 r e s e n t a t i o n f o r 0040020 e n d - o f - l i n e i n f 0040040 i l e s t r a n s m i t t e d 0040060 a s t y p e T e x t ( d 0040100 e f a u l t i s C R ) . 0040120 T h i 376 001 \0 ( " s s p e c i f 0040140 i c a t i o n i s m e a n i 0040160 n g l e s s f o r B i n a r 0040200 y f i l e s a n d i s i 0040220 g n o r e d . B o t h s e 0040240 r v e r a n d u s e r a r 0040260 e e x p e c t e d t o c o 0040300 n v e r t b e t w e e n l o 0040320 c a l e n d - o f - l i n e 0040340 c o n v e n t i o n s a n d 0040360 t h e a g r e e d - u p o n 0040400 n e t w o r k c o n v e n t i 0040420 o n . ( I n g e n e r a l 0040440 , t h e F T P s e r v e r 0040460 n e v e r i n d e p e n d e 0040500 n t l y d e c i d e s o n 0040520 a n e n d - o 376 001 \0 % $ f - l 0040540 i n e c o n v e n t i o n b 0040560 u t r a t h e r a l w a y s 0040600 h e e d s t h e c o n v e 0040620 n t i o n s p e c i f i e d 0040640 b y t h e F T P u s e r . 0040660 ) T r a n s p a r e n t m 0040700 e a n s t h a t t h e s e 0040720 r v e r i s n o t t o p 0040740 e r f o r m a c o n v e r s 0040760 i o n e v e n i f l o c a 0041000 l a n d n e t w o r k c o 0041020 n v e n t i o n s d i f f e r 0041040 . A l l i m p l e m e n t 0041060 a t i o n s a r e r e q u i 0041100 r e d t o s u p p o r t e 0041120 n d - o f - l i n e c o 376 001 \0 0041140 8 \b n v e n t i o n s C R a 0041160 n d T r a n s p a r e n t ; 0041200 i m p l e m e n t i n g C R L 0041220 F i s o p t i o n a l . 032 z 0041240 1 8 6 9 7 l 3 7 0 4 e 1 0 j \ g 0041260 \r ( B y t e - S i z e d e c i 0041300 m a l - n u m b e r ) 032 z 1 8 6 0041320 9 7 e 1 0 k 4 0 \ g 1 1 i 1 4 I 0041340 \r S p e c i f i e s t h e l 0041360 o g i c a l b y t e s i z e 0041400 o f f i l e s o f t y p 0041420 e B i n a r y ( m e a n i n 0041440 g l e s s a n d i g n o r e 0041460 d i f t h e t y p e i s 0041500 T e x t ) . T h e r e i 0041520 s n o d e f a u l t . B 0041540 i n 376 001 \0 241 277 a r y d a t a 0041560 c o n s i s t s o f b y t e 0041600 s o f t h e s p e c i f i 0041620 e d n u m b e r o f b i t 0041640 s , r i g h t - j u s t i f i 0041660 e d i n 8 - b i t b y t e 0041700 s o r m u l t i p l e s t 0041720 h e r e o f . ( W h i l e 0041740 t h e r e i s n o i n h e 0041760 r e n t l i m i t t o t h 0042000 e b y t e s i z e , s o m 0042020 e i m p l e m e n t a t i o n 0042040 s m a y n o t a c c e p t 0042060 b y t e s i z e s l a r g 0042100 e r t h a n t h e w o r d 0042120 s i z e o f t h e m a c 0042140 h i n e o n 376 001 \0 253 310 w h i 0042160 c h t h e y a r e r u n n 0042200 i n g . ) D u r i n g a 0042220 S t o r e , t h e b y t e 0042240 s i z e m u s t b e s p e 0042260 c i f i e d b y t h e F T 0042300 P u s e r , a n d i t d 0042320 e t e r m i n e s t h e b y 0042340 t e s i z e o f t h e f 0042360 i l e w r i t t e n a t t 0042400 h e s e r v e r e n d . 0042420 D u r i n g a R e t r i e v 0042440 e , t h e u s e r m a y 0042460 l e a v e t h e b y t e s 0042500 i z e u n s p e c i f i e d ; 0042520 i n t h i s c a s e , t 0042540 h e s e r v e r c h 376 001 \0 237 0042560 210 o o s e s a s u i t a b l 0042600 e b y t e s i z e b a s e 0042620 d o n l o c a l i n f o r 0042640 m a t i o n ( i f p o s s i 0042660 b l e ) . I f t h e u s 0042700 e r r e q u e s t s r e t r 0042720 i e v a l o f a f i l e 0042740 u s i n g a b y t e s i z 0042760 e d i f f e r e n t f r o m 0043000 t h a t w h i c h t h e 0043020 s e r v e r b e l i e v e s 0043040 i s a p p r o p r i a t e f 0043060 o r t h e f i l e , a n 0043100 e r r o r r e s u l t s . 032 z 0043120 1 8 6 9 7 l 3 7 0 4 e 1 0 j \ g 0043140 \r ( D e v i c e d e v i c e - 0043160 n 376 001 \0 \ 371 a m e ) \r ( D i r e 0043200 c t o r y d i r e c t o r y - 0043220 n a m e ) \r ( N a m e - B o d y 0043240 n a m e - b o d y ) \r ( V e r 0043260 s i o n v e r s i o n - s t r 0043300 i n g ) 032 z 1 8 6 9 7 e 1 0 k 4 0043320 0 \ g 8 i 1 1 I 1 3 i 1 4 I 1 3 0043340 i 9 I 1 1 i 1 4 I \r S p e c i f 0043360 i e s t h e s e p a r a t e 0043400 c o m p o n e n t s o f a 0043420 f i l e n a m e i n a m 0043440 a n n e r i n t e n d e d t 0043460 o f a c i l i t a t e t r a 0043500 n s f e r o f f i l e s b 0043520 e t w e e n h o s t s w h o 0043540 s e f i l e s y s t e m s 0043560 l a c k o 376 001 \0 277 n e o r 0043600 m o r e o f t h e s e c 0043620 o n c e p t s o r h a v e 0043640 d i f f e r e n t c o n v e n 0043660 t i o n s f o r p u n c t u 0043700 a t i n g t h e m . T h e 0043720 v a l u e s o f t h e s e 0043740 p r o p e r t i e s s h o u 0043760 l d n o t i n c l u d e t 0044000 h e s u r r o u n d i n g p 0044020 u n c t u a t i o n c h a r a 0044040 c t e r s . 032 z 1 8 6 9 7 l 3 7 0044060 0 4 e 1 0 j \ g 2 6 0 i 3 I \r A 0044100 f i l e n a m e p r o p e r 0044120 t y s e n t f r o m u s e 0044140 r t o s e r v e r m a y 0044160 b e g i v e n e i 376 001 \0 025 312 0044200 t h e r a s a S e r v e r 0044220 - F i l e n a m e o r a s 0044240 s e p a r a t e c o m p o n e 0044260 n t s . I f i t i s s 0044300 u p p l i e d a s s e p a r 0044320 a t e c o m p o n e n t s , 0044340 t h e n t h e s e r v e r 0044360 i s e x p e c t e d , w h e 0044400 r e p o s s i b l e , t o 0044420 d e f a u l t m i s s i n g 0044440 c o m p o n e n t s a n d t 0044460 o m a p l o c a l l y i l 0044500 l e g a l c h a r a c t e r s 0044520 i n t o l e g a l o n e s 0044540 . I f , h o w e v e r , 0044560 i t i s s p e c i f i e d 0044600 376 001 \0 257 d a s a S e r v e r 0044620 - F i l e n a m e , t h e n 0044640 i t i s e x p e c t e d t 0044660 o c o n f o r m e x a c t l 0044700 y t o t h e s e r v e r ' 0044720 s f i l e n a m i n g c o 0044740 n v e n t i o n s ( i n c l u 0044760 d i n g a v o i d i n g o r 0045000 q u o t i n g i l l e g a l 0045020 c h a r a c t e r s a s r 0045040 e q u i r e d ) . I f b o 0045060 t h a S e r v e r - F i l e 0045100 n a m e a n d s e p a r a t 0045120 e c o m p o n e n t s a r e 0045140 s u p p l i e d , t h e i 0045160 n d i v i d u a l c o m p o n 0045200 e n t s 376 001 \0 X k m a y b e 0045220 u s e d b y t h e s e r 0045240 v e r t o d e f a u l t u 0045260 n s p e c i f i e d f i e l d 0045300 s i n t h e S e r v e r - 0045320 F i l e n a m e . ( I n e 0045340 f f e c t , t h i s m i g h 0045360 t a l l o w a u s e r p 0045400 r o g r a m t o s p e c i f 0045420 y a d e f a u l t d i r e 0045440 c t o r y , u n l e s s o v 0045460 e r r u l e d b y t h e h 0045500 u m a n u s e r . ) 032 z 1 8 6 0045520 9 7 l 3 7 0 4 e 1 0 j k 4 0 \ g 0045540 \r A f i l e n a m e p r o p 0045560 e r t y s e n t f r o m s 0045600 e r v e r t o u 376 001 \0 $ P s 0045620 e r i s r e q u i r e d t 0045640 o b e s p e c i f i e d a 0045660 s s e p a r a t e c o m p o 0045700 n e n t s , t h o u g h o p 0045720 t i o n a l l y i t m a y 0045740 a l s o b e s p e c i f i e 0045760 d b y a S e r v e r - F i 0046000 l e n a m e p r o p e r t y 0046020 ( g e n e r a l l y j u s t 0046040 f o r i n f o r m a t i o n 0046060 p u r p o s e s ) . T h i s 0046100 a l l o w s a u s e r w 0046120 h o s e n t a n i n c o m 0046140 p l e t e s p e c i f i c a t 0046160 i o n ( e . g . , a p a t 0046200 t e r n ) t o t h e n i 376 0046220 001 \0 327 310 n t e r p r e t t h e 0046240 c o m p l e t e s p e c i f 0046260 i c a t i o n t h a t c o m 0046300 e s b a c k . 032 z 1 8 6 9 7 l 0046320 3 7 0 4 e 1 0 j k 4 0 \ g 4 8 i 0046340 8 I \r T h e p u r p o s e o 0046360 f h a v i n g t w o f i l 0046400 e n a m e c o n v e n t i o n 0046420 s i s o n t h e o n e 0046440 h a n d t o p e r m i t m 0046460 e c h a n i c a l p r o c e s 0046500 s i n g o f f i l e n a m e 0046520 s b y p r o c e s s e s i 0046540 g n o r a n t o f o t h e r 0046560 t h a n l o c a l n a m i 0046600 n g c o n v e n t i o n s , 0046620 a n d 376 001 \0 \a 263 o n t h e 0046640 o t h e r h a n d t o p e 0046660 r m i t e x a c t s p e c i 0046700 f i c a t i o n o f f o r e 0046720 i g n f i l e n a m e s b y 0046740 ( h u m a n ) u s e r s w 0046760 h o a r e c o g n i z a n t 0047000 o f f o r e i g n n a m i 0047020 n g c o n v e n t i o n s . 032 0047040 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 0047060 4 0 \ g 2 6 7 i 3 I \r 5 . 2 . 2 0047100 . O p t i o n a l p r o p 0047120 e r t i e s . T h e r e a 0047140 r e o t h e r p r o p e r t 0047160 i e s w h i c h a r e c o 0047200 n s i d e r e d , i n g e n 0047220 e r a l , t o 376 001 \0 236 006 b e 0047240 o p t i o n a l ; b u t a 0047260 l l F T P s e r v e r s a 0047300 r e e n c o u r a g e d t o 0047320 i m p l e m e n t t h o s e 0047340 w h i c h m a y b e a p 0047360 p r o p r i a t e . A s e 0047400 r v e r m a y c o n s i d e 0047420 r s o m e o f t h e s e 0047440 t o b e m a n d a t o r y 0047460 c o m p o n e n t s o f a 0047500 f i l e p r o p e r t y l i 0047520 s t ( e . g . , U s e r - N 0047540 a m e , U s e r - P a s s w o 0047560 r d ) , a l t h o u g h o t 0047600 h e r s e r v e r s m a y 0047620 n o t u t i l i z e t h 376 001 0047640 \0 A 257 e m . 032 z 1 8 6 9 7 e 1 0 0047660 j k 4 0 \ b g 2 8 B \r ( S i z e 0047700 d e c i m a l - n u m b e r ) 0047720 032 z 1 8 6 9 7 e 1 0 k 4 0 \ g 6 0047740 i 1 4 I \r S p e c i f i e s t 0047760 h e n u m b e r o f b y t 0050000 e s i n t h e f i l e . 0050020 ( T h e s e b y t e s a r 0050040 e o f t h e s i z e s p 0050060 e c i f i e d b y t h e B 0050100 y t e - S i z e p r o p e r t 0050120 y . ) T h e v a l u e i 0050140 s n o t r e q u i r e d t 0050160 o b e c o r r e c t . T 0050200 h e r e c i p i e n t o f 0050220 t h i s p r o p e r t y m a 0050240 y t 376 001 \0 h 256 r e a t i t 0050260 a s a h i n t ( e . g . , 0050300 t o c o n t r o l p r e a 0050320 l l o c a t i o n o f f i l 0050340 e s p a c e ) ; b u t t h 0050360 e t r u e l e n g t h o f 0050400 t h e f i l e i s d e f 0050420 i n e d s o l e l y b y t 0050440 h e n u m b e r o f b y t 0050460 e s a c t u a l l y t r a n 0050500 s f e r r e d w h e n t h e 0050520 f i l e i s s t o r e d 0050540 o r r e t r i e v e d . 032 z 1 0050560 8 6 9 7 l 3 7 0 4 e 1 0 j \ g \r 0050600 ( U s e r - N a m e u s e r - 0050620 n a m e ) 032 z 1 8 6 9 7 e 1 0 k 0050640 4 0 \ g 1 1 i 9 376 001 \0 305 231 I \r S 0050660 p e c i f i e s a l e g a l 0050700 u s e r n a m e o n t h 0050720 e s e r v e r s y s t e m , 0050740 f o r t h e p u r p o s e 0050760 o f a c c e s s c h e c k 0051000 i n g a n d a c c o u n t i 0051020 n g , i f r e q u i r e d . 0051040 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j 0051060 \ g \r ( U s e r - P a s s w o r 0051100 d p a s s w o r d ) 032 z 1 8 6 0051120 9 7 e 1 0 k 4 0 \ g 1 5 i 8 I \r 0051140 S u p p l i e s t h e u s e 0051160 r p a s s w o r d , i f r 0051200 e q u i r e d f o r l o g g 0051220 i n g i n u n d e r t h e 0051240 s p e c i f i e d U s 376 001 \0 0051260 M 347 e r - N a m e . 032 z 1 8 6 9 0051300 7 l 3 7 0 4 e 1 0 j \ g \r ( U s 0051320 e r - A c c o u n t a c c o u 0051340 n t - d e s i g n a t o r ) 032 z 0051360 1 8 6 9 7 e 1 0 k 4 0 \ g 1 4 i 0051400 1 8 I \r S p e c i f i e s t h 0051420 e u s e r \a \a a c c o u n t 0051440 ' ' ( i n t h e T e n e x 0051460 s e n s e ) , i f r e q u 0051500 i r e d . I f t h i s i 0051520 s n o t s p e c i f i e d , 0051540 t h e u s e r i s l o g 0051560 g e d i n u n d e r h i s 0051600 d e f a u l t a c c o u n t 0051620 ( a s s u m i n g t h e r e 0051640 i s o n e ) . 032 z 1 8 6 9 7 0051660 l 3 376 001 \0 372 363 7 0 4 e 1 0 j \ g 0051700 \r ( C o n n e c t - N a m e d 0051720 i r e c t o r y - n a m e ) 032 z 0051740 1 8 6 9 7 e 1 0 k 4 0 \ g 1 4 i 0051760 1 4 I \r S p e c i f i e s t h 0052000 a t t h e u s e r i s t 0052020 o b e \a \a c o n n e c t e d 0052040 ' ' ( i n t h e T e n e x 0052060 s e n s e ) t o t h e s 0052100 p e c i f i e d d i r e c t o 0052120 r y , i . e . , t o b e 0052140 g i v e n t e m p o r a r y 0052160 o w n e r - l i k e a c c e s 0052200 s t o t h a t d i r e c t 0052220 o r y . T h e d e f a u l 0052240 t c o n n e c t e d d i r e 0052260 c t o r y i 376 001 \0 : 312 s t h 0052300 e u s e r ' s l o g i n d 0052320 i r e c t o r y . 032 z 1 8 6 9 7 0052340 l 3 7 0 4 e 1 0 j \ g \r ( C o n 0052360 n e c t - P a s s w o r d p a 0052400 s s w o r d ) 032 z 1 8 6 9 7 e 1 0052420 0 k 4 0 \ g 1 8 i 8 I \r S u p p 0052440 l i e s t h e p a s s w o r 0052460 d f o r c o n n e c t i n g 0052500 t o a d i r e c t o r y , 0052520 i f r e q u i r e d . 032 z 1 0052540 8 6 9 7 l 3 7 0 4 e 1 0 j \ g \r 0052560 ( C r e a t i o n - D a t e d 0052600 a t e - a n d - t i m e ) \r ( W 0052620 r i t e - D a t e d a t e - a 0052640 n d - t i m e ) \r ( R e a d - D 0052660 a t e d a t e - a n d 376 001 \0 0052700 - - t i m e ) 032 z 1 8 6 9 7 e 1 0052720 0 k 4 0 \ g 1 5 i 1 3 I 1 4 i 1 0052740 3 I 1 3 i 1 3 I \r S u p p l i e 0052760 s t h e r e s p e c t i v e 0053000 d a t e p r o p e r t y o 0053020 f t h e f i l e . T h e 0053040 s y n t a x o f d a t e - 0053060 a n d - t i m e i s \a \a d d 0053100 - m m m - y y h h : m m : s s 0053120 z z z ' ' , w h e r e z z 0053140 z i s a s t a n d a r d 0053160 N o r t h A m e r i c a n t 0053200 i m e z o n e ( e . g . , 0053220 P S T , E D T ) , G M T , 0053240 o r a s i g n f o l l o w 0053260 e d b y a n u m e r i c 0053300 t 376 001 \0 \b 333 i m e z o n e ( 0053320 e . g . , + 3 o r + 3 : 0 0053340 0 , m e a n i n g 3 h o u 0053360 r s w e s t o f G r e e n 0053400 w i c h ) . I n c l u s i o 0053420 n o f t h e z o n e i s 0053440 m a n d a t o r y f o r a 0053460 l l n e w i m p l e m e n t 0053500 a t i o n s ; h o w e v e r , 0053520 f o r c o m p a t i b i l i 0053540 t y w i t h o l d e r p r 0053560 o g r a m s , a l l i m p l 0053600 e m e n t a t i o n s m u s t 0053620 b e a b l e t o c o n s 0053640 u m e d a t e p r o p e r t 0053660 i e s w i t h o r w i t h 0053700 o u t t i 376 001 \0 263 003 m e z o 0053720 n e s . 032 z 1 8 6 9 7 l 3 7 0 4 0053740 e 1 0 j \ g 6 6 i 1 3 I \r T h e 0053760 p r e c i s e s e m a n t i 0054000 c s o f t h e d a t e p 0054020 r o p e r t i e s a r e f i 0054040 l e s y s t e m s p e c i f 0054060 i c ; h o w e v e r , a d h 0054100 e r e n c e t o t h e \a \a 0054120 A l t o F i l e D a t e S 0054140 t a n d a r d ' ' ( < A l t o 0054160 D o c s > F i l e D a t e s . p 0054200 r e s s ) i s s t r o n g l 0054220 y e n c o u r a g e d . I 0054240 n p a r t i c u l a r , t h 0054260 e C r e a t i o n - D a t e 0054300 i s d e f i n e d 376 001 \0 033 222 0054320 t o b e t h e d a t e o 0054340 n w h i c h t h e i n f o 0054360 r m a t i o n i n a f i l 0054400 e w a s c r e a t e d ; w 0054420 h e n a f i l e ' s c o n 0054440 t e n t s a r e c o p i e d 0054460 w i t h o u t c h a n g e , 0054500 i t s c r e a t i o n d a 0054520 t e s h o u l d b e c o p 0054540 i e d w i t h i t . 032 z 1 8 0054560 6 9 7 l 3 7 0 4 e 1 0 j \ g 2 5 0054600 0 i 1 1 I \r ( A u t h o r u s 0054620 e r - n a m e ) 032 z 1 8 6 9 7 e 0054640 1 0 k 4 0 \ g 8 i 9 I \r S u p p 0054660 l i e s t h e n a m e ( e 0054700 . g . , G r a p e v i n e r 0054720 376 001 \0 \f 312 e g i s t e r e d n 0054740 a m e ) o f t h e u s e r 0054760 w h o c r e a t e d t h e 0055000 f i l e . 032 z 1 8 6 9 7 l 3 7 0055020 0 4 e 1 0 j \ g \r ( C h e c k s 0055040 u m d e c i m a l - n u m b e 0055060 r ) 032 z 1 8 6 9 7 e 1 0 k 4 0 \ 0055100 g 1 0 i 1 4 I \r S u p p l i e s 0055120 a n o p t i o n a l c h e 0055140 c k s u m o v e r t h e f 0055160 i l e . T h e c h e c k s 0055200 u m i s c o m p u t e d o 0055220 v e r t h e f i l e ' s d 0055240 a t a i n t h e f o r m 0055260 i n w h i c h i t f l o w 0055300 s o v e r t h e B S P s 0055320 t r e a m 376 001 \0 001 m , b u t 0055340 t r e a t i n g i t a s a 0055360 s e q u e n c e o f 1 6 - 0055400 b i t w o r d s ( w i t h 0055420 t h e l e f t b y t e o f 0055440 e a c h w o r d f i r s t 0055460 , a n d w i t h t h e l 0055500 e f t o v e r b y t e a s s 0055520 u m e d t o b e z e r o 0055540 i f t h e f i l e c o n s 0055560 i s t s o f a n o d d n 0055600 u m b e r o f b y t e s ) . 0055620 I t i s a 1 6 - b i t 0055640 n u m b e r c o m p u t e d 0055660 b y a p p l y i n g t h e 0055700 P u p c h e c k s u m a l 0055720 g o r i t h m o v 376 001 \0 244 035 e 0055740 r a l l w o r d s o f t 0055760 h e f i l e a n d t h e n 0056000 a d d i n g 1 ( m o d u l 0056020 o 2 1 6 ) . T h i s m e 0056040 a n s t h e \a \a n o c h e 0056060 c k s u m ' ' v a l u e i s 0056100 z e r o r a t h e r t h a 0056120 n 1 7 7 7 7 7 B . S e n d 0056140 i n g a v a l u e o f z 0056160 e r o i s e q u i v a l e n 0056200 t t o n o t s e n d i n g 0056220 a C h e c k s u m p r o p 0056240 e r t y a t a l l . 032 z 1 8 0056260 6 9 7 l 3 7 0 4 e 1 0 j \ g 4 4 0056300 9 f 1 o 4 2 f 0 o 0 6 7 f 1 0056320 1 f 0 \r T h e p r o t o c 376 0056340 001 \0 032 \b o l d o e s n o t 0056360 r e q u i r e t h e r e c i 0056400 p i e n t t o c h e c k t 0056420 h e c h e c k s u m , n o r 0056440 d o e s i t s p e c i f y 0056460 w h a t a c t i o n t o 0056500 t a k e i f t h e c h e c 0056520 k s u m i s f o u n d t o 0056540 b e i n c o r r e c t . 0056560 I n g e n e r a l , p r o d 0056600 u c e r s a n d c o n s u m 0056620 e r s o f f i l e s w i l 0056640 l ( o p t i o n a l l y ) g 0056660 e n e r a t e a n d c h e c 0056700 k C h e c k s u m p r o p e 0056720 r t i e s . F i l e s e r 0056740 v e r s 376 001 \0 037 250 , o n t h 0056760 e o t h e r h a n d , w i 0057000 l l s i m p l y s t o r e 0057020 t h e p r o p e r t y a l o 0057040 n g w i t h t h e f i l e 0057060 a n d g i v e i t b a c 0057100 k w h e n t h e f i l e 0057120 i s r e t r i e v e d , a n 0057140 d w i l l n e i t h e r g 0057160 e n e r a t e n o r c h e c 0057200 k C h e c k s u m p r o p e 0057220 r t i e s . 032 z 1 8 6 9 7 l 3 7 0057240 0 4 e 1 0 j \ g \r ( D e s i r e 0057260 d - P r o p e r t y p r o p e 0057300 r t y - n a m e ) 032 z 1 8 6 9 7 0057320 e 1 0 k 4 0 \ g 1 8 i 1 3 I \r I 0057340 n a c o m m a 376 001 \0 224 373 n d 0057360 f r o m u s e r t o s e 0057400 r v e r , r e q u e s t s t 0057420 h a t t h e s e r v e r s 0057440 u p p l y t h e s p e c i f 0057460 i e d p r o p e r t y i n 0057500 a l l f i l e p r o p e r t 0057520 y l i s t s i t g e n e r 0057540 a t e s i n r e s p o n s e 0057560 t o t h a t c o m m a n d 0057600 . ( T h a t i s , p r o 0057620 p e r t y - n a m e s h o u l 0057640 d b e o n e o f A u t h 0057660 o r , B y t e - S i z e , C 0057700 h e c k s u m , C r e a t i o 0057720 n - D a t e , D e v i c e , 0057740 D i r e c t o r y , N a m 376 001 0057760 \0 313 216 e - b o d y , R e a d - 0060000 D a t e , S e r v e r - F i l 0060020 e n a m e , S i z e , T y p 0060040 e , V e r s i o n , o r W 0060060 r i t e - D a t e . ) 032 z 1 8 6 0060100 9 7 l 3 7 0 4 e 1 0 j \ g 1 6 9 0060120 i 1 3 I 1 8 G 1 3 8 g \r I f n 0060140 o D e s i r e d - P r o p e r 0060160 t y p r o p e r t y i s p 0060200 r e s e n t i n t h e p r 0060220 o p e r t y l i s t o f a 0060240 f i l e - r e l a t e d c o 0060260 m m a n d s e n t f r o m 0060300 u s e r t o s e r v e r , 0060320 t h e s e r v e r m u s t 0060340 s e n d a l l k n o w n p 0060360 r o p 376 001 \0 371 034 e r t i e s o 0060400 f e a c h f i l e e n u m 0060420 e r a t e d . B u t i f 0060440 o n e o r m o r e D e s i 0060460 r e d - P r o p e r t y p r o 0060500 p e r t i e s a r e p r e s 0060520 e n t , t h e s e r v e r 0060540 m a y s e n d o n l y t h 0060560 e s p e c i f i e d p r o p 0060600 e r t i e s a n d o m i t 0060620 t h e r e s t . T h e s 0060640 e r v e r m a y c h o o s e 0060660 t o i g n o r e D e s i r 0060700 e d - P r o p e r t y r e q u 0060720 e s t s a l t o g e t h e r 0060740 a n d i n s t e a d s e n d 0060760 a l l k n o 376 001 \0 020 305 w n 0061000 p r o p e r t i e s ; i t m 0061020 a y a l s o i g n o r e D 0061040 e s i r e d - P r o p e r t y 0061060 r e q u e s t s f o r p r o 0061100 p e r t i e s i t c a n n o 0061120 t s e n d o r d o e s n ' 0061140 t k n o w a b o u t . 032 z 1 0061160 8 6 9 7 l 3 7 0 4 e 1 0 j \ 5 1 0061200 9 g \r 5 . 3 . D e f i n e d 0061220 c o m m a n d s 032 z 1 8 6 9 7 e 0061240 1 6 k 8 0 \ i g \r 5 . 3 . 1 . 0061260 B a s i c F T P c o m m a 0061300 n d m e s s a g e s . C o 0061320 m m a n d s ( a n d r e s p 0061340 o n s e s ) a r e g i v e n 0061360 b y m e a n s o f 376 001 \0 0061400 353 201 M a r k b y t e s o f 0061420 s p e c i f i e d t y p e s , 0061440 f o l l o w e d ( i n s o 0061460 m e c a s e s ) b y a s 0061500 i n g l e d a t a b y t e 0061520 c o n t a i n i n g a m a c 0061540 h i n e - r e a d a b l e c o 0061560 d e , f o l l o w e d ( i n 0061600 m o s t c a s e s ) b y 0061620 a p r o p e r t y l i s t 0061640 o r a h u m a n - r e a d a 0061660 b l e s t r i n g . T h e 0061700 c o m m a n d t e r m i n a 0061720 t e s a t t h e n e x t 0061740 M a r k . 032 z 1 8 6 9 7 e 1 0 j 0061760 k 4 0 \ b g 3 4 B \r I n t h e 0062000 d 376 001 \0 # T e s c r i p t i o 0062020 n s b e l o w , t h e m n 0062040 e m o n i c f o r t h e M 0062060 a r k i s g i v e n i n 0062100 s q u a r e b r a c k e t s , 0062120 f o l l o w e d b y c o d 0062140 e i f a m a c h i n e - r 0062160 e a d a b l e c o d e i s 0062200 u s e d i n t h a t c o m 0062220 m a n d , f o l l o w e d b 0062240 y a d e s c r i p t i o n 0062260 o f t h e d a t a t h a t 0062300 f o l l o w s . M a r k 0062320 t y p e s a r e g i v e n 0062340 i n d e c i m a l . C o r 0062360 r e c t c o m m a n d / r e p 0062400 l y s e q u 376 001 \0 332 243 e n c e 0062420 s w i l l b e g i v e n 0062440 i n t h e n e x t s e c t 0062460 i o n . 032 z 1 8 6 9 7 e 1 0 j k 0062500 4 0 \ g 9 4 i 4 I \r [ R e t r i 0062520 e v e ] p r o p e r t y - l 0062540 i s t \t [ M a r k t y p e 1 0062560 ] 032 z 1 9 0 5 0 l 3 5 2 8 d 2 9 0062600 9 9 e 1 0 ( 0 , 1 3 9 5 2 ) \ g 0062620 1 2 i 1 3 I G 6 g \r I s s u e d 0062640 b y t h e F T P u s e r 0062660 , r e q u e s t s t h a t 0062700 t h e s e r v e r s e n d 0062720 t o t h e u s e r t h e 0062740 f i l e ( s ) d e s c r i b e 0062760 d b y t h e s u p p l i e 0063000 d p r o p e r t y l 376 001 \0 0063020 + i s t . 032 z 1 8 6 9 7 l 3 7 0 0063040 4 e 1 0 j \ g \r [ S t o r e ] 0063060 p r o p e r t y - l i s t \t [ 0063100 M a r k t y p e 2 ] 032 z 1 9 0063120 0 5 0 l 3 5 2 8 d 2 9 9 9 e 1 0 0063140 \ g 9 i 1 3 I G 6 g \r I s s u e 0063160 d b y t h e F T P u s e 0063200 r , r e q u e s t s t h a t 0063220 t h e s e r v e r p r e p 0063240 a r e t o a c c e p t t h 0063260 e f i l e d e s c r i b e d 0063300 b y t h e p r o p e r t y 0063320 l i s t . T h i s c o m 0063340 m a n d i s o b s o l e t e 0063360 , h a v i n g b e e n s u 0063400 p p l a n t e d b y [ N e w 0063420 - 376 001 \0 310 S S t o r e ] ; h o 0063440 w e v e r , f o r c o m p a 0063460 t i b i l i t y w i t h o l 0063500 d e r s o f t w a r e , F T 0063520 P u s e r i m p l e m e n t 0063540 a t i o n s s h o u l d b e 0063560 p r e p a r e d f o r [ N 0063600 e w - S t o r e ] t o f a i 0063620 l a n d t o r e t r y t 0063640 h e o p e r a t i o n u s i 0063660 n g [ S t o r e ] . 032 z 1 8 6 0063700 9 7 l 3 7 0 4 e 1 0 j \ g 1 0 9 0063720 i 2 2 2 I \r [ N e w - S t o r e 0063740 ] p r o p e r t y - l i s t 0063760 \t [ M a r k t y p e 9 ] 032 z 0064000 1 9 0 5 0 l 3 5 2 8 d 2 9 9 9 e 0064020 1 0 \ g 1 3 376 001 \0 312 w i 1 3 I G 0064040 6 g \r I s s u e d b y t h e 0064060 F T P u s e r , r e q u e 0064100 s t s t h a t t h e s e r 0064120 v e r p r e p a r e t o a 0064140 c c e p t t h e f i l e d 0064160 e s c r i b e d b y t h e 0064200 p r o p e r t y l i s t . 0064220 ( T h e f o r m s o f t h 0064240 e [ S t o r e ] a n d [ N 0064260 e w - S t o r e ] c o m m a n 0064300 d s a r e t h e s a m e ; 0064320 t h e d i s t i n c t i o n 0064340 l i e s i n t h e f o r 0064360 m o f t h e s e r v e r ' 0064400 s r e s p o n s e . ) 032 z 1 8 0064420 6 9 7 l 3 7 0 4 e 1 0 376 001 \0 037 311 0064440 j \ g \r [ Y e s ] c o d e 0064460 h u m a n - r e a d a b l e - 0064500 s t r i n g \t [ M a r k t y p 0064520 e 3 ] 032 z 1 9 0 5 0 l 3 5 2 8 0064540 d 2 9 9 9 e 1 0 \ g 7 i 4 I 2 i 0064560 2 1 I G 6 g \r A p o s i t i v 0064600 e a c k n o w l e d g m e n t 0064620 t h a t s o m e p r e v i 0064640 o u s a c t i o n h a s c 0064660 o m p l e t e d s u c c e s s 0064700 f u l l y . T h i s m a y 0064720 b e g e n e r a t e d b y 0064740 e i t h e r t h e s e r v 0064760 e r o r t h e u s e r a 0065000 s a p p r o p r i a t e ( s 0065020 e e b e l o w ) . T h e c 0065040 376 001 \0 _ 214 o d e m a y s u p 0065060 p l y a d d i t i o n a l m 0065100 a c h i n e - r e a d a b l e 0065120 i n f o r m a t i o n o f p 0065140 o s s i b l e i n t e r e s t 0065160 t o t h e r e c e i v e r 0065200 , o r i t m a y b e z 0065220 e r o ; h o w e v e r , t h 0065240 e m e a n i n g o f a Y 0065260 e s i n t e r m s o f t 0065300 h e F T P c o m m a n d / r 0065320 e s p o n s e s e q u e n c e 0065340 i s d e t e r m i n e d e 0065360 n t i r e l y b y c o n t e 0065400 x t a n d n o t b y t h 0065420 e c o d e . 032 z 1 8 6 9 7 l 3 0065440 7 0 4 e 1 376 001 \0 027 5 0 j \ g 1 6 0065460 8 i 4 I 2 3 4 i 4 I \r [ N o ] 0065500 c o d e h u m a n - r e a 0065520 d a b l e - s t r i n g \t [ M a 0065540 r k t y p e 4 ] 032 z 1 9 0 5 0065560 0 l 3 5 2 8 d 2 9 9 9 e 1 0 \ g 0065600 6 i 4 I 2 i 2 1 I G 6 g \r A n 0065620 e g a t i v e a c k n o w l e 0065640 d g m e n t f o r s o m e 0065660 p r e v i o u s a c t i o n . 0065700 T h i s m a y b e g e 0065720 n e r a t e d b y e i t h e 0065740 r t h e s e r v e r o r 0065760 t h e u s e r a s a p p r 0066000 o p r i a t e ( s e e b e l 0066020 o w ) . T h e c o d e m 0066040 a y s u p p l y 376 001 \0 023 / a 0066060 d d i t i o n a l m a c h i n 0066100 e - r e a d a b l e i n f o r 0066120 m a t i o n o f p o s s i b 0066140 l e i n t e r e s t t o t 0066160 h e r e c e i v e r , o r 0066200 i t m a y b e z e r o ; 0066220 h o w e v e r , t h e m e a 0066240 n i n g o f a N o i n 0066260 t e r m s o f t h e F T P 0066300 c o m m a n d / r e s p o n s 0066320 e s e q u e n c e i s d e 0066340 t e r m i n e d e n t i r e l 0066360 y b y c o n t e x t a n d 0066400 n o t b y t h e c o d e 0066420 . 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0 0066440 j \ g 1 4 1 i 4 I 2 3 3 i 4 I 376 0066460 001 \0 026 # \r [ H e r e - i s - P r 0066500 o p e r t y - L i s t ] p r 0066520 o p e r t y - l i s t \t [ M a r 0066540 k t y p e 1 1 ] 032 z 1 9 0 5 0066560 0 l 3 5 2 8 d 2 9 9 9 e 1 0 \ g 0066600 2 5 i 1 3 I G 6 g \r S u p p l i 0066620 e s t h e f i l e p r o p 0066640 e r t y l i s t i n t h e 0066660 s e r v e r - t o - u s e r 0066700 d i r e c t i o n ( i n R e 0066720 t r i e v e , N e w - S t o r 0066740 e , E n u m e r a t e , a n 0066760 d N e w - E n u m e r a t e 0067000 c o m m a n d s ) . T h i s 0067020 c o m m a n d i s n o t 0067040 u s e d i n t h e u s e r 0067060 - t o - 376 001 \0 317 = s e r v e r 0067100 d i r e c t i o n s i n c e 0067120 t h e p r o p e r t y l i s 0067140 t i s s p e c i f i e d d 0067160 i r e c t l y i n t h e c 0067200 o m m a n d s u s e d t o 0067220 i n i t i a t e o p e r a t i 0067240 o n s . 032 z 1 8 6 9 7 l 3 7 0 4 0067260 e 1 0 j \ g \r [ H e r e - i s - 0067300 F i l e ] f i l e - d a t a 0067320 \t [ M a r k t y p e 5 ] 032 z 0067340 1 9 0 5 0 l 3 5 2 8 d 2 9 9 9 e 0067360 1 0 \ g 1 6 i 9 I G 6 g \r E f f 0067400 e c t s t h e a c t u a l 0067420 f i l e t r a n s f e r i n 0067440 e i t h e r d i r e c t i o 0067460 n . T h e f 376 001 \0 226 \0 i l 0067500 e - d a t a p h y s i c a l l 0067520 y c o n s i s t s o f a 0067540 s t r e a m o f 8 - b i t 0067560 b y t e s , b u t i t s l 0067600 o g i c a l i n t e r p r e t 0067620 a t i o n i s d e p e n d e 0067640 n t o n t h e T y p e a 0067660 n d B y t e - S i z e p r o 0067700 p e r t i e s c u r r e n t l 0067720 y i n e f f e c t . 032 z 1 8 0067740 6 9 7 l 3 7 0 4 e 1 0 j \ g 5 9 0067760 i 9 I \r [ V e r s i o n ] c 0070000 o d e h u m a n - r e a d a 0070020 b l e - s t r i n g \t [ M a r k 0070040 t y p e 8 ] 032 z 1 9 0 5 0 l 0070060 3 5 2 8 d 2 9 9 9 e 1 0 \ g 376 001 0070100 \0 , ? 1 1 i 4 I 2 i 2 1 I G 6 g 0070120 \r I d e n t i f i e s t h e 0070140 s e n d e r ' s p r o t o c o 0070160 l v e r s i o n . C o d e 0070200 d e n o t e s t h e p r o 0070220 t o c o l v e r s i o n , w 0070240 h i c h i s c u r r e n t l 0070260 y 1 , a n d h u m a n - r 0070300 e a d a b l e - s t r i n g i 0070320 s a r b i t r a r y i d e n 0070340 t i f y i n g t e x t . T 0070360 h e F T P u s e r s h o u 0070400 l d i s s u e t h i s c o 0070420 m m a n d i m m e d i a t e l 0070440 y u p o n o p e n i n g a 0070460 c o n n e c t i o n , a n d 0070500 t h 376 001 \0 t 370 e s e r v e r 0070520 s h o u l d r e s p o n d 0070540 w i t h a V e r s i o n r 0070560 e p l y . I t i s t h e 0070600 r e s p o n s i b i l i t y 0070620 o f t h e u s e r t o c 0070640 h e c k f o r c o m p a t i 0070660 b l e p r o t o c o l v e r 0070700 s i o n s . 032 z 1 8 6 9 7 l 3 7 0070720 0 4 e 1 0 j \ g 4 3 i 4 I 5 7 i 0070740 2 1 I \r [ C o m m e n t ] h 0070760 u m a n - r e a d a b l e - s t 0071000 r i n g \t [ M a r k t y p e 0071020 7 ] 032 z 1 9 0 5 0 l 3 5 2 8 d 2 0071040 9 9 9 e 1 0 \ g 1 1 i 2 1 I G 6 0071060 g \r U s e d t o s u p p l y 0071100 c o m m e n t 376 001 \0 350 305 a r y 0071120 , i n d i c a t e n o n - f 0071140 a t a l e r r o r s , e t c 0071160 . I t i s a n o - o p 0071200 w i t h r e s p e c t t o 0071220 p r o t o c o l i n t e r a 0071240 c t i o n s a n d n e e d 0071260 n o t b e a c k n o w l e d 0071300 g e d . T h e F T P u s 0071320 e r p r o g r a m s h o u l 0071340 d p r o b a b l y d i s p l 0071360 a y f o r t h e h u m a n 0071400 u s e r a n y s u c h c 0071420 o m m e n t s i t r e c e i 0071440 v e s f r o m t h e s e r 0071460 v e r . 032 z 1 8 6 9 7 l 3 7 0 4 0071500 e 1 0 j \ g \r [ E n d - o 376 001 \0 0071520 O Y f - C o m m a n d ] \t [ M a 0071540 r k t y p e 6 ] 032 z 1 9 0 5 0071560 0 l 3 5 2 8 d 2 9 9 9 e 1 0 \ g 0071600 1 6 G 6 g \r T h i s c o m m a 0071620 n d ( h e r e a f t e r a b 0071640 b r e v i a t e d E O C ) i 0071660 n f o r m s t h e r e c e i 0071700 v e r t h a t t h e s e n 0071720 d e r h a s g e n e r a t e 0071740 d a c o m p l e t e c o m 0071760 m a n d o r c o m m a n d 0072000 s e q u e n c e a n d n o w 0072020 c a n n o t p r o c e e d 0072040 u n t i l s o m e r e s p o 0072060 n s e i s r e t u r n e d . 0072100 I n o t h e r w o r d s 0072120 , 376 001 \0 330 ) E O C i s u s 0072140 e d t o \a \a g i v e c o n 0072160 t r o l ' ' t o t h e o t 0072200 h e r p a r t y . I n g 0072220 e n e r a l , e a c h c o m 0072240 m a n d i s s u e d b y t 0072260 h e u s e r s h o u l d b 0072300 e f o l l o w e d b y E O 0072320 C , a n d t h e e n d o 0072340 f t h e s e r v e r ' s r 0072360 e s p o n s e t o a c o m 0072400 m a n d - E O C s e q u e n c 0072420 e s h o u l d i n t u r n 0072440 b e m a r k e d b y E O 0072460 C . T h e r e i s n o 0072500 d a t a f o l l o w i n g t 0072520 h e E O C : 376 001 \0 5 375 i t 0072540 i s f o l l o w e d i m m e 0072560 d i a t e l y i n t h e d 0072600 a t a s t r e a m ( t h o u 0072620 g h p e r h a p s a f t e r 0072640 a n a r b i t r a r y i n 0072660 t e r v a l o f t i m e ) 0072700 b y a n o t h e r M a r k . 0072720 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0 j 0072740 \ g \r 5 . 3 . 2 . O p t i o 0072760 n a l F T P c o m m a n d 0073000 m e s s a g e s 032 z 1 9 0 5 0 e 0073020 1 0 j \ b g \r [ E n u m e r a t 0073040 e ] p r o p e r t y - l i s 0073060 t \t [ M a r k t y p e 1 0 ] 0073100 032 z 1 9 0 5 0 l 3 5 2 8 d 2 9 9 0073120 9 e 1 0 \ g 1 3 i 1 3 I 376 001 \0 363 0073140 312 G 6 g \r I s s u e d b y t 0073160 h e F T P u s e r , r e q 0073200 u e s t s t h e s e r v e r 0073220 t o g e n e r a t e a c 0073240 o m p l e t e p r o p e r t y 0073260 l i s t f o r e a c h o 0073300 f t h e f i l e s d e n o 0073320 t e d b y p r o p e r t y - 0073340 l i s t . I f t h e f i 0073360 l e n a m e s u b m i t t e 0073400 d i s i n t e r p r e t e d 0073420 b y t h e s e r v e r t 0073440 o d e n o t e m u l t i p l 0073460 e f i l e s , t h e s e r 0073500 v e r m a y g e n e r a t e 0073520 m u l t i p l e p r o p e r 0073540 t 376 001 \0 200 341 y l i s t s i n 0073560 r e s p o n s e ( e a c h 0073600 p r e c e d e d b y a [ H 0073620 e r e - i s - P r o p e r t y - 0073640 L i s t ] M a r k b y t e ) 0073660 . T h i s c o m m a n d 0073700 i s o b s o l e t e , h a v 0073720 i n g b e e n s u p p l a n 0073740 t e d b y [ N e w - E n u m 0073760 e r a t e ] ; h o w e v e r , 0074000 f o r c o m p a t i b i l i 0074020 t y w i t h o l d e r s o 0074040 f t w a r e , F T P u s e r 0074060 i m p l e m e n t a t i o n s 0074100 s h o u l d b e p r e p a 0074120 r e d f o r [ N e w - E n u 0074140 m e r a t e 376 001 \0 S 036 ] t o 0074160 f a i l a n d t o r e t r 0074200 y t h e o p e r a t i o n 0074220 u s i n g [ E n u m e r a t e 0074240 ] . 032 z 1 8 6 9 7 l 3 7 0 4 e 1 0074260 0 j \ g 1 1 4 i 1 3 I 2 0 2 i 2 0074300 3 4 I \r [ N e w - E n u m e r a 0074320 t e ] p r o p e r t y - l i 0074340 s t \t [ M a r k t y p e 1 2 0074360 ] 032 z 1 9 0 5 0 l 3 5 2 8 d 2 9 0074400 9 9 e 1 0 \ g 1 7 i 1 3 I G 6 g 0074420 \r I s s u e d b y t h e F 0074440 T P u s e r , r e q u e s t 0074460 s t h e s e r v e r t o 0074500 g e n e r a t e a c o m p l 0074520 e t e p r o p e r t y l i s 0074540 t f o r e a c h 376 001 \0 340 371 0074560 o f t h e f i l e s d e n 0074600 o t e d b y p r o p e r t y 0074620 - l i s t . I f t h e f 0074640 i l e n a m e s u b m i t t 0074660 e d i s i n t e r p r e t e 0074700 d b y t h e s e r v e r 0074720 t o d e n o t e m u l t i p 0074740 l e f i l e s , t h e s e 0074760 r v e r m a y g e n e r a t 0075000 e m u l t i p l e p r o p e 0075020 r t y l i s t s i n r e s 0075040 p o n s e ( c o n c a t e n a 0075060 t e d t o g e t h e r i n 0075100 a s i n g l e [ H e r e - i 0075120 s - P r o p e r t y - L i s t ] 0075140 m e s s a g e ) . ( T h e 0075160 376 001 \0 177 = f o r m s o f t 0075200 h e [ E n u m e r a t e ] a 0075220 n d [ N e w - E n u m e r a t 0075240 e ] c o m m a n d s a r e 0075260 t h e s a m e ; t h e d i 0075300 s t i n c t i o n l i e s i 0075320 n t h e f o r m o f t h 0075340 e s e r v e r ' s r e s p o 0075360 n s e . ) 032 z 1 8 6 9 7 l 3 7 0 0075400 4 e 1 0 j \ g 1 1 4 i 1 3 I \r [ 0075420 D e l e t e ] p r o p e r t 0075440 y - l i s t \t [ M a r k t y p 0075460 e 1 4 ] 032 z 1 9 0 5 0 l 3 5 2 0075500 8 d 2 9 9 9 e 1 0 \ g 1 0 i 1 3 0075520 I G 6 g \r I s s u e d b y t 0075540 h e F T P u s e r , r e q 0075560 u e s t s 376 001 \0 , 026 t h e s 0075600 e r v e r t o d e l e t e 0075620 t h e s p e c i f i e d f i 0075640 l e ( s ) . 032 z 1 8 6 9 7 l 3 7 0075660 0 4 e 1 0 j \ g \r [ R e n a m e 0075700 ] o l d - p r o p e r t y - 0075720 l i s t n e w - p r o p e r 0075740 t y - l i s t \t [ M a r k t y 0075760 p e 1 5 ] 032 z 1 9 0 5 0 l 3 5 0076000 2 8 d 2 9 9 9 e 1 0 \ g 1 0 i 1 0076020 7 I 2 i 1 7 I G 6 g \r I s s u e 0076040 d b y t h e F T P u s e 0076060 r , a s k i n g t h e s e 0076100 r v e r t o r e n a m e t 0076120 h e f i l e s p e c i f i e 0076140 d i n t h e f i r s t p 0076160 r o p e r t y l i 376 001 \0 336 9 s 0076200 t , t o m a t c h t h e 0076220 n a m e ( a n d p e r h a p 0076240 s o t h e r p r o p e r t i 0076260 e s ) s p e c i f i e d i n 0076300 t h e s e c o n d . 032 z 1 8 0076320 6 9 7 l 3 7 0 4 e 1 0 j \ g \r 5 0076340 . 4 . C o m m a n d - R e s p 0076360 o n s e s e q u e n c e s 032 z 0076400 1 8 6 9 7 e 1 6 k 8 0 ( 1 2 7 0 0076420 ) \ i g \r T h e c o m p l e t 0076440 e u s e r - s e r v e r p r 0076460 o t o c o l s f o r e a c h 0076500 c o m m a n d a r e d o c 0076520 u m e n t e d i n t h e f 0076540 l o w c h a r t s a t t a c h 0076560 e d t o t h i s s p e c 376 0076600 001 \0 365 227 i f i c a t i o n . 0076620 C o m m a n d s f r o m u s 0076640 e r t o s e r v e r a r e 0076660 p r e f i x e d b y \a \a U 0076700 : ' ' ; f r o m s e r v e r 0076720 t o u s e r b y \a \a S : 0076740 ' ' . C o m m e n t a r y 0076760 i s i n c l u d e d i n i 0077000 t a l i c s . 032 z 1 8 6 9 7 e 1 0077020 0 j k 4 0 \ g 2 2 9 i 7 I \r T h 0077040 e s e f l o w c h a r t s d 0077060 e s c r i b e o n l y t h e 0077100 p r o t o c o l s t h e m s 0077120 e l v e s , a n d d o n o 0077140 t s h o w a n y l o c a l 0077160 a c t i o n s t h a t t h 0077200 e t w 376 001 \0 253 : o p a r t i 0077220 e s m u s t t a k e . S 0077240 u c h a c t i o n s a r e 0077260 n e c e s s a r i l y f i l e 0077300 s y s t e m o r a p p l i 0077320 c a t i o n d e p e n d e n t 0077340 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0077360 g \r E a c h s e q u e n c e 0077400 b e g i n s w i t h t h e 0077420 F T P u s e r i n c o n t 0077440 r o l , a n d e n d s w i 0077460 t h t h e u s e r a g a i 0077500 n i n c o n t r o l . A 0077520 p a r t y s e n d s m e s 0077540 s a g e s o n l y w h e n 0077560 i t i s i n c o n t r o l 0077600 . S e n d i n 376 001 \0 345 346 g 0077620 [ E O C ] s w i t c h e s c 0077640 o n t r o l t o t h e o t 0077660 h e r p a r t y . W h e r 0077700 e a b r a n c h o c c u r 0077720 s i n t h e f l o w c h a 0077740 r t , t h e p a r t y t h 0077760 e n i n c o n t r o l m a 0100000 y f o l l o w e i t h e r 0100020 b r a n c h a n d s e n d 0100040 t h e m e s s a g e s h o w 0100060 n a t t h e e n d o f 0100100 t h a t b r a n c h . T h 0100120 e n o r m a l f l o w o f 0100140 c o n t r o l i s s t r a 0100160 i g h t d o w n f r o m t 0100200 h e t o p ( a n d l o 376 001 0100220 \0 200 036 o p i n g b a c k u p 0100240 a t t h e l e f t i n 0100260 t h o s e p r o t o c o l s 0100300 t h a t c o n t a i n l o o 0100320 p s ) ; e r r o r s a n d 0100340 o t h e r e x c e p t i o n s 0100360 b r a n c h o f f t o t 0100400 h e r i g h t . 032 z 1 8 6 9 7 0100420 e 1 0 j k 4 0 \ g 2 7 4 i 6 I \r 0100440 A t a n y p o i n t i n 0100460 t h e p r o t o c o l , t h 0100500 e p a r t y t h e n i n 0100520 c o n t r o l m a y i n s e 0100540 r t a [ C o m m e n t ] m 0100560 e s s a g e i m m e d i a t e 0100600 l y p r e c e d i n g i t s 0100620 n e 376 001 \0 5 w x t c o m m a 0100640 n d ; s u c h a m e s s a 0100660 g e d o e s n o t a l t e 0100700 r t h e f l o w o f c o 0100720 n t r o l . A p a r t f r 0100740 o m C o m m e n t s , a n 0100760 o c c u r r e n c e o f a 0101000 c o m m a n d - r e s p o n s e 0101020 s e q u e n c e o t h e r 0101040 t h a n t h o s e s h o w n 0101060 i n t h e f l o w c h a r 0101100 t s i s a v i o l a t i o 0101120 n o f t h e p r o t o c o 0101140 l a n d i s g r o u n d s 0101160 f o r a b o r t i n g t h 0101200 e c o n n e c t i o n . 032 z 1 0101220 8 6 9 7 e 1 0 j 376 001 \0 376 \0 k 4 0 0101240 \ g \r T h e c o m m a n d a 0101260 t t h e b e g i n n i n g 0101300 o f e v e r y s e q u e n c 0101320 e i n c l u d e s a p r o 0101340 p e r t y l i s t d e s i g 0101360 n a t i n g s o m e f i l e 0101400 ( o r p o t e n t i a l f 0101420 i l e ) o n t h e s e r v 0101440 e r . T h e f i l e m a 0101460 y b e d e s c r i b e d b 0101500 y S e r v e r - F i l e n a m 0101520 e , D e v i c e , D i r e c 0101540 t o r y , N a m e - B o d y , 0101560 a n d V e r s i o n p r o 0101600 p e r t i e s i n a n y c 0101620 o m b i n a t i o n p e 376 001 \0 0101640 330 w r m i t t e d b y t h e 0101660 s e r v e r ( a s w a s 0101700 d i s c u s s e d i n s e c 0101720 t i o n 5 . 2 . 1 ) . T h 0101740 e p r o p e r t y l i s t 0101760 m u s t i n c l u d e n o t 0102000 o n l y f i l e n a m e i 0102020 n f o r m a t i o n b u t a 0102040 l s o a n y c r e d e n t i 0102060 a l s r e q u i r e d t o 0102100 g a i n a c c e s s t o t 0102120 h e s e r v e r ( U s e r - 0102140 N a m e , U s e r - P a s s w 0102160 o r d , e t c . ) , a n d 0102200 a l s o a n y a d d i t i o 0102220 n a l p r o p e r t i e s i 0102240 n t 376 001 \0 354 023 e n d e d t o 0102260 m o d i f y t h e s e r v e 0102300 r ' s s u b s e q u e n t a 0102320 c t i o n s ( D e s i r e d - 0102340 P r o p e r t y ) . 032 z 1 8 6 9 0102360 7 e 1 0 j k 4 0 \ g \r 5 . 4 . 1 0102400 . R e t r i e v e a n d 0102420 D e l e t e . T h e s e t 0102440 w o c o m m a n d s h a v e 0102460 s i m i l a r p r o t o c o 0102500 l s . E a c h i s i n i 0102520 t i a t e d w i t h a p r 0102540 o p e r t y l i s t d e s i 0102560 g n a t i n g o n e o r m 0102600 o r e e x i s t i n g f i l 0102620 e s o n t h e s e r v e r 0102640 . I f n 376 001 \0 t 326 o s u 0102660 c h f i l e e x i s t s , 0102700 o r t h e c o m m a n d i 0102720 s o t h e r w i s e u n a c 0102740 c e p t a b l e ( e . g . , 0102760 i n v a l i d U s e r - N a m 0103000 e a n d U s e r - P a s s w 0103020 o r d ) , t h e n t h e s 0103040 e r v e r r e j e c t s t h 0103060 e e n t i r e c o m m a n d 0103100 w i t h a [ N o ] a n d 0103120 t h e c o m m a n d t e r 0103140 m i n a t e s w i t h t h e 0103160 u s e r a g a i n i n c 0103200 o n t r o l . 032 z 1 8 6 9 7 e 1 0103220 0 j k 4 0 \ b g 2 8 B \r O t h e 0103240 r w i s e , t h e r 376 001 \0 246 0103260 341 e m a i n d e r o f t h e 0103300 p r o t o c o l i s e x e 0103320 c u t e d f o r e a c h f 0103340 i l e m a t c h i n g t h e 0103360 i n i t i a l r e q u e s t 0103400 . T h e m a i n l o o p 0103420 i s n o t l e f t u n t 0103440 i l a l l s u c h f i l e 0103460 s h a v e b e e n e n u m 0103500 e r a t e d ; a n y e r r o 0103520 r t h a t o c c u r s a p 0103540 p l i e s o n l y t o a n 0103560 i n d i v i d u a l f i l e 0103600 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0103620 g \r T h e s e r v e r r e t 0103640 u r n s a [ H e r e - i s - 0103660 P 376 001 \0 316 a r o p e r t y - L i 0103700 s t ] m e s s a g e d e s c 0103720 r i b i n g a s c o m p l e 0103740 t e l y a s p o s s i b l e 0103760 t h e s p e c i f i c f i 0104000 l e u n d e r c o n s i d e 0104020 r a t i o n . U n l e s s 0104040 o t h e r w i s e s p e c i f 0104060 i e d b y t h e u s e r 0104100 ( b y D e s i r e d - P r o p 0104120 e r t y p r o p e r t i e s ) 0104140 , t h e S e r v e r - F i l 0104160 e n a m e , N a m e - B o d y 0104200 , T y p e , a n d ( i f 0104220 T y p e i s B i n a r y ) 0104240 B y t e - S i z e p r o p e r 0104260 t i e s a 376 001 \0 357 \n r e m a 0104300 n d a t o r y , a s a r e 0104320 D i r e c t o r y a n d V e 0104340 r s i o n i f t h e s e r 0104360 v e r f i l e s y s t e m 0104400 h a s s u c h t h i n g s . 0104420 T h e s e r v e r i s 0104440 s t r o n g l y e n c o u r a 0104460 g e d t o i n c l u d e a 0104500 l l o t h e r k n o w n f 0104520 i l e p r o p e r t i e s t 0104540 h a t a r e r e p r e s e n 0104560 t a b l e a s F T P p r o 0104600 p e r t i e s . 032 z 1 8 6 9 7 e 0104620 1 0 j k 4 0 \ g \r A t t h i s 0104640 p o i n t , t h e F T P 0104660 u s e r p r o c e s 376 001 \0 / 033 0104700 s e x a m i n e s t h e s 0104720 e r v e r ' s p r o p e r t y 0104740 l i s t ( p o s s i b l y 0104760 i n t e r a c t i n g w i t h 0105000 a h u m a n u s e r ) , 0105020 a n d t h e n c o m m a n d 0105040 s t h e s e r v e r e i t 0105060 h e r t o c a r r y o u t 0105100 t h e o p e r a t i o n ( 0105120 R e t r i e v e o r D e l e 0105140 t e ) o r t o s k i p t 0105160 o t h e n e x t f i l e . 0105200 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 0105220 \r I n t h e c a s e o f 0105240 R e t r i e v e , t h e s e 0105260 r v e r n o w s e n d s t 0105300 376 001 \0 b \r h e c o n t e n t s 0105320 o f t h e f i l e , f o 0105340 l l o w e d b y a [ Y e s 0105360 ] m e s s a g e t o m a r 0105400 k t h e e n d o f d a t 0105420 a . T h e r e a r e t w 0105440 o p o s s i b l e p o i n t 0105460 s o f f a i l u r e . I 0105500 f t h e s e r v e r c a n 0105520 n o t b e g i n t r a n s m 0105540 i s s i o n ( e . g . , b e 0105560 c a u s e t h e f i l e i 0105600 s r e a d - p r o t e c t e d 0105620 a g a i n s t t h e u s e 0105640 r ) , t h e n i t s e n d 0105660 s a [ N o ] m e s s a g e 0105700 i n r 376 001 \0 H r e s p o n s 0105720 e t o t h e u s e r ' s 0105740 [ Y e s ] . I f t h e s 0105760 e r v e r d e t e c t s a 0106000 f a i l u r e i n m i d - t 0106020 r a n s m i s s i o n , i t 0106040 s e n d s a [ N o ] f o l 0106060 l o w i n g t h e ( p o s s 0106100 i b l y t r u n c a t e d ) 0106120 f i l e d a t a . ( A u 0106140 s e r - d e t e c t e d t r a 0106160 n s m i s s i o n f a i l u r 0106200 e r e s u l t s o n l y i 0106220 n u s e r - l o c a l r e c 0106240 o v e r y a c t i o n s a n 0106260 d r e q u i r e s n o p r 0106300 o v i s i o n s i 376 001 \0 245 * n 0106320 t h e p r o t o c o l . ) 032 0106340 z 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 0106360 I n a n y e v e n t , t h 0106400 e s e r v e r i s n o w 0106420 i n c o n t r o l ( s i n c 0106440 e i t s l a s t [ Y e s ] 0106460 o r [ N o ] w a s n o t 0106500 t e r m i n a t e d b y [ 0106520 E O C ] ) , a n d p r o c e 0106540 e d s e i t h e r t o s e 0106560 n d a [ H e r e - i s - P r 0106600 o p e r t y - L i s t ] m e s 0106620 s a g e f o r t h e n e x 0106640 t f i l e o r t o s e n 0106660 d a n [ E O C ] t o t e 0106700 r m i n a t e t h e R e t 376 0106720 001 \0 f 311 r i e v e p r o t o c 0106740 o l . 032 z 1 8 6 9 7 e 1 0 j k 4 0106760 0 \ g \r 5 . 4 . 2 . S t o r 0107000 e a n d N e w - S t o r e . 0107020 T h e s e c o m m a n d s 0107040 a r e i n i t i a t e d w 0107060 i t h a p r o p e r t y l 0107100 i s t d e s i g n a t i n g 0107120 s o m e f i l e ( e x i s t 0107140 i n g o r n e w ) i n t o 0107160 w h i c h t h e u s e r 0107200 d e s i r e s t o s t o r e 0107220 d a t a . T h i s p r o 0107240 p e r t y l i s t s h o u l 0107260 d b e a s c o m p l e t e 0107300 a s p o s s i b l e ; i n 0107320 p a r 376 001 \0 005 & t i c u l a r 0107340 , t h e T y p e a n d ( 0107360 i f T y p e i s B i n a r 0107400 y ) B y t e - S i z e p r o 0107420 p e r t i e s a r e m a n d 0107440 a t o r y . T h e u s e r 0107460 i s s t r o n g l y e n c 0107500 o u r a g e d t o i n c l u 0107520 d e a l l o t h e r k n o 0107540 w n f i l e p r o p e r t i 0107560 e s t h a t a r e r e p r 0107600 e s e n t a b l e a s F T P 0107620 p r o p e r t i e s . 032 z 1 8 0107640 6 9 7 e 1 0 j k 4 0 \ b g 2 8 B 0107660 \r I f t h e f i l e c a n 0107700 n o t b e s t o r e d i n 0107720 t o ( e . g . , 376 001 \0 255 033 w 0107740 r i t e p r o t e c t e d , 0107760 n o d i s k s p a c e a v 0110000 a i l a b l e , e t c . ) , 0110020 o r t h e c o m m a n d i 0110040 s o t h e r w i s e u n a c 0110060 c e p t a b l e ( e . g . , 0110100 i n v a l i d U s e r - N a m 0110120 e a n d U s e r - P a s s w 0110140 o r d ) , t h e n t h e s 0110160 e r v e r r e j e c t s t h 0110200 e e n t i r e c o m m a n d 0110220 w i t h a [ N o ] a n d 0110240 t h e c o m m a n d t e r 0110260 m i n a t e s w i t h t h e 0110300 u s e r a g a i n i n c 0110320 o n t r o l . 032 z 1 8 6 9 7 376 001 0110340 \0 0 207 e 1 0 j k 4 0 \ g \r I n 0110360 t h e c a s e o f [ N e w 0110400 - S t o r e ] , t h e s e r 0110420 v e r n o w r e t u r n s 0110440 a s c o m p l e t e a p r 0110460 o p e r t y l i s t a s i 0110500 s p o s s i b l e b e f o r 0110520 e t h e f i l e d a t a 0110540 h a s a c t u a l l y b e e 0110560 n t r a n s f e r r e d . 0110600 U n l e s s o t h e r w i s e 0110620 s p e c i f i e d b y t h 0110640 e u s e r ( b y D e s i r 0110660 e d - P r o p e r t y p r o p 0110700 e r t i e s ) , t h i s m u 0110720 s t i n c l u d e t h e S 0110740 e r v 376 001 \0 y 353 e r - F i l e n 0110760 a m e a n d a l l f i l e 0111000 n a m e p r o p e r t i e s 0111020 i m p l e m e n t e d b y t 0111040 h e s e r v e r . T h e 0111060 u s e r m a y n o w e x a 0111100 m i n e t h i s p r o p e r 0111120 t y l i s t a n d c h o o 0111140 s e n o t t o s t o r e 0111160 t h e f i l e a f t e r a 0111200 l l . 032 z 1 8 6 9 7 e 1 0 j k 4 0111220 0 \ g \r I n t h e n o r m a 0111240 l s i t u a t i o n , t h e 0111260 u s e r n o w s e n d s 0111300 t h e c o n t e n t s o f 0111320 t h e f i l e , f o l l o w 0111340 e d b y a 376 001 \0 006 - [ Y e 0111360 s ] m e s s a g e t o m a 0111400 r k t h e e n d o f d a 0111420 t a . I f t h e f i l e 0111440 i s s t o r e d s u c c e 0111460 s s f u l l y , t h e s e r 0111500 v e r r e s p o n d s w i t 0111520 h a [ Y e s ] , a n d t 0111540 h e S t o r e o r N e w - 0111560 S t o r e p r o t o c o l t 0111600 e r m i n a t e s . 032 z 1 8 6 9 0111620 7 e 1 0 j k 4 0 \ g \r T h e r e 0111640 a r e t w o p o s s i b l 0111660 e p o i n t s o f f a i l 0111700 u r e . I f t h e u s e 0111720 r d e t e c t s a f a i l 0111740 u r e i n m i d - t r 376 001 \0 0111760 277 . a n s m i s s i o n , i t 0112000 s e n d s a [ N o ] f o 0112020 l l o w i n g t h e ( p o s 0112040 s i b l y t r u n c a t e d ) 0112060 f i l e d a t a . I f 0112100 t h e s e r v e r d e t e c 0112120 t s a f a i l u r e i n 0112140 m i d - t r a n s m i s s i o n 0112160 , i t c o n s u m e s a n 0112200 d d i s c a r d s t h e r 0112220 e m a i n d e r o f t h e 0112240 f i l e d a t a a n d t h 0112260 e n r e s p o n d s w i t h 0112300 [ N o ] t o i n d i c a t 0112320 e f a i l u r e . 032 z 1 8 6 9 0112340 7 e 1 0 j k 4 0 \ g \r 5 . 4 . 3 0112360 . 376 001 \0 247 017 E n u m e r a t 0112400 e a n d N e w - E n u m e r 0112420 a t e . T h e s e c o m m 0112440 a n d s a r e i n i t i a t 0112460 e d w i t h a p r o p e r 0112500 t y l i s t d e s i g n a t 0112520 i n g o n e o r m o r e 0112540 e x i s t i n g f i l e s o 0112560 n t h e s e r v e r . I 0112600 f n o s u c h f i l e e 0112620 x i s t s , o r t h e c o 0112640 m m a n d i s o t h e r w i 0112660 s e u n a c c e p t a b l e 0112700 ( e . g . , i n v a l i d U 0112720 s e r - N a m e a n d U s e 0112740 r - P a s s w o r d ) , t h e 0112760 n t h e s 376 001 \0 i \r e r v e 0113000 r r e j e c t s t h e e n 0113020 t i r e c o m m a n d w i t 0113040 h a [ N o ] a n d t h e 0113060 c o m m a n d t e r m i n a 0113100 t e s w i t h t h e u s e 0113120 r a g a i n i n c o n t r 0113140 o l . 032 z 1 8 6 9 7 e 1 0 j k 4 0113160 0 \ b g 3 6 B \r O t h e r w i s 0113200 e , t h e s e r v e r s e 0113220 n d s a p r o p e r t y l 0113240 i s t f o r e a c h f i l 0113260 e m a t c h i n g t h e i 0113300 n i t i a l r e q u e s t . 0113320 I n [ E n u m e r a t e ] , 0113340 e a c h p r o p e r t y l 0113360 i s t i s s e n t 376 001 \0 z 0113400 324 a s a s e p a r a t e [ 0113420 H e r e - i s - P r o p e r t y 0113440 - L i s t ] m e s s a g e , 0113460 w h e r e a s i n [ N e w - 0113500 E n u m e r a t e ] a l l t 0113520 h e p r o p e r t y l i s t 0113540 s a r e c o n c a t e n a t 0113560 e d a n d s e n t a s a 0113600 s i n g l e [ H e r e - i s 0113620 - P r o p e r t y - L i s t ] 0113640 m e s s a g e . 032 z 1 8 6 9 7 e 0113660 1 0 j k 4 0 \ g \r U n l e s s 0113700 o t h e r w i s e s p e c i f 0113720 i e d b y t h e u s e r 0113740 ( b y D e s i r e d - P r o p 0113760 e r t y p r o p e r t i e s ) 0114000 , 376 001 \0 T 361 t h e s e p r o 0114020 p e r t y l i s t s s h o u 0114040 l d b e a s c o m p l e t 0114060 e a s p o s s i b l e . 0114100 I n p a r t i c u l a r , t 0114120 h e S e r v e r - F i l e n a 0114140 m e , N a m e - B o d y , T 0114160 y p e , a n d ( i f T y p 0114200 e i s B i n a r y ) B y t 0114220 e - S i z e p r o p e r t i e 0114240 s a r e m a n d a t o r y , 0114260 a s a r e D i r e c t o r 0114300 y a n d V e r s i o n i f 0114320 t h e s e r v e r f i l e 0114340 s y s t e m h a s s u c h 0114360 t h i n g s . T h e s e 0114400 r v e r i 376 001 \0 221 8 s s t r 0114420 o n g l y e n c o u r a g e d 0114440 t o i n c l u d e a l l 0114460 o t h e r k n o w n f i l e 0114500 p r o p e r t i e s t h a t 0114520 a r e r e p r e s e n t a b 0114540 l e a s F T P p r o p e r 0114560 t i e s . 032 z 1 8 6 9 7 e 1 0 j 0114600 k 4 0 \ g \r 5 . 4 . 4 . R e 0114620 n a m e . T h i s c o m m 0114640 a n d i s i n i t i a t e d 0114660 w i t h t w o p r o p e r 0114700 t y l i s t s d e s i g n a 0114720 t i n g a n e x i s t i n g 0114740 f i l e a n d a n e w 0114760 f i l e o n t h e s e r v 0115000 e r . A n y r e 376 001 \0 317 306 0115020 q u i r e d n o n - f i l e - 0115040 r e l a t e d p r o p e r t i 0115060 e s ( e . g . , U s e r - N 0115100 a m e ) m u s t b e p r e 0115120 s e n t i n t h e f i r s 0115140 t p r o p e r t y l i s t 0115160 b u t n e e d n o t b e 0115200 i n t h e s e c o n d . 0115220 T h e s e r v e r ' s r e s 0115240 p o n s e i s s t r a i g h 0115260 t f o r w a r d : e i t h e r 0115300 i t c a r r i e s o u t 0115320 t h e r e q u e s t a n d 0115340 r e s p o n d s [ Y e s ] o 0115360 r i t r e s p o n d s [ N 0115400 o ] . 032 z 1 8 6 9 7 e 1 0 j k 4 0115420 376 001 \0 237 I 0 \ b g 1 5 B \r I f 0115440 t h e s e c o n d p r o p e 0115460 r t y l i s t c o n t a i n 0115500 s a n y f i l e p r o p e 0115520 r t i e s i n a d d i t i o 0115540 n t o t h e n e w f i l 0115560 e n a m e , t h e s e r v 0115600 e r m a y c h a n g e t h 0115620 o s e p r o p e r t i e s t 0115640 o t h e s p e c i f i e d 0115660 v a l u e s . ( T h i s i 0115700 s i m p l e m e n t e d i n 0115720 I F S r e l e a s e 1 . 3 0115740 8 b u t i n n o o t h e 0115760 r F T P s e r v e r s a t 0116000 t h e t i m e o f t h i 0116020 s w r i 376 001 \0 344 351 t i n g . ) 0116040 T h e s e c o n d f i l 0116060 e n a m e m a y a l s o 0116100 b e t h e s a m e a s t 0116120 h e f i r s t ; t h i s i 0116140 s u s e f u l b o t h f o 0116160 r c h a n g i n g f i l e 0116200 p r o p e r t i e s a n d f 0116220 o r c h a n g i n g t h e 0116240 c a p i t a l i z a t i o n o 0116260 f a f i l e n a m e . 032 z 0116300 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 5 0116320 . 5 . Y e s a n d N o r 0116340 e p l y c o d e a s s i g n 0116360 m e n t s 032 z 1 8 6 9 7 e 1 6 k 0116400 8 0 \ i g \r A m a c h i n e - 0116420 r e a d a b l e a 376 001 \0 351 025 r 0116440 g u m e n t m a y o p t i o 0116460 n a l l y b e s u p p l i e 0116500 d w i t h Y e s a n d N 0116520 o r e p l i e s . Z e r o 0116540 s h o u l d b e s u p p l 0116560 i e d i n t h e a b s e n 0116600 c e o f a n y s u c h c 0116620 o d e . T h e i n t e n t 0116640 o f t h e s e c o d e s 0116660 i s t o f a c i l i t a t e 0116700 m e c h a n i c a l h a n d 0116720 l i n g o f c e r t a i n 0116740 e x c e p t i o n a l c o n d 0116760 i t i o n s ; h o w e v e r , 0117000 b o t h g e n e r a t i o n 0117020 a n d i n t e r p r e t a 376 0117040 001 \0 233 002 t i o n o f r e p l 0117060 y c o d e s i s e n t i r 0117100 e l y o p t i o n a l , a n 0117120 d t h e c o m m a n d / r e 0117140 p l y s e q u e n c e i s 0117160 u n a f f e c t e d b y t h 0117200 e m . T h e i n c l u s i 0117220 o n o f i n f o r m a t i v 0117240 e h u m a n - r e a d a b l e 0117260 s t r i n g s i s s t r o 0117300 n g l y e n c o u r a g e d . 0117320 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 0117340 \r C o d e s h a v e n o t 0117360 b e e n a s s i g n e d t o 0117400 Y e s r e p l i e s , s o 0117420 Y e s c o d e b y t e s 0117440 s h o u 376 001 \0 035 u l d a l w a 0117460 y s b e z e r o . A s s 0117500 i g n e d N o c o d e b y 0117520 t e s a r e l i s t e d i 0117540 n t h e a p p e n d i x . 032 0117560 z 1 8 6 9 7 e 1 0 j k 4 0 \ g \r 0117600 5 . 6 . E x a m p l e s 032 z 1 0117620 8 6 9 7 e 1 6 k 8 0 \ i g \r T h 0117640 e s e a r e e x a m p l e s 0117660 o f n o r m a l c a s e s 0117700 o f t h e N e w - S t o r 0117720 e , D e l e t e , R e t r i 0117740 e v e , a n d N e w - E n u 0117760 m e r a t e c o m m a n d s . 0120000 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ g 0120020 \r U : [ V e r s i o n ] < 1 0120040 > B C P L P u 376 001 \0 p ) p 0120060 F T P U s e r , 1 4 M a y 0120100 8 2 \r U : [ E n d - o f - C 0120120 o m m a n d ] \r S : [ V e r s 0120140 i o n ] < 1 > P A R C I v 0120160 y I F S 1 . 3 5 . 4 L , F 0120200 i l e S e r v e r o f M a 0120220 y 1 1 , 1 9 8 2 ; 2 u s 0120240 e r s o u t o f 9 \r S : 0120260 [ E n d - o f - C o m m a n d ] 0120300 \r U : [ N e w - S t o r e ] 0120320 ( ( C r e a t i o n - d a t e 0120340 1 4 - M a y - 8 2 1 5 : 2 6 : 0120360 4 5 P D T ) ( D e s i r e d 0120400 - p r o p e r t y S e r v e r 0120420 - f i l e n a m e ) ( E n d - 0120440 o f - l i n e - c o n v e n 376 001 0120460 \0 227 , t i o n C R ) ( R e a 0120500 d - d a t e 2 5 - M a y - 8 2 0120520 1 4 : 0 8 : 0 1 P D T ) ( 0120540 S e r v e r - f i l e n a m e 0120560 U s e r . c m ) ( S i z e 2 0120600 1 1 3 ) ( T y p e T e x t ) 0120620 ( U s e r - n a m e T a f t 0120640 . P A ) ( U s e r - p a s s w 0120660 o r d x x x x x x ) ( W r i 0120700 t e - d a t e 1 4 - M a y - 8 0120720 2 1 5 : 2 6 : 4 5 P D T ) ) 0120740 \r U : [ E n d - o f - C o m m 0120760 a n d ] \r S : [ H e r e - i s 0121000 - P r o p e r t y - L i s t ] 0121020 ( ( S e r v e r - f i l e n a m 0121040 e < T a f t > U s e r . c m ! 0121060 1 ) ) 376 001 \0 ( 250 \r S : [ E n d 0121100 - o f - C o m m a n d ] \r U : 0121120 [ H e r e - i s - F i l e ] . 0121140 . . . . . . . . . . . . . \r U : 0121160 [ Y e s ] < 0 > T r a n s 0121200 f e r C o m p l e t e \r U : 0121220 [ E n d - o f - C o m m a n d ] 0121240 \r S : [ Y e s ] < 0 > S t 0121260 o r e c o m p l e t e d \r S : 0121300 [ E n d - o f - C o m m a n d 0121320 ] \r U : [ D e l e t e ] ( ( 0121340 D e s i r e d - p r o p e r t y 0121360 S e r v e r - f i l e n a m e 0121400 ) ( D e s i r e d - p r o p e 0121420 r t y N a m e - b o d y ) ( 0121440 S e r v e r - f i l e n a m e 0121460 U s e r . c m ) 376 001 \0 h / ( U 0121500 s e r - n a m e T a f t . P A 0121520 ) ( U s e r - p a s s w o r d 0121540 x x x x x x ) ) \r U : [ E n 0121560 d - o f - C o m m a n d ] \r S : 0121600 [ H e r e - i s - P r o p e r 0121620 t y - L i s t ] ( ( N a m e - 0121640 b o d y U s e r . c m ) ( S 0121660 e r v e r - f i l e n a m e < 0121700 T a f t > U s e r . c m ! 1 ) ) 0121720 \r S : [ E n d - o f - C o m m 0121740 a n d ] \r U : [ Y e s ] < 0 0121760 > P l e a s e d e l e t e 0122000 t h a t f i l e \r U : [ E n 0122020 d - o f - C o m m a n d ] \r S : 0122040 [ Y e s ] < 0 > F i l e 0122060 D e l e t e d \r S : [ E 376 001 \0 0122100 361 250 n d - o f - C o m m a n d ] 0122120 \r U : [ R e t r i e v e ] ( 0122140 ( D e s i r e d - p r o p e r t 0122160 y S e r v e r - f i l e n a m 0122200 e ) ( D e s i r e d - p r o p 0122220 e r t y N a m e - b o d y ) 0122240 ( D e s i r e d - p r o p e r t 0122260 y T y p e ) ( D e s i r e d 0122300 - p r o p e r t y B y t e - s 0122320 i z e ) ( D e s i r e d - p r 0122340 o p e r t y C r e a t i o n - 0122360 d a t e ) ( D i r e c t o r y 0122400 M e s a > F T P ) ( S e r v 0122420 e r - f i l e n a m e F T P D 0122440 e f s . * ) ( U s e r - n a m 0122460 e T a f t . P A ) ( U s e r 0122500 - p 376 001 \0 274 323 a s s w o r d x 0122520 x x x x x ) ) \r U : [ E n d - 0122540 o f - C o m m a n d ] \r S : [ 0122560 H e r e - i s - P r o p e r t y 0122600 - L i s t ] ( ( B y t e - s i 0122620 z e 8 ) ( C r e a t i o n - 0122640 d a t e 4 - S e p - 8 0 2 2 0122660 : 1 4 : 0 8 P D T ) ( N a m 0122700 e - b o d y F T P D e f s . b 0122720 c d ) ( S e r v e r - f i l e 0122740 n a m e < M e s a > F T P > F 0122760 T P D e f s . b c d ! 1 ) ( T 0123000 y p e B i n a r y ) ) \r S : 0123020 [ E n d - o f - C o m m a n d ] 0123040 \r U : [ N o ] < 0 > N o 0123060 t h a n k s \r U : [ E n d - o 0123100 f - C o m m a 376 001 \0 272 R n d ] \r 0123120 S : [ H e r e - i s - P r o p 0123140 e r t y - L i s t ] ( ( C r e 0123160 a t i o n - d a t e 2 8 - J u 0123200 l - 8 0 2 0 : 3 8 : 5 8 P D 0123220 T ) ( E n d - o f - l i n e - 0123240 c o n v e n t i o n C R ) ( 0123260 N a m e - b o d y F T P D e f 0123300 s . m e s a ) ( S e r v e r - 0123320 f i l e n a m e < M e s a > F 0123340 T P > F T P D e f s . m e s a ! 0123360 1 ) ( T y p e T e x t ) ) \r 0123400 S : [ E n d - o f - C o m m a 0123420 n d ] \r U : [ Y e s ] < 0 > 0123440 F i l e o p e n , r e a d 0123460 y f o r d a t a \r U : [ E 0123500 n d - o f - C o m m a n 376 001 \0 T 0123520 d d ] \r S : [ H e r e - i s - 0123540 F i l e ] . . . . . . . . . . 0123560 . . . . \r S : [ Y e s ] < 0 0123600 > T r a n s f e r c o m p l 0123620 e t e \r S : [ E n d - o f - C 0123640 o m m a n d ] \r U : [ N e w - 0123660 E n u m e r a t e ] ( ( D e s 0123700 i r e d - p r o p e r t y S e 0123720 r v e r - f i l e n a m e ) ( 0123740 D i r e c t o r y M e s a > F 0123760 T P ) ( S e r v e r - f i l e 0124000 n a m e F T P U s e r . * ) 0124020 ( U s e r - n a m e T a f t . 0124040 P A ) ( U s e r - p a s s w o 0124060 r d x x x x x x ) ) \r U : [ 0124100 E n d - o f - C o m m a n d ] \r 0124120 S 376 001 \0 G 246 : [ H e r e - i s 0124140 - P r o p e r t y - L i s t ] 0124160 ( ( S e r v e r - f i l e n a m 0124200 e < M e s a > F T P > F T P U 0124220 s e r . b c d ! 1 ) ) ( ( S e 0124240 r v e r - f i l e n a m e < M 0124260 e s a > F T P > F T P U s e r . 0124300 c o n f i g ! 1 ) ) \r S : [ E 0124320 n d - o f - C o m m a n d ] \r U 0124340 : [ N e w - E n u m e r a t e 0124360 ] ( ( D i r e c t o r y M e 0124400 s a > F T P ) ( S e r v e r - 0124420 f i l e n a m e F T P U s e r 0124440 . * ) ( U s e r - n a m e T 0124460 a f t . P A ) ( U s e r - p a 0124500 s s w o r d x x x x x x ) ) \r 0124520 U : [ E n 376 001 \0 n \r d - o f - 0124540 C o m m a n d ] \r S : [ H e r 0124560 e - i s - P r o p e r t y - L i 0124600 s t ] ( ( A u t h o r J o h 0124620 n s s o n ) ( B y t e - s i z 0124640 e 8 ) ( C r e a t i o n - d 0124660 a t e 1 3 - O c t - 8 0 2 0 0124700 : 1 6 : 5 8 P D T ) ( D e v 0124720 i c e P r i m a r y ) ( D i 0124740 r e c t o r y M e s a > F T P 0124760 ) ( N a m e - b o d y F T P 0125000 U s e r . b c d ) ( R e a d - 0125020 d a t e 1 4 - A p r - 8 2 1 0125040 4 : 4 9 : 1 1 P S T ) ( S e 0125060 r v e r - f i l e n a m e < M 0125100 e s a > F T P > F T P U s e r . 0125120 b c d ! 1 ) ( S i z 376 001 \0 > 247 0125140 e 2 5 6 0 0 ) ( T y p e B 0125160 i n a r y ) ( V e r s i o n 0125200 1 ) ( W r i t e - d a t e 3 0125220 0 - O c t - 8 0 5 : 3 0 : 0 0125240 3 P S T ) ) ( ( A u t h o r 0125260 J o h n s s o n ) ( C r e a 0125300 t i o n - d a t e 3 - A u g - 0125320 8 0 1 8 : 1 4 : 3 6 P D T ) 0125340 ( D e v i c e P r i m a r y 0125360 ) ( D i r e c t o r y M e s 0125400 a > F T P ) ( N a m e - b o d 0125420 y F T P U s e r . c o n f i g 0125440 ) ( R e a d - d a t e 2 1 - 0125460 M a r - 8 2 2 0 : 0 5 : 3 3 0125500 P S T ) ( S e r v e r - f i l 0125520 e n a m e < M e s a > F T P > 0125540 376 001 \0 376 345 F T P U s e r . c o n 0125560 f i g ! 1 ) ( S i z e 9 7 3 0125600 ) ( T y p e T e x t ) ( V 0125620 e r s i o n 1 ) ( W r i t e 0125640 - d a t e 3 0 - O c t - 8 0 0125660 5 : 3 0 : 3 2 P S T ) ) \r S 0125700 : [ E n d - o f - C o m m a n 0125720 d ] 032 z 1 8 6 9 7 e 1 0 k 4 0 \ 0125740 f 1 2 9 4 9 g \r 6 . F i l e 0125760 f o r m a t s a n d c o n 0126000 v e r s i o n 032 z 1 8 6 9 7 e 2 0126020 2 k 8 0 \ b g \r W h e n a f 0126040 i l e p r o p e r t y l i s 0126060 t i s s e n t t o a s 0126100 e r v e r a s p a r t o f 0126120 a n F T P c o m m a n d , 0126140 i t d 376 001 \0 371 260 e s c r i b 0126160 e s t h e f i l e a s t 0126200 h e u s e r w o u l d l i 0126220 k e t o h a v e i t m o 0126240 v e d . T h e u s e r m 0126260 a y b e w i l l i n g t o 0126300 d o s o m e s u b s e q u 0126320 e n t c o n v e r s i o n s , 0126340 o r m a y a s k t h e 0126360 s e r v e r t o p e r f o r 0126400 m t h e c o n v e r s i o n 0126420 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0126440 g \r F o r e x a m p l e , i 0126460 f a u s e r w a n t s t 0126500 o r e t r i e v e a t e x 0126520 t f i l e f r o m a s e 0126540 r v e r , a n d 376 001 \0 " 226 h 0126560 a v e t h e s e r v e r c 0126600 o n v e r t t h e f i l e 0126620 t o E n d - o f - L i n e - C 0126640 o n v e n t i o n C R L F , 0126660 t h e n t h e u s e r m i 0126700 g h t s e n d t h e c o m 0126720 m a n d : 032 z 1 8 6 9 7 e 1 0 j 0126740 k 4 0 \ g \r [ R e t r i e v e ] 0126760 ( ( S e r v e r - F i l e n a m 0127000 e F o o . t e x t ) ( T y p e 0127020 T e x t ) ( E n d - o f - L i 0127040 n e - C o n v e n t i o n C R 0127060 L F ) . . . ) 032 z 1 8 6 9 7 l 3 0127100 7 0 4 e 1 0 \ g \r T h e s e r 0127120 v e r m i g h t r e s p o n 0127140 d w i t h a [ H e r e - 376 0127160 001 \0 ) 034 i s - P r o p e r t y - 0127200 L i s t ] , i n d i c a t i n 0127220 g w i l l i n g n e s s t o 0127240 p r o v i d e t h e f i l 0127260 e i n t h a t f o r m ; 0127300 o r i t m i g h t r e f u 0127320 s e t o d o t h e c o n 0127340 v e r s i o n . S i m i l a 0127360 r l y , i f a u s e r s 0127400 t o r i n g a f i l e w a 0127420 n t s t o t r a n s m i t 0127440 i t w i t h E n d - o f - L 0127460 i n e - C o n v e n t i o n C 0127500 R L F , a n d h a v e t h 0127520 e s e r v e r c o n v e r t 0127540 t h e f i l e ( i f n e 0127560 c e s s 376 001 \0 371 213 a r y ) t o 0127600 a d i f f e r e n t i n t 0127620 e r n a l c o n v e n t i o n 0127640 , t h e n t h e u s e r 0127660 m i g h t s e n d t h e c 0127700 o m m a n d : 032 z 1 8 6 9 7 e 1 0127720 0 j k 4 0 \ g \r [ N e w - S t o 0127740 r e ] ( ( S e r v e r - F i l e 0127760 n a m e F o o . t e x t ) ( T 0130000 y p e T e x t ) ( E n d - o f 0130020 - L i n e - C o n v e n t i o n 0130040 C R L F ) . . . ) 032 z 1 8 6 9 0130060 7 l 3 7 0 4 e 1 0 \ g \r T h e 0130100 s e r v e r m i g h t r e s 0130120 p o n d w i t h a [ H e r 0130140 e - i s - P r o p e r t y - L i 0130160 s t ] , i n d i 376 001 \0 354 ~ c a 0130200 t i n g w i l l i n g n e s s 0130220 t o a c c e p t t h e f 0130240 i l e i n t h a t f o r m 0130260 ; o r i t m i g h t r e 0130300 f u s e t o d o t h e c 0130320 o n v e r s i o n . 032 z 1 8 6 9 0130340 7 e 1 0 j k 4 0 \ g \r I t i s 0130360 e x p e c t e d t h a t a 0130400 l l i m p l e m e n t a t i o 0130420 n s o f t h e F T P s h 0130440 o u l d a t l e a s t b e 0130460 a b l e t o s t o r e a 0130500 n d r e t r i e v e A S C I 0130520 I t e x t f i l e s a c c 0130540 o r d i n g t o o n e s t 0130560 a n d a r d c o n v e n t 376 001 0130600 \0 \v I i o n : 032 z 1 8 6 9 7 e 1 0130620 0 j k 4 0 \ g 9 7 f 1 5 f 0 \r 0130640 ( . . . ( T y p e T e x t ) ( 0130660 E n d - o f - L i n e - C o n v 0130700 e n t i o n C R ) . . ) 032 z 1 0130720 8 6 9 7 l 3 7 0 4 e 1 0 \ g \r a 0130740 n d t o s t o r e a n d 0130760 r e t r i e v e 8 - b i t B 0131000 i n a r y f i l e s : 032 z 1 8 0131020 6 9 7 e 1 0 j k 4 0 \ g \r ( . . 0131040 . ( T y p e B i n a r y ) ( B 0131060 y t e - S i z e 8 ) . . ) 032 z 0131100 1 8 6 9 7 l 3 7 0 4 e 1 0 \ g \r 0131120 7 . I n t e r r u p t s , r 0131140 e s t a r t s , a n d a b o 0131160 r t s 032 z 1 8 6 9 7 e 2 2 k 8 0 0131200 \ b g 376 001 \0 177 331 \r E i t h e r 0131220 p r o c e s s m a y , i f 0131240 n e c e s s a r y , u s e t 0131260 h e B S P c o n v e n t i o 0131300 n f o r i n t e r r u p t i 0131320 n g a b y t e s t r e a m 0131340 : p l a c e a n [ A b o r 0131360 t ] M a r k B y t e i n 0131400 t h e s t r e a m a t t h 0131420 e c u r r e n t p o s i t i 0131440 o n , a n d t h e n s i g 0131460 n a l a B S P I n t e r r 0131500 u p t . T h i s w i l l 0131520 c l e a r o u t a l l p e 0131540 n d i n g d a t a , a n d 0131560 r e - e s t a b l i s h c o n 0131600 t r o l a t 376 001 \0 I 363 t h e 0131620 t o p l e v e l o f t h 0131640 e p r o t o c o l . 032 z 1 8 6 0131660 9 7 e 1 0 j k 4 0 \ f 1 g \r A 0131700 p r o c e s s r e c e i v i n 0131720 g a n i n t e r r u p t c 0131740 a n t h e n l o o k f o r 0131760 t h e c o r r e s p o n d i 0132000 n g M a r k B y t e i n 0132020 t h e i n c o m i n g b y t 0132040 e s t r e a m , b u t m u 0132060 s t a l s o i n d i c a t e 0132100 t h e r e s e t p o s i t 0132120 i o n i n i t s o u t g o 0132140 i n g b y t e s t r e a m , 0132160 s o t h a t t h e t w o 0132200 m a y r e g a i n s 376 001 \0 0132220 < j y n c h r o n i z a t i o n 0132240 . T h u s , u p o n r e 0132260 c e i v i n g a B S P I n 0132300 t e r r u p t a p r o c e s 0132320 s m u s t s i g n a l a 0132340 c o r r e s p o n d i n g B S 0132360 P I n t e r r u p t - r e p l 0132400 y , a n d d r o p a n [ 0132420 A b o r t ] M a r k B y t e 0132440 i n t o t h e s t r e a m 0132460 . 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ 0132500 f 1 g \r T h e d e t a i l s 0132520 o f t h i s m e c h a n i s 0132540 m h a v e n o t b e e n 0132560 r e s o l v e d , a n d t h 0132600 e A b o r t h a s n o t 0132620 g e 376 001 \0 334 246 n e r a l l y b 0132640 e e n i m p l e m e n t e d . 0132660 032 z 1 8 6 9 7 e 1 0 j k 4 0 \ f 0132700 1 g \r R e m e m b e r t h a t 0132720 t h e p r o t o c o l r e 0132740 l i e s u p o n t h e B S 0132760 P f o r e s t a b l i s h i 0133000 n g , t e r m i n a t i n g , 0133020 o r a b o r t i n g a l l 0133040 c o n n e c t i o n s . 032 z 1 0133060 8 6 9 7 e 1 0 j k 4 0 \ g \r 8 . 0133100 O t h e r r e m a r k s 032 z 0133120 1 8 6 9 7 e 2 2 k 8 0 \ b g \r 1 0133140 . \t N o t e t h a t m o s t 0133160 i m p l e m e n t a t i o n s 0133200 o f t h e B S P p r o v 0133220 i d e b u f 376 001 \0 j 273 f e r i 0133240 n g o f t h e o u t g o i 0133260 n g b y t e s , s o i t 0133300 m a y b e n e c e s s a r y 0133320 t o p o k e t h e B y t 0133340 e S t r e a m i n a n a 0133360 p p r o p r i a t e m a n n e 0133400 r i n o r d e r t o s e 0133420 n d a c o m p l e t e c o 0133440 m m a n d . 032 z 1 8 6 9 7 e 1 0 0133460 j k 4 0 ( 0 , 3 7 0 4 ) \ g \r 2 0133500 . \t A l l B S P c o n n e c 0133520 t i o n s a r e f u l l - d 0133540 u p l e x ; h o w e v e r , 0133560 t h e F T P p r o t o c o l 0133600 c o n s t r a i n s t h e 0133620 u s e r a n d s e r 376 001 \0 c 0133640 ] v e r t o t a k e t u r 0133660 n s t r a n s m i t t i n g . 0133700 T o a v o i d d e a d l 0133720 o c k s , e a c h p a r t y 0133740 m u s t w a i t u n t i l 0133760 i t r e c e i v e s a n 0134000 [ E O C ] f r o m t h e o 0134020 t h e r p a r t y b e f o r 0134040 e b e g i n n i n g t o t 0134060 r a n s m i t . I n e x c 0134100 e p t i o n a l s i t u a t i 0134120 o n s , t h i s m a y r e 0134140 q u i r e t h e p a r t y 0134160 n o t i n c o n t r o l t 0134200 o c o n s u m e a n d d i 0134220 s c a r d d a t a u n t i l 0134240 376 001 \0 325 250 a n [ E O C ] i 0134260 s r e c e i v e d . 032 z 1 8 6 0134300 9 7 e 1 0 j k 4 0 \ g \r 3 . \t I 0134320 n f u t u r e p r o g r a m 0134340 s , a u s e r p r o c e s 0134360 s m i g h t r e q u e s t 0134400 a t r a n s f e r o f o n 0134420 l y p a r t o f a f i l 0134440 e : 032 z 1 8 6 9 7 e 1 0 j k 4 0 0134460 \ f 1 g \r \t ( ( N a m e B A C 0134500 K U P . 1 ) ( S t a r t i n g - 0134520 p o s i t i o n 2 0 0 0 ) ( N 0134540 u m b e r - o f - b y t e s 5 0134560 1 2 ) . . . ) 032 z 1 8 6 9 7 l 3 0134600 7 0 4 e 1 0 ( 1 2 7 0 ) \ f 1 g 0134620 \r T h e f i r s t b y t e 0134640 o f a f 376 001 \0 \0 } i l e i 0134660 s a l w a y s b y t e 0 . 0134700 I s s u e s s u c h a s 0134720 p o s i t i o n i n g b a c 0134740 k w a r d s , l e a v i n g 0134760 f i l e s o p e n f o r e 0135000 f f i c i e n c y , e t c . 0135020 a r e l e f t t o t h e 0135040 p r o g r a m , a n d a r e 0135060 n o t p a r t o f t h e 0135100 p r o t o c o l . 032 z 1 8 6 9 0135120 7 e 1 0 j k 4 0 ( 0 , 3 7 0 4 ) 0135140 \ f 1 g \r 4 . \t I n g e n e r 0135160 a l , t h i r d p a r t y 0135200 t r a n s f e r s a r e n o 0135220 t s u p p o r t e d . T h e 0135240 r e a r e s e v e 376 001 \0 _ 344 0135260 r a l s i t u a t i o n s w 0135300 h i c h w e b e l i e v e 0135320 c a n b e h a n d l e d a 0135340 d e q u a t e l y w i t h i n 0135360 t h e c u r r e n t p r o 0135400 t o c o l : 032 z 1 8 6 9 7 e 1 0 0135420 j k 4 0 \ f 1 g \r a . \t A u s 0135440 e r a s k s a s e r v e r 0135460 f o r a f i l e , b u t 0135500 t h e s e r v e r k n o w 0135520 s t h a t t h e f i l e 0135540 i s a c t u a l l y b a c k 0135560 e d u p o n a n a r c h 0135600 i v e f a c i l i t y . T 0135620 h e s e r v e r c a n t h 0135640 e n 1 ) i n v i s i b l y 0135660 376 001 \0 351 305 f e t c h t h e f 0135700 i l e f r o m t h e a r c 0135720 h i v e , a n d t h e n t 0135740 r a n s m i t i t t o t h 0135760 e u s e r ; o r 2 ) s e 0136000 n d a [ N o ] t o t h e 0136020 u s e r i n d i c a t i n g 0136040 t h a t t h e f i l e l 0136060 i v e s e l s e w h e r e , 0136100 a l l o w i n g t h e u s e 0136120 r t o a s k f o r t h e 0136140 f u l l p r o p e r t y l 0136160 i s t ( i n c l u d i n g t 0136200 h e f i l e ' s a c t u a l 0136220 l o c a t i o n ) a n d t 0136240 h e n e s t a b l i s h a 0136260 n e w c 376 001 \0 \0 321 o n n e c t 0136300 i o n t o t h e a r c h i 0136320 v e . I n e i t h e r c 0136340 a s e , t h e s e r v e r 0136360 w i l l n o t t r y t o 0136400 m a g i c a l l y f o r c e 0136420 a c o n n e c t i o n b e t 0136440 w e e n t h e u s e r a n 0136460 d t h e a r c h i v e . 032 z 0136500 1 8 6 9 7 l 3 7 0 4 d 2 9 9 9 e 0136520 1 0 j k 4 0 \ f 1 g \r b . \t A 0136540 u s e r w a n t s t o t a 0136560 k e a f i l e f r o m t 0136600 h e s e r v e r a n d p r 0136620 i n t i t o n a d i f f 0136640 e r e n t p r i n t i n g f 0136660 a c i l i t y . 376 001 \0 246 " T 0136700 h e u s e r c a n t h e n 0136720 1 ) f e t c h t h e f i 0136740 l e f r o m t h e s e r v 0136760 e r , a n d t h e n s e n 0137000 d i t t o t h e p r i n 0137020 t e r ; o r 2 ) a s k t 0137040 h e s e r v e r t o s e n 0137060 d t h e f i l e t o t h 0137100 e p r i n t e r i n a n 0137120 a p p r o p r i a t e w a y . 0137140 032 z 1 8 6 9 7 l 3 7 0 4 d 2 9 9 0137160 9 e 1 0 j k 4 0 \ f 1 g \r 5 . \t 0137200 T h e r e a r e a d d i t i 0137220 o n a l c o m m a n d s t o 0137240 a n o t h e r f i l e s y 0137260 s t e m t h a t a r e n 376 0137300 001 \0 y B o t c u r r e n t l y 0137320 p a r t o f t h e p r o 0137340 t o c o l , b u t w h i c h 0137360 m i g h t p r o v e u s e 0137400 f u l : 032 z 1 8 6 9 7 e 1 0 j k 0137420 4 0 \ f 1 g \r [ C r e a t e ] 0137440 p r o p e r t y - l i s t 032 z 1 0137460 8 6 9 7 l 3 7 0 4 e 1 0 j k 4 0 0137500 ( 1 2 7 0 ) \ f 1 g 9 i 1 3 I \r 0137520 [ A p p e n d ] p r o p e r t 0137540 y - l i s t p r o p e r t y - 0137560 l i s t 032 z 1 8 6 9 7 l 3 7 0 4 0137600 e 1 0 j k 4 0 \ f 1 g 9 i 1 3 I 0137620 1 i 1 3 I \r [ R e s e t - p r o 0137640 p e r t i e s ] p r o p e r t 0137660 y - l i s t p r o p e r t y - 0137700 l i s t 376 001 \0 273 317 032 z 1 8 6 9 7 0137720 l 3 7 0 4 e 1 0 j k 4 0 \ f 1 g 0137740 1 9 i 1 3 I 1 i 1 3 I \r [ C o p 0137760 y ] p r o p e r t y - l i s t 0140000 p r o p e r t y - l i s t 032 z 0140020 1 8 6 9 7 l 3 7 0 4 e 1 0 j k 4 0140040 0 \ f 1 g 7 i 1 3 I 1 i 1 3 I \r 0140060 9 . F T P a n d t h e 0140100 P u p M a i l T r a n s f e 0140120 r P r o t o c o l 032 z 1 8 6 9 0140140 7 e 2 2 k 8 0 \ b g \r T h e F 0140160 i l e T r a n s f e r P r o 0140200 t o c o l h a s a l s o b 0140220 e e n u s e d a s t h e 0140240 f o u n d a t i o n f o r a 0140260 P u p - b a s e d M a i l 0140300 T r a n s f e r 376 001 \0 024 016 P r 0140320 o t o c o l ; t h e F T P 0140340 c o m m a n d / r e s p o n s e 0140360 f r a m e w o r k h a s b 0140400 e e n a u g m e n t e d w i 0140420 t h a s e t o f c o m m 0140440 a n d s a n d r e s p o n s 0140460 e s t o m a n i p u l a t e 0140500 m a i l b o x e s ( i . e . 0140520 , m e s s a g e f i l e s ) 0140540 . T h e M a i l - r e l a 0140560 t e d c o m m a n d s a n d 0140600 e r r o r c o d e s a r e 0140620 d i s j o i n t f r o m t 0140640 h e o n e s s e l e c t e d 0140660 f o r t h e F T P ; c a 0140700 r e m u s t b e t a k 376 001 0140720 \0 X 275 e n , h o w e v e r , 0140740 t o e n s u r e t h a t a 0140760 n y n e w F T P o r M a 0141000 i l c o d e s a r e n o t 0141020 a l r e a d y u s e d b y 0141040 t h e c o m p a n i o n p 0141060 r o t o c o l . F o r f u 0141100 r t h e r i n f o r m a t i o 0141120 n , s e e E d T a f t ' s 0141140 m e m o c i t e d i n s 0141160 e c t i o n 1 . 032 z 1 8 6 9 7 0141200 e 1 0 j k 4 0 \ g 1 0 2 i 2 I \r 0141220 1 0 . R e v i s i o n h i s 0141240 t o r y 032 z 1 8 6 9 7 e 2 2 k 8 0141260 0 \ b g \r S e p t e m b e r 2 0141300 9 , 1 9 8 3 : \r 023 [ R e n a m 0141320 e ] 376 001 \0 J 356 m a y c h a n 0141340 g e f i l e p r o p e r t i 0141360 e s b e s i d e s t h e n 0141400 a m e . 032 z 1 8 6 9 7 e 1 0 j k 0141420 4 0 \ g \r S e p t e m b e r 1 0141440 2 , 1 9 8 3 : \r 023 C o r r e c 0141460 t e d e r r o r i n f l o 0141500 w c h a r t s f o r [ S t o 0141520