$ 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