home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / programs / comms_networking / irclient / !IRClient / Scripts / Modules / FTP < prev    next >
Unknown  |  1997-01-04  |  20.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0a f4 20 3e 46 | 54 50 0d 00 14 29 f4 20 |..... >F|TP...). |
|00000010| 41 6c 6c 6f 77 73 20 75 | 73 20 74 6f 20 46 54 50 |Allows u|s to FTP|
|00000020| 20 74 6f 20 61 6e 6f 74 | 68 65 72 20 6d 61 63 68 | to anot|her mach|
|00000030| 69 6e 65 0d 00 1e 42 f4 | 20 33 31 20 44 65 63 20 |ine...B.| 31 Dec |
|00000040| 31 39 39 36 20 2d 20 4a | 46 3a 20 53 74 61 72 74 |1996 - J|F: Start|
|00000050| 65 64 2c 20 64 69 72 65 | 63 74 6f 72 69 65 73 20 |ed, dire|ctories |
|00000060| 77 6f 72 6b 20 20 20 20 | 20 20 20 20 20 20 20 20 |work | |
|00000070| 76 31 2e 30 30 0d 00 28 | 42 f4 20 30 31 20 4a 61 |v1.00..(|B. 01 Ja|
|00000080| 6e 20 31 39 39 37 20 2d | 20 4a 46 3a 20 47 45 54 |n 1997 -| JF: GET|
|00000090| 20 77 6f 72 6b 73 20 20 | 20 20 20 20 20 20 20 20 | works | |
|000000a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000000b0| 20 20 76 31 2e 30 31 0d | 00 32 42 f4 20 30 31 20 | v1.01.|.2B. 01 |
|000000c0| 4a 61 6e 20 31 39 39 37 | 20 2d 20 4a 46 3a 20 50 |Jan 1997| - JF: P|
|000000d0| 55 54 20 77 6f 72 6b 73 | 20 20 20 20 20 20 20 20 |UT works| |
|000000e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000000f0| 20 20 20 20 76 31 2e 30 | 32 0d 00 3c 42 f4 20 30 | v1.0|2..<B. 0|
|00000100| 31 20 4a 61 6e 20 31 39 | 39 37 20 2d 20 4a 46 3a |1 Jan 19|97 - JF:|
|00000110| 20 50 72 65 74 74 69 66 | 79 69 6e 67 20 64 6f 6e | Prettif|ying don|
|00000120| 65 2c 20 62 69 74 73 20 | 61 64 64 65 64 20 20 20 |e, bits |added |
|00000130| 20 20 20 20 20 20 76 31 | 2e 30 33 0d 00 46 42 f4 | v1|.03..FB.|
|00000140| 20 30 32 20 4a 61 6e 20 | 31 39 39 37 20 2d 20 4a | 02 Jan |1997 - J|
|00000150| 46 3a 20 50 4f 52 54 20 | 62 75 67 20 66 69 78 20 |F: PORT |bug fix |
|00000160| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000170| 20 20 20 20 20 20 20 20 | 76 31 2e 30 34 0d 00 50 | |v1.04..P|
|00000180| 42 f4 20 30 33 20 4a 61 | 6e 20 31 39 39 37 20 2d |B. 03 Ja|n 1997 -|
|00000190| 20 4a 46 3a 20 43 6f 6e | 66 69 67 75 72 61 74 69 | JF: Con|figurati|
|000001a0| 6f 6e 20 61 64 64 65 64 | 20 20 20 20 20 20 20 20 |on added| |
|000001b0| 20 20 20 20 20 20 20 20 | 20 20 76 31 2e 30 35 0d | | v1.05.|
|000001c0| 00 5a 05 f4 0d 00 64 1c | f4 20 44 65 64 69 63 61 |.Z....d.|. Dedica|
|000001d0| 74 65 64 20 74 6f 20 50 | 65 6e 64 72 61 67 6f 6e |ted to P|endragon|
|000001e0| 0d 00 6e 36 f4 20 2d 2d | 20 44 69 64 20 79 6f 75 |..n6. --| Did you|
|000001f0| 20 64 6f 20 74 68 65 20 | 72 69 67 68 74 20 74 68 | do the |right th|
|00000200| 69 6e 67 20 3f 20 4e 6f | 2c 20 6e 6f 2c 20 6e 6f |ing ? No|, no, no|
|00000210| 2c 20 6e 6f 20 21 0d 00 | 78 37 85 20 30 2c 22 54 |, no !..|x7. 0,"T|
|00000220| 68 69 73 20 69 73 20 61 | 6e 20 49 52 43 6c 69 65 |his is a|n IRClie|
|00000230| 6e 74 20 73 63 72 69 70 | 74 20 61 6e 64 20 63 61 |nt scrip|t and ca|
|00000240| 6e 6e 6f 74 20 62 65 20 | 72 75 6e 2e 22 0d 00 82 |nnot be |run."...|
|00000250| 05 e0 0d 00 8c 05 3a 0d | 00 96 16 dd f2 49 6e 69 |......:.|.....Ini|
|00000260| 74 69 61 6c 69 73 65 4d | 6f 64 75 6c 65 0d 00 a0 |tialiseM|odule...|
|00000270| 24 f4 20 43 6f 6e 66 69 | 67 75 72 65 64 20 73 74 |$. Confi|gured st|
|00000280| 75 66 66 20 2d 20 64 69 | 72 65 63 74 6f 72 69 65 |uff - di|rectorie|
|00000290| 73 0d 00 aa 2f 66 74 70 | 5f 66 72 6f 6d 64 69 72 |s.../ftp|_fromdir|
|000002a0| 24 3d a4 44 42 5f 52 65 | 61 64 43 6f 6e 66 69 67 |$=.DB_Re|adConfig|
|000002b0| 28 22 46 54 50 5f 4f 75 | 74 67 6f 69 6e 67 22 29 |("FTP_Ou|tgoing")|
|000002c0| 0d 00 b4 17 e7 20 66 74 | 70 5f 66 72 6f 6d 64 69 |..... ft|p_fromdi|
|000002d0| 72 24 3d 22 22 20 8c 0d | 00 be 2b 20 66 74 70 5f |r$="" ..|..+ ftp_|
|000002e0| 66 72 6f 6d 64 69 72 24 | 3d 6d 61 67 72 61 74 68 |fromdir$|=magrath|
|000002f0| 65 61 5f 75 73 65 72 24 | 2b 22 2e 46 54 50 4f 75 |ea_user$|+".FTPOu|
|00000300| 74 22 0d 00 c8 05 cd 0d | 00 d2 20 c8 99 20 22 58 |t"......|.. .. "X|
|00000310| 4f 53 5f 46 69 6c 65 22 | 2c 38 2c 66 74 70 5f 66 |OS_File"|,8,ftp_f|
|00000320| 72 6f 6d 64 69 72 24 0d | 00 dc 2d 66 74 70 5f 74 |romdir$.|..-ftp_t|
|00000330| 6f 64 69 72 24 3d a4 44 | 42 5f 52 65 61 64 43 6f |odir$=.D|B_ReadCo|
|00000340| 6e 66 69 67 28 22 46 54 | 50 5f 49 6e 63 6f 6d 69 |nfig("FT|P_Incomi|
|00000350| 6e 67 22 29 0d 00 e6 15 | e7 20 66 74 70 5f 74 6f |ng")....|. ftp_to|
|00000360| 64 69 72 24 3d 22 22 20 | 8c 0d 00 f0 28 20 66 74 |dir$="" |....( ft|
|00000370| 70 5f 74 6f 64 69 72 24 | 3d 6d 61 67 72 61 74 68 |p_todir$|=magrath|
|00000380| 65 61 5f 75 73 65 72 24 | 2b 22 2e 46 54 50 49 6e |ea_user$|+".FTPIn|
|00000390| 22 0d 00 fa 05 cd 0d 01 | 04 1e c8 99 20 22 58 4f |".......|.... "XO|
|000003a0| 53 5f 46 69 6c 65 22 2c | 38 2c 66 74 70 5f 74 6f |S_File",|8,ftp_to|
|000003b0| 64 69 72 24 0d 01 0e 12 | f4 20 50 55 54 20 73 65 |dir$....|. PUT se|
|000003c0| 74 74 69 6e 67 73 0d 01 | 18 34 66 74 70 5f 62 6c |ttings..|.4ftp_bl|
|000003d0| 6f 63 6b 73 69 7a 65 3d | bb 28 a4 44 42 5f 52 65 |ocksize=|.(.DB_Re|
|000003e0| 61 64 43 6f 6e 66 69 67 | 28 22 46 54 50 5f 42 6c |adConfig|("FTP_Bl|
|000003f0| 6f 63 6b 73 69 7a 65 22 | 29 29 0d 01 22 19 e7 20 |ocksize"|))..".. |
|00000400| 66 74 70 5f 62 6c 6f 63 | 6b 73 69 7a 65 3c 31 32 |ftp_bloc|ksize<12|
|00000410| 38 20 8c 0d 01 2c 17 20 | 66 74 70 5f 62 6c 6f 63 |8 ...,. |ftp_bloc|
|00000420| 6b 73 69 7a 65 3d 31 30 | 32 34 0d 01 36 05 cd 0d |ksize=10|24..6...|
|00000430| 01 40 2e 66 74 70 5f 70 | 65 72 69 6f 64 3d bb 28 |.@.ftp_p|eriod=.(|
|00000440| a4 44 42 5f 52 65 61 64 | 43 6f 6e 66 69 67 28 22 |.DB_Read|Config("|
|00000450| 46 54 50 5f 50 65 72 69 | 6f 64 22 29 29 0d 01 4a |FTP_Peri|od"))..J|
|00000460| 27 e7 20 66 74 70 5f 70 | 65 72 69 6f 64 3c 31 30 |'. ftp_p|eriod<10|
|00000470| 20 84 20 66 74 70 5f 70 | 65 72 69 6f 64 3e 32 35 | . ftp_p|eriod>25|
|00000480| 30 30 20 8c 0d 01 54 12 | 20 66 74 70 5f 70 65 72 |00 ...T.| ftp_per|
|00000490| 69 6f 64 3d 35 30 0d 01 | 5e 05 cd 0d 01 68 3f f4 |iod=50..|^....h?.|
|000004a0| 20 43 68 61 6e 67 65 20 | 64 69 72 65 63 74 6f 72 | Change |director|
|000004b0| 79 20 74 79 70 65 20 28 | 31 3d 6c 6f 6e 67 20 6c |y type (|1=long l|
|000004c0| 69 73 74 2c 20 32 3d 6e | 6f 6e 65 2c 20 33 3d 73 |ist, 2=n|one, 3=s|
|000004d0| 68 6f 72 74 20 6c 69 73 | 74 29 0d 01 72 2e 66 74 |hort lis|t)..r.ft|
|000004e0| 70 5f 63 64 74 79 70 65 | 3d bb 28 a4 44 42 5f 52 |p_cdtype|=.(.DB_R|
|000004f0| 65 61 64 43 6f 6e 66 69 | 67 28 22 46 54 50 5f 43 |eadConfi|g("FTP_C|
|00000500| 64 54 79 70 65 22 29 29 | 0d 01 7c 14 e7 20 66 74 |dType"))|..|.. ft|
|00000510| 70 5f 63 64 74 79 70 65 | 3d 30 20 8c 0d 01 86 11 |p_cdtype|=0 .....|
|00000520| 20 66 74 70 5f 63 64 74 | 79 70 65 3d 33 0d 01 90 | ftp_cdt|ype=3...|
|00000530| 05 cd 0d 01 9a 1f f4 20 | 43 6f 6e 74 72 6f 6c 20 |....... |Control |
|00000540| 53 6f 63 6b 65 74 20 61 | 6e 64 20 42 75 66 66 65 |Socket a|nd Buffe|
|00000550| 72 0d 01 a4 0d 66 74 70 | 73 6f 63 6b 3d 30 0d 01 |r....ftp|sock=0..|
|00000560| ae 0f 66 74 70 62 75 66 | 66 65 72 3d 30 0d 01 b8 |..ftpbuf|fer=0...|
|00000570| 22 f4 20 44 61 74 61 20 | 50 6f 72 74 2c 20 73 6f |". Data |Port, so|
|00000580| 63 6b 65 74 20 61 6e 64 | 20 62 75 66 66 65 72 0d |cket and| buffer.|
|00000590| 01 c2 10 66 74 70 70 6e | 61 6d 65 24 3d 22 22 0d |...ftppn|ame$="".|
|000005a0| 01 cc 0e 66 74 70 64 70 | 6f 72 74 3d 30 0d 01 d6 |...ftpdp|ort=0...|
|000005b0| 0d 66 74 70 64 61 74 61 | 3d 30 0d 01 e0 0d 66 74 |.ftpdata|=0....ft|
|000005c0| 70 64 62 75 66 3d 30 0d | 01 ea 11 f4 20 44 61 74 |pdbuf=0.|.... Dat|
|000005d0| 61 20 74 79 70 65 20 3a | 0d 01 f4 25 f4 20 20 30 |a type :|...%. 0|
|000005e0| 20 3d 20 6e 6f 2d 6f 70 | 20 28 77 68 61 74 27 73 | = no-op| (what's|
|000005f0| 20 68 61 70 70 65 6e 69 | 6e 67 20 3f 29 0d 01 fe | happeni|ng ?)...|
|00000600| 1c f4 20 20 31 20 3d 20 | 64 69 72 65 63 74 6f 72 |.. 1 = |director|
|00000610| 79 20 6c 69 73 74 69 6e | 67 0d 02 08 1c f4 20 20 |y listin|g..... |
|00000620| 32 20 3d 20 47 45 54 20 | 66 69 6c 65 20 74 72 61 |2 = GET |file tra|
|00000630| 6e 73 66 65 72 0d 02 12 | 18 f4 20 20 33 20 3d 20 |nsfer...|.. 3 = |
|00000640| 73 68 6f 72 74 20 6c 69 | 73 74 69 6e 67 0d 02 1c |short li|sting...|
|00000650| 1c f4 20 20 34 20 3d 20 | 50 55 54 20 66 69 6c 65 |.. 4 = |PUT file|
|00000660| 20 74 72 61 6e 73 66 65 | 72 0d 02 26 1d f4 20 20 | transfe|r..&.. |
|00000670| 35 20 3d 20 54 59 50 45 | 20 66 69 6c 65 20 74 72 |5 = TYPE| file tr|
|00000680| 61 6e 73 66 65 72 0d 02 | 30 0e 66 74 70 64 74 79 |ansfer..|0.ftpdty|
|00000690| 70 65 3d 30 0d 02 3a 20 | f4 20 41 62 6f 75 74 20 |pe=0..: |. About |
|000006a0| 74 68 65 20 63 75 72 72 | 65 6e 74 20 74 72 61 6e |the curr|ent tran|
|000006b0| 73 66 65 72 0d 02 44 10 | 66 74 70 64 66 69 6c 65 |sfer..D.|ftpdfile|
|000006c0| 24 3d 22 22 0d 02 4e 0e | 66 74 70 64 74 6f 24 3d |$=""..N.|ftpdto$=|
|000006d0| 22 22 0d 02 58 0d 66 74 | 70 64 67 6f 74 3d 30 0d |""..X.ft|pdgot=0.|
|000006e0| 02 62 0f 66 74 70 64 72 | 65 6e 24 3d 22 22 0d 02 |.b.ftpdr|en$=""..|
|000006f0| 6c 31 f4 20 47 6c 6f 62 | 61 6c 20 69 6e 66 6f 72 |l1. Glob|al infor|
|00000700| 6d 61 74 69 6f 6e 20 61 | 62 6f 75 74 20 74 68 65 |mation a|bout the|
|00000710| 20 66 74 70 20 63 6f 6e | 6e 65 63 74 69 6f 6e 0d | ftp con|nection.|
|00000720| 02 76 0f 66 74 70 68 6f | 73 74 24 3d 22 22 0d 02 |.v.ftpho|st$=""..|
|00000730| 80 0f 66 74 70 75 73 65 | 72 24 3d 22 22 0d 02 8a |..ftpuse|r$=""...|
|00000740| 0f 66 74 70 70 61 73 73 | 24 3d 22 22 0d 02 94 0e |.ftppass|$=""....|
|00000750| 66 74 70 64 69 72 24 3d | 22 22 0d 02 9e 10 66 74 |ftpdir$=|""....ft|
|00000760| 70 64 6c 69 73 74 24 3d | 22 22 0d 02 a8 39 f4 20 |pdlist$=|""...9. |
|00000770| 48 61 76 65 20 77 65 20 | 66 69 6e 69 73 68 65 64 |Have we |finished|
|00000780| 20 79 65 74 20 3f 20 28 | 69 65 20 63 6c 6f 73 69 | yet ? (|ie closi|
|00000790| 6e 67 20 69 73 20 6e 6f | 74 20 61 6e 20 65 72 72 |ng is no|t an err|
|000007a0| 6f 72 29 0d 02 b2 0d 66 | 74 70 64 6f 6e 65 3d a3 |or)....f|tpdone=.|
|000007b0| 0d 02 bc 20 f4 20 50 61 | 73 73 20 6f 6e 20 74 6f |... . Pa|ss on to|
|000007c0| 20 74 68 65 20 6e 65 78 | 74 20 6d 6f 64 75 6c 65 | the nex|t module|
|000007d0| 0d 02 c6 06 f2 40 0d 02 | d0 05 e1 0d 02 da 05 3a |.....@..|.......:|
|000007e0| 0d 02 e4 37 f4 20 2a 2a | 2a 2a 2a 2a 2a 20 4f 76 |...7. **|***** Ov|
|000007f0| 65 72 6c 6f 61 64 65 64 | 20 63 6f 6e 66 69 67 75 |erloaded| configu|
|00000800| 72 61 74 69 6f 6e 20 6f | 70 74 69 6f 6e 73 20 2a |ration o|ptions *|
|00000810| 2a 2a 2a 2a 2a 2a 2a 0d | 02 ee 05 3a 0d 02 f8 24 |*******.|...:...$|
|00000820| f4 20 47 69 76 65 20 6f | 75 72 73 65 6c 76 65 73 |. Give o|urselves|
|00000830| 20 61 20 73 65 6e 73 69 | 62 6c 65 20 6e 61 6d 65 | a sensi|ble name|
|00000840| 0d 03 02 1e dd a4 4f 76 | 65 72 6c 6f 61 64 5f 53 |......Ov|erload_S|
|00000850| 63 72 69 70 74 49 6e 66 | 6f 28 6e 75 6d 29 0d 03 |criptInf|o(num)..|
|00000860| 0c 0a ea 20 72 65 74 24 | 0d 03 16 0d e7 20 6e 75 |... ret$|..... nu|
|00000870| 6d 3d 30 20 8c 0d 03 20 | 1d 20 72 65 74 24 3d 22 |m=0 ... |. ret$="|
|00000880| 46 54 50 20 76 31 2e 30 | 34 20 28 47 65 72 70 68 |FTP v1.0|4 (Gerph|
|00000890| 29 22 0d 03 2a 05 cc 0d | 03 34 13 20 72 65 74 24 |)"..*...|.4. ret$|
|000008a0| 3d a4 40 28 6e 75 6d 2d | 31 29 0d 03 3e 05 cd 0d |=.@(num-|1)..>...|
|000008b0| 03 48 09 3d 72 65 74 24 | 0d 03 52 05 3a 0d 03 5c |.H.=ret$|..R.:..\|
|000008c0| 28 dd f2 4f 76 65 72 6c | 6f 61 64 5f 55 6e 6b 6e |(..Overl|oad_Unkn|
|000008d0| 6f 77 6e 43 6f 6d 6d 61 | 6e 64 28 63 6f 6d 24 2c |ownComma|nd(com$,|
|000008e0| 73 74 72 24 29 0d 03 66 | 1c ea 20 68 6f 73 74 24 |str$)..f|.. host$|
|000008f0| 2c 75 73 65 72 24 2c 70 | 61 73 73 24 2c 64 69 72 |,user$,p|ass$,dir|
|00000900| 24 0d 03 70 0d c8 8e 20 | 63 6f 6d 24 20 ca 0d 03 |$..p... |com$ ...|
|00000910| 7a 0c 20 c9 20 22 46 54 | 50 22 0d 03 84 1c 20 20 |z. . "FT|P".... |
|00000920| c8 8e 20 a4 43 61 70 69 | 74 61 6c 69 73 65 28 73 |.. .Capi|talise(s|
|00000930| 74 72 24 29 20 ca 0d 03 | 8e 0b 20 20 20 c9 20 22 |tr$) ...|.. . "|
|00000940| 22 0d 03 98 17 20 20 20 | 20 e7 20 66 74 70 68 6f |".... | . ftpho|
|00000950| 73 74 24 3d 22 22 20 8c | 0d 03 a2 4e 20 20 20 20 |st$="" .|...N |
|00000960| 20 f2 44 69 73 70 6c 61 | 79 57 61 72 6e 69 6e 67 | .Displa|yWarning|
|00000970| 28 22 53 79 6e 74 61 78 | 3a 20 2f 46 54 50 20 3c |("Syntax|: /FTP <|
|00000980| 68 6f 73 74 3e 20 5b 3c | 75 73 65 72 3e 20 5b 3c |host> [<|user> [<|
|00000990| 70 61 73 73 3e 7c 2d 20 | 5b 3c 64 69 72 3e 5d 5d |pass>|- |[<dir>]]|
|000009a0| 5d 22 2c 22 22 29 0d 03 | ac 2e 20 20 20 20 20 f2 |]","")..|.. .|
|000009b0| 44 69 73 70 6c 61 79 57 | 61 72 6e 69 6e 67 28 22 |DisplayW|arning("|
|000009c0| 20 20 20 20 6f 72 3a 20 | 2f 46 54 50 20 43 6c 6f | or: |/FTP Clo|
|000009d0| 73 65 22 29 0d 03 b6 09 | 20 20 20 20 cc 0d 03 c0 |se")....| ....|
|000009e0| 69 20 20 20 20 20 f2 4e | 65 77 44 69 73 70 6c 61 |i .N|ewDispla|
|000009f0| 79 28 22 23 23 46 54 50 | 23 23 22 2c 31 30 30 2c |y("##FTP|##",100,|
|00000a00| 22 46 54 50 20 63 6f 6e | 6e 65 63 74 69 6f 6e 20 |"FTP con|nection |
|00000a10| 74 6f 20 22 2b 66 74 70 | 68 6f 73 74 24 2c 44 69 |to "+ftp|host$,Di|
|00000a20| 73 70 6c 61 79 46 6c 61 | 67 5f 4e 6f 43 52 20 2b |splayFla|g_NoCR +|
|00000a30| 20 44 69 73 70 6c 61 79 | 46 6c 61 67 5f 4e 6f 49 | Display|Flag_NoI|
|00000a40| 6e 64 65 6e 74 29 0d 03 | ca 09 20 20 20 20 cd 0d |ndent)..|.. ..|
|00000a50| 03 d4 10 20 20 20 c9 20 | 22 43 4c 4f 53 45 22 0d |... . |"CLOSE".|
|00000a60| 03 de 18 20 20 20 20 e7 | 20 66 74 70 68 6f 73 74 |... .| ftphost|
|00000a70| 24 3c 3e 22 22 20 8c 0d | 03 e8 3f 20 20 20 20 20 |$<>"" ..|..? |
|00000a80| f2 44 69 73 70 6c 61 79 | 49 6e 66 6f 28 22 43 6c |.Display|Info("Cl|
|00000a90| 6f 73 69 6e 67 20 46 54 | 50 20 63 6f 6e 6e 65 63 |osing FT|P connec|
|00000aa0| 74 69 6f 6e 20 74 6f 20 | 22 2b 66 74 70 68 6f 73 |tion to |"+ftphos|
|00000ab0| 74 24 2c 22 22 29 0d 03 | f2 13 20 20 20 20 20 f2 |t$,"")..|.. .|
|00000ac0| 46 54 50 5f 63 6c 6f 73 | 65 0d 03 fc 09 20 20 20 |FTP_clos|e.... |
|00000ad0| 20 cc 0d 04 06 33 20 20 | 20 20 20 f2 44 69 73 70 | ....3 | .Disp|
|00000ae0| 6c 61 79 57 61 72 6e 69 | 6e 67 28 22 46 54 50 20 |layWarni|ng("FTP |
|00000af0| 69 73 20 6e 6f 74 20 63 | 6f 6e 6e 65 63 74 65 64 |is not c|onnected|
|00000b00| 22 2c 22 22 29 0d 04 10 | 09 20 20 20 20 cd 0d 04 |","")...|. ...|
|00000b10| 1a 08 20 20 20 7f 0d 04 | 24 1d 20 20 20 20 68 6f |.. ...|$. ho|
|00000b20| 73 74 24 3d a4 6f 6e 65 | 70 61 72 61 6d 28 73 74 |st$=.one|param(st|
|00000b30| 72 24 29 0d 04 2e 1a 20 | 20 20 20 73 74 72 24 3d |r$).... | str$=|
|00000b40| a4 6d 6f 76 65 6f 6e 28 | 73 74 72 24 29 0d 04 38 |.moveon(|str$)..8|
|00000b50| 1d 20 20 20 20 75 73 65 | 72 24 3d a4 6f 6e 65 70 |. use|r$=.onep|
|00000b60| 61 72 61 6d 28 73 74 72 | 24 29 0d 04 42 1a 20 20 |aram(str|$)..B. |
|00000b70| 20 20 73 74 72 24 3d a4 | 6d 6f 76 65 6f 6e 28 73 | str$=.|moveon(s|
|00000b80| 74 72 24 29 0d 04 4c 1d | 20 20 20 20 70 61 73 73 |tr$)..L.| pass|
|00000b90| 24 3d a4 6f 6e 65 70 61 | 72 61 6d 28 73 74 72 24 |$=.onepa|ram(str$|
|00000ba0| 29 0d 04 56 1a 20 20 20 | 20 73 74 72 24 3d a4 6d |)..V. | str$=.m|
|00000bb0| 6f 76 65 6f 6e 28 73 74 | 72 24 29 0d 04 60 11 20 |oveon(st|r$)..`. |
|00000bc0| 20 20 20 64 69 72 24 3d | 73 74 72 24 0d 04 6a 24 | dir$=|str$..j$|
|00000bd0| 20 20 20 20 f2 66 74 70 | 28 68 6f 73 74 24 2c 75 | .ftp|(host$,u|
|00000be0| 73 65 72 24 2c 70 61 73 | 73 24 2c 64 69 72 24 29 |ser$,pas|s$,dir$)|
|00000bf0| 0d 04 74 07 20 20 cb 0d | 04 7e 06 20 7f 0d 04 88 |..t. ..|.~. ....|
|00000c00| 13 20 20 f2 40 28 63 6f | 6d 24 2c 73 74 72 24 29 |. .@(co|m$,str$)|
|00000c10| 0d 04 92 05 cb 0d 04 9c | 05 e1 0d 04 a6 05 3a 0d |........|......:.|
|00000c20| 04 b0 21 dd f2 66 74 70 | 28 68 6f 73 74 24 2c 75 |..!..ftp|(host$,u|
|00000c30| 73 65 72 24 2c 70 61 73 | 73 24 2c 64 69 72 24 29 |ser$,pas|s$,dir$)|
|00000c40| 0d 04 ba 14 e7 20 66 74 | 70 68 6f 73 74 24 3c 3e |..... ft|phost$<>|
|00000c50| 22 22 20 8c 0d 04 c4 40 | 20 f2 44 69 73 70 6c 61 |"" ....@| .Displa|
|00000c60| 79 57 61 72 6e 69 6e 67 | 28 22 46 54 50 20 69 73 |yWarning|("FTP is|
|00000c70| 20 61 6c 72 65 61 64 79 | 20 63 6f 6e 6e 65 63 74 | already| connect|
|00000c80| 65 64 20 74 6f 20 22 2b | 66 74 70 68 6f 73 74 24 |ed to "+|ftphost$|
|00000c90| 2c 22 22 29 0d 04 ce 05 | cc 0d 04 d8 13 20 66 74 |,"")....|..... ft|
|00000ca0| 70 68 6f 73 74 24 3d 68 | 6f 73 74 24 0d 04 e2 13 |phost$=h|ost$....|
|00000cb0| 20 66 74 70 75 73 65 72 | 24 3d 75 73 65 72 24 0d | ftpuser|$=user$.|
|00000cc0| 04 ec 43 20 e7 20 28 75 | 73 65 72 24 3d 22 61 6e |..C . (u|ser$="an|
|00000cd0| 6f 6e 79 6d 6f 75 73 22 | 20 84 20 75 73 65 72 24 |onymous"| . user$|
|00000ce0| 3d 22 66 74 70 22 29 20 | 80 20 28 70 61 73 73 24 |="ftp") |. (pass$|
|00000cf0| 3d 22 22 20 84 20 70 61 | 73 73 24 3d 22 2d 22 29 |="" . pa|ss$="-")|
|00000d00| 20 8c 0d 04 f6 18 20 20 | 66 74 70 70 61 73 73 24 | ..... |ftppass$|
|00000d10| 3d 6d 79 5f 65 6d 61 69 | 6c 24 0d 05 00 06 20 cc |=my_emai|l$.... .|
|00000d20| 0d 05 0a 13 20 20 e7 20 | 70 61 73 73 24 3d 22 2d |.... . |pass$="-|
|00000d30| 22 20 8c 0d 05 14 0f 20 | 20 20 70 61 73 73 24 3d |" ..... | pass$=|
|00000d40| 22 22 0d 05 1e 07 20 20 | cd 0d 05 28 14 20 20 66 |"".... |...(. f|
|00000d50| 74 70 70 61 73 73 24 3d | 70 61 73 73 24 0d 05 32 |tppass$=|pass$..2|
|00000d60| 06 20 cd 0d 05 3c 11 20 | 66 74 70 64 69 72 24 3d |. ...<. |ftpdir$=|
|00000d70| 64 69 72 24 0d 05 46 4c | 20 66 74 70 73 6f 63 6b |dir$..FL| ftpsock|
|00000d80| 3d a4 43 6f 6e 6e 65 63 | 74 28 66 74 70 68 6f 73 |=.Connec|t(ftphos|
|00000d90| 74 24 2c 32 31 2c 22 46 | 54 50 43 6f 6e 6e 65 63 |t$,21,"F|TPConnec|
|00000da0| 74 65 64 22 2c 22 46 54 | 50 45 72 72 6f 72 22 2c |ted","FT|PError",|
|00000db0| 22 46 54 50 49 6e 63 6f | 6d 69 6e 67 22 2c 30 29 |"FTPInco|ming",0)|
|00000dc0| 0d 05 50 13 20 e7 20 66 | 74 70 73 6f 63 6b 3c 3e |..P. . f|tpsock<>|
|00000dd0| 30 20 8c 0d 05 5a 1d 20 | 20 f2 4b 69 6c 6c 44 69 |0 ...Z. | .KillDi|
|00000de0| 73 70 6c 61 79 28 22 23 | 23 46 54 50 23 23 22 29 |splay("#|#FTP##")|
|00000df0| 0d 05 64 1a 20 20 66 74 | 70 62 75 66 66 65 72 3d |..d. ft|pbuffer=|
|00000e00| a4 4e 65 77 42 75 66 66 | 65 72 0d 05 6e 0f 20 20 |.NewBuff|er..n. |
|00000e10| 66 74 70 64 6f 6e 65 3d | a3 0d 05 78 06 20 cc 0d |ftpdone=|...x. ..|
|00000e20| 05 82 35 20 20 f2 44 69 | 73 70 6c 61 79 45 72 72 |..5 .Di|splayErr|
|00000e30| 6f 72 28 22 43 6f 75 6c | 64 20 6e 6f 74 20 63 6f |or("Coul|d not co|
|00000e40| 6e 6e 65 63 74 20 74 6f | 20 22 2b 68 6f 73 74 24 |nnect to| "+host$|
|00000e50| 2c 22 22 29 0d 05 8c 11 | 20 20 66 74 70 68 6f 73 |,"")....| ftphos|
|00000e60| 74 24 3d 22 22 0d 05 96 | 06 20 cd 0d 05 a0 05 cd |t$=""...|. ......|
|00000e70| 0d 05 aa 05 e1 0d 05 b4 | 05 3a 0d 05 be 1d dd f2 |........|.:......|
|00000e80| 46 54 50 45 72 72 6f 72 | 28 69 31 2c 69 32 2c 72 |FTPError|(i1,i2,r|
|00000e90| 65 61 73 6f 6e 24 29 0d | 05 c8 0e f2 46 54 50 5f |eason$).|....FTP_|
|00000ea0| 63 6c 6f 73 65 0d 05 d2 | 11 e7 20 66 74 70 64 6f |close...|.. ftpdo|
|00000eb0| 6e 65 3d a3 20 8c 0d 05 | dc 3a 20 f2 44 69 73 70 |ne=. ...|.: .Disp|
|00000ec0| 6c 61 79 57 61 72 6e 69 | 6e 67 28 22 46 54 50 20 |layWarni|ng("FTP |
|00000ed0| 43 6f 6e 6e 65 63 74 69 | 6f 6e 20 63 6c 6f 73 65 |Connecti|on close|
|00000ee0| 64 3a 20 22 2b 72 65 61 | 73 6f 6e 24 2c 22 22 29 |d: "+rea|son$,"")|
|00000ef0| 0d 05 e6 05 cd 0d 05 f0 | 05 e1 0d 05 fa 05 3a 0d |........|......:.|
|00000f00| 06 04 19 dd f2 46 54 50 | 43 6f 6e 6e 65 63 74 65 |.....FTP|Connecte|
|00000f10| 64 28 69 31 2c 69 32 29 | 0d 06 0e 64 f2 4e 65 77 |d(i1,i2)|...d.New|
|00000f20| 44 69 73 70 6c 61 79 28 | 22 23 23 46 54 50 23 23 |Display(|"##FTP##|
|00000f30| 22 2c 31 30 30 2c 22 46 | 54 50 20 63 6f 6e 6e 65 |",100,"F|TP conne|
|00000f40| 63 74 69 6f 6e 20 74 6f | 20 22 2b 66 74 70 68 6f |ction to| "+ftpho|
|00000f50| 73 74 24 2c 44 69 73 70 | 6c 61 79 46 6c 61 67 5f |st$,Disp|layFlag_|
|00000f60| 4e 6f 43 52 20 2b 20 44 | 69 73 70 6c 61 79 46 6c |NoCR + D|isplayFl|
|00000f70| 61 67 5f 4e 6f 49 6e 64 | 65 6e 74 29 0d 06 18 3e |ag_NoInd|ent)...>|
|00000f80| f2 44 69 73 70 6c 61 79 | 28 22 43 6f 6e 6e 65 63 |.Display|("Connec|
|00000f90| 74 20 73 75 63 63 65 73 | 73 66 75 6c 6c 79 20 74 |t succes|sfully t|
|00000fa0| 6f 20 22 2b 66 74 70 68 | 6f 73 74 24 2c 22 22 2c |o "+ftph|ost$,"",|
|00000fb0| 22 23 23 46 54 50 23 23 | 22 29 0d 06 22 05 e1 0d |"##FTP##|").."...|
|00000fc0| 06 2c 05 3a 0d 06 36 18 | dd f2 46 54 50 49 6e 63 |.,.:..6.|..FTPInc|
|00000fd0| 6f 6d 69 6e 67 28 69 31 | 2c 69 32 29 0d 06 40 18 |oming(i1|,i2)..@.|
|00000fe0| ea 20 6e 75 6d 62 79 74 | 65 73 2c 73 74 72 24 2c |. numbyt|es,str$,|
|00000ff0| 6e 61 6d 24 0d 06 4a 29 | 6e 75 6d 62 79 74 65 73 |nam$..J)|numbytes|
|00001000| 3d a4 52 65 61 64 54 6f | 53 74 61 74 69 63 42 75 |=.ReadTo|StaticBu|
|00001010| 66 66 65 72 28 66 74 70 | 73 6f 63 6b 29 0d 06 54 |ffer(ftp|sock)..T|
|00001020| 34 f2 42 75 66 66 65 72 | 41 64 64 28 66 74 70 62 |4.Buffer|Add(ftpb|
|00001030| 75 66 66 65 72 2c a4 53 | 74 61 74 69 63 42 75 66 |uffer,.S|taticBuf|
|00001040| 66 65 72 41 64 64 72 2c | 6e 75 6d 62 79 74 65 73 |ferAddr,|numbytes|
|00001050| 29 0d 06 5e 26 73 74 72 | 24 3d a4 47 65 74 4c 69 |)..^&str|$=.GetLi|
|00001060| 6e 65 46 72 6f 6d 42 75 | 66 66 65 72 28 66 74 70 |neFromBu|ffer(ftp|
|00001070| 62 75 66 66 65 72 29 0d | 06 68 0e c8 95 20 a9 28 |buffer).|.h... .(|
|00001080| 73 74 72 24 29 0d 06 72 | 13 20 63 6f 64 65 24 3d |str$)..r|. code$=|
|00001090| c0 73 74 72 24 2c 33 29 | 0d 06 7c 13 20 6c 69 6e |.str$,3)|..|. lin|
|000010a0| 65 24 3d c1 73 74 72 24 | 2c 34 29 0d 06 86 0e 20 |e$=.str$|,4).... |
|000010b0| e7 20 64 65 62 75 67 20 | 8c 0d 06 90 27 20 20 f2 |. debug |....' .|
|000010c0| 44 69 73 70 6c 61 79 49 | 6e 66 6f 28 22 3c 20 22 |DisplayI|nfo("< "|
|000010d0| 2b 73 74 72 24 2c 22 23 | 23 46 54 50 23 23 22 29 |+str$,"#|#FTP##")|
|000010e0| 0d 06 9a 06 20 cd 0d 06 | a4 16 20 e7 20 c0 6c 69 |.... ...|.. . .li|
|000010f0| 6e 65 24 2c 31 29 3d 22 | 2d 22 20 8c 0d 06 ae 2c |ne$,1)="|-" ....,|
|00001100| 20 20 f2 44 69 73 70 6c | 61 79 49 6e 66 6f 28 22 | .Displ|ayInfo("|
|00001110| 7c 20 22 2b c1 6c 69 6e | 65 24 2c 32 29 2c 22 23 || "+.lin|e$,2),"#|
|00001120| 23 46 54 50 23 23 22 29 | 0d 06 b8 06 20 cc 0d 06 |#FTP##")|.... ...|
|00001130| c2 15 20 20 6c 69 6e 65 | 24 3d c1 6c 69 6e 65 24 |.. line|$=.line$|
|00001140| 2c 32 29 0d 06 cc 2b 20 | 20 f2 4f 76 65 72 6c 6f |,2)...+ | .Overlo|
|00001150| 61 64 5f 46 54 50 52 65 | 73 70 6f 6e 73 65 28 bb |ad_FTPRe|sponse(.|
|00001160| 28 63 6f 64 65 24 29 2c | 6c 69 6e 65 24 29 0d 06 |(code$),|line$)..|
|00001170| d6 06 20 cd 0d 06 e0 27 | 20 73 74 72 24 3d a4 47 |.. ....'| str$=.G|
|00001180| 65 74 4c 69 6e 65 46 72 | 6f 6d 42 75 66 66 65 72 |etLineFr|omBuffer|
|00001190| 28 66 74 70 62 75 66 66 | 65 72 29 0d 06 ea 05 ce |(ftpbuff|er).....|
|000011a0| 0d 06 f4 05 e1 0d 06 fe | 05 3a 0d 07 08 25 dd f2 |........|.:...%..|
|000011b0| 4f 76 65 72 6c 6f 61 64 | 5f 46 54 50 52 65 73 70 |Overload|_FTPResp|
|000011c0| 6f 6e 73 65 28 63 6f 64 | 65 2c 73 74 72 24 29 0d |onse(cod|e,str$).|
|000011d0| 07 12 0d c8 8e 20 63 6f | 64 65 20 ca 0d 07 1c 0a |..... co|de .....|
|000011e0| 20 c9 20 31 32 30 0d 07 | 26 4e 20 20 f2 44 69 73 | . 120..|&N .Dis|
|000011f0| 70 6c 61 79 57 61 72 6e | 69 6e 67 28 22 50 6c 65 |playWarn|ing("Ple|
|00001200| 61 73 65 20 77 61 69 74 | 2c 20 73 65 72 76 65 72 |ase wait|, server|
|00001210| 20 69 73 20 75 6e 61 76 | 6f 69 64 61 62 6c 79 20 | is unav|oidably |
|00001220| 64 65 74 61 69 6e 65 64 | 22 2c 22 23 23 46 54 50 |detained|","##FTP|
|00001230| 23 23 22 29 0d 07 30 0a | 20 c9 20 31 35 30 0d 07 |##")..0.| . 150..|
|00001240| 3a 2d 20 20 f4 20 4c 69 | 73 74 20 6f 6b 2c 20 63 |:- . Li|st ok, c|
|00001250| 6f 6e 6e 65 63 74 69 6e | 67 2e 2e 2e 20 77 65 20 |onnectin|g... we |
|00001260| 69 67 6e 6f 72 65 20 74 | 68 69 73 0d 07 44 0a 20 |ignore t|his..D. |
|00001270| c9 20 32 31 31 0d 07 4e | 1e 20 20 f4 20 53 54 41 |. 211..N|. . STA|
|00001280| 54 20 6f 72 20 48 45 4c | 50 20 63 6f 6d 70 6c 65 |T or HEL|P comple|
|00001290| 74 65 64 0d 07 58 0a 20 | c9 20 32 32 36 0d 07 62 |ted..X. |. 226..b|
|000012a0| 34 20 20 f4 20 4f 70 65 | 72 61 74 69 6f 6e 20 63 |4 . Ope|ration c|
|000012b0| 6f 6d 70 6c 65 74 65 20 | 28 64 61 74 61 20 63 6f |omplete |(data co|
|000012c0| 6e 6e 65 63 74 69 6f 6e | 20 63 6c 6f 73 69 6e 67 |nnection| closing|
|000012d0| 29 0d 07 6c 0a 20 c9 20 | 32 35 30 0d 07 76 20 20 |)..l. . |250..v |
|000012e0| 20 f4 20 46 69 6c 65 20 | 61 63 74 69 6f 6e 20 63 | . File |action c|
|000012f0| 6f 6d 70 6c 65 74 65 64 | 20 6f 6b 0d 07 80 0a 20 |ompleted| ok.... |
|00001300| c9 20 32 32 30 0d 07 8a | 34 20 20 f2 44 69 73 70 |. 220...|4 .Disp|
|00001310| 6c 61 79 28 22 43 6f 6e | 6e 65 63 74 65 64 20 74 |lay("Con|nected t|
|00001320| 6f 20 73 65 72 76 65 72 | 20 3a 22 2c 22 22 2c 22 |o server| :","","|
|00001330| 23 23 46 54 50 23 23 22 | 29 0d 07 94 21 20 20 f2 |##FTP##"|)...! .|
|00001340| 44 69 73 70 6c 61 79 28 | 73 74 72 24 2c 22 22 2c |Display(|str$,"",|
|00001350| 22 23 23 46 54 50 23 23 | 22 29 0d 07 9e 16 20 20 |"##FTP##|").... |
|00001360| e7 20 66 74 70 75 73 65 | 72 24 3c 3e 22 22 20 8c |. ftpuse|r$<>"" .|
|00001370| 0d 07 a8 40 20 20 20 f2 | 44 69 73 70 6c 61 79 28 |...@ .|Display(|
|00001380| 22 53 65 6e 64 69 6e 67 | 20 75 73 65 72 20 6e 61 |"Sending| user na|
|00001390| 6d 65 20 27 22 2b 66 74 | 70 75 73 65 72 24 2b 22 |me '"+ft|puser$+"|
|000013a0| 27 22 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |'","","#|#FTP##")|
|000013b0| 0d 07 b2 23 20 20 20 f2 | 53 65 6e 64 54 6f 46 54 |...# .|SendToFT|
|000013c0| 50 28 22 55 53 45 52 20 | 22 2b 66 74 70 75 73 65 |P("USER |"+ftpuse|
|000013d0| 72 24 29 0d 07 bc 07 20 | 20 cc 0d 07 c6 29 20 20 |r$).... | ....) |
|000013e0| 20 f2 44 69 73 70 6c 61 | 79 28 22 55 73 65 72 6e | .Displa|y("Usern|
|000013f0| 61 6d 65 3e 22 2c 22 22 | 2c 22 23 23 46 54 50 23 |ame>",""|,"##FTP#|
|00001400| 23 22 29 0d 07 d0 11 20 | 20 20 f2 53 65 6c 65 63 |#").... | .Selec|
|00001410| 74 46 54 50 0d 07 da 07 | 20 20 cd 0d 07 e4 0a 20 |tFTP....| ..... |
|00001420| c9 20 33 33 31 0d 07 ee | 3b 20 20 f2 44 69 73 70 |. 331...|; .Disp|
|00001430| 6c 61 79 28 22 41 63 63 | 65 70 74 65 64 20 75 73 |lay("Acc|epted us|
|00001440| 65 72 20 6e 61 6d 65 20 | 22 2b 66 74 70 75 73 65 |er name |"+ftpuse|
|00001450| 72 24 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |r$,"","#|#FTP##")|
|00001460| 0d 07 f8 16 20 20 e7 20 | 66 74 70 70 61 73 73 24 |.... . |ftppass$|
|00001470| 3c 3e 22 22 20 8c 0d 08 | 02 1d 20 20 20 e7 20 66 |<>"" ...|.. . f|
|00001480| 74 70 70 61 73 73 24 3d | 6d 79 5f 65 6d 61 69 6c |tppass$=|my_email|
|00001490| 24 20 8c 0d 08 0c 42 20 | 20 20 20 f2 44 69 73 70 |$ ....B | .Disp|
|000014a0| 6c 61 79 28 22 53 65 6e | 64 69 6e 67 20 65 6d 61 |lay("Sen|ding ema|
|000014b0| 69 6c 20 61 64 64 72 65 | 73 73 20 61 73 20 70 61 |il addre|ss as pa|
|000014c0| 73 73 77 6f 72 64 22 2c | 22 22 2c 22 23 23 46 54 |ssword",|"","##FT|
|000014d0| 50 23 23 22 29 0d 08 16 | 08 20 20 20 cc 0d 08 20 |P##")...|. ... |
|000014e0| 31 20 20 20 20 f2 44 69 | 73 70 6c 61 79 28 22 53 |1 .Di|splay("S|
|000014f0| 65 6e 64 69 6e 67 20 70 | 61 73 73 77 6f 72 64 22 |ending p|assword"|
|00001500| 2c 22 22 2c 22 23 23 46 | 54 50 23 23 22 29 0d 08 |,"","##F|TP##")..|
|00001510| 2a 08 20 20 20 cd 0d 08 | 34 23 20 20 20 f2 53 65 |*. ...|4# .Se|
|00001520| 6e 64 54 6f 46 54 50 28 | 22 50 41 53 53 20 22 2b |ndToFTP(|"PASS "+|
|00001530| 66 74 70 70 61 73 73 24 | 29 0d 08 3e 07 20 20 cc |ftppass$|)..>. .|
|00001540| 0d 08 48 32 20 20 20 f2 | 44 69 73 70 6c 61 79 28 |..H2 .|Display(|
|00001550| 22 50 61 73 73 77 6f 72 | 64 20 72 65 71 75 69 72 |"Passwor|d requir|
|00001560| 65 64 3e 22 2c 22 22 2c | 22 23 23 46 54 50 23 23 |ed>","",|"##FTP##|
|00001570| 22 29 0d 08 52 11 20 20 | 20 f2 53 65 6c 65 63 74 |")..R. | .Select|
|00001580| 46 54 50 0d 08 5c 07 20 | 20 cd 0d 08 66 0a 20 c9 |FTP..\. | ...f. .|
|00001590| 20 35 33 30 0d 08 70 44 | 20 20 f2 44 69 73 70 6c | 530..pD| .Displ|
|000015a0| 61 79 57 61 72 6e 69 6e | 67 28 22 50 61 73 73 77 |ayWarnin|g("Passw|
|000015b0| 6f 72 64 20 69 6e 63 6f | 72 72 65 63 74 2c 20 70 |ord inco|rrect, p|
|000015c0| 6c 65 61 73 65 20 72 65 | 2d 74 72 79 22 2c 22 23 |lease re|-try","#|
|000015d0| 23 46 54 50 23 23 22 29 | 0d 08 7a 11 20 20 66 74 |#FTP##")|..z. ft|
|000015e0| 70 70 61 73 73 24 3d 22 | 22 0d 08 84 10 20 20 f2 |ppass$="|".... .|
|000015f0| 53 65 6c 65 63 74 46 54 | 50 0d 08 8e 0a 20 c9 20 |SelectFT|P.... . |
|00001600| 35 30 33 0d 08 98 16 20 | 20 e7 20 66 74 70 75 73 |503.... | . ftpus|
|00001610| 65 72 24 3c 3e 22 22 20 | 8c 0d 08 a2 40 20 20 20 |er$<>"" |....@ |
|00001620| f2 44 69 73 70 6c 61 79 | 28 22 53 65 6e 64 69 6e |.Display|("Sendin|
|00001630| 67 20 75 73 65 72 20 6e | 61 6d 65 20 27 22 2b 66 |g user n|ame '"+f|
|00001640| 74 70 75 73 65 72 24 2b | 22 27 22 2c 22 22 2c 22 |tpuser$+|"'","","|
|00001650| 23 23 46 54 50 23 23 22 | 29 0d 08 ac 23 20 20 20 |##FTP##"|)...# |
|00001660| f2 53 65 6e 64 54 6f 46 | 54 50 28 22 55 53 45 52 |.SendToF|TP("USER|
|00001670| 20 22 2b 66 74 70 75 73 | 65 72 24 29 0d 08 b6 07 | "+ftpus|er$)....|
|00001680| 20 20 cc 0d 08 c0 11 20 | 20 20 f2 53 65 6c 65 63 | ..... | .Selec|
|00001690| 74 46 54 50 0d 08 ca 07 | 20 20 cd 0d 08 d4 0a 20 |tFTP....| ..... |
|000016a0| c9 20 32 33 30 0d 08 de | 13 20 20 f2 46 54 50 5f |. 230...|. .FTP_|
|000016b0| 6c 6f 67 67 65 64 69 6e | 0d 08 e8 0a 20 c9 20 32 |loggedin|.... . 2|
|000016c0| 35 37 0d 08 f2 10 20 20 | 66 74 70 64 69 72 24 3d |57.... |ftpdir$=|
|000016d0| 22 22 0d 08 fc 13 20 20 | 73 74 72 24 3d c1 73 74 |"".... |str$=.st|
|000016e0| 72 24 2c 32 29 0d 09 06 | 15 20 20 c8 95 20 a7 73 |r$,2)...|. .. .s|
|000016f0| 74 72 24 2c bd 33 34 29 | 3e 30 0d 09 10 23 20 20 |tr$,.34)|>0...# |
|00001700| 20 66 74 70 64 69 72 24 | 2b 3d c0 73 74 72 24 2c | ftpdir$|+=.str$,|
|00001710| a7 73 74 72 24 2c bd 33 | 34 29 2d 31 29 0d 09 1a |.str$,.3|4)-1)...|
|00001720| 1f 20 20 20 73 74 72 24 | 3d c1 73 74 72 24 2c a7 |. str$|=.str$,.|
|00001730| 73 74 72 24 2c bd 33 34 | 29 2b 31 29 0d 09 24 17 |str$,.34|)+1)..$.|
|00001740| 20 20 20 e7 20 c0 73 74 | 72 24 2c 31 29 3d bd 33 | . .st|r$,1)=.3|
|00001750| 34 20 8c 0d 09 2e 14 20 | 20 20 20 66 74 70 64 69 |4 ..... | ftpdi|
|00001760| 72 24 2b 3d bd 33 34 0d | 09 38 15 20 20 20 20 73 |r$+=.34.|.8. s|
|00001770| 74 72 24 3d c1 73 74 72 | 24 2c 32 29 0d 09 42 08 |tr$=.str|$,2)..B.|
|00001780| 20 20 20 cd 0d 09 4c 07 | 20 20 ce 0d 09 56 16 20 | ...L.| ...V. |
|00001790| 20 e7 20 66 74 70 5f 63 | 64 74 79 70 65 3d 32 20 | . ftp_c|dtype=2 |
|000017a0| 8c 0d 09 60 3a 20 20 20 | f2 44 69 73 70 6c 61 79 |...`: |.Display|
|000017b0| 28 22 43 75 72 72 65 6e | 74 20 64 69 72 65 63 74 |("Curren|t direct|
|000017c0| 6f 72 79 20 22 2b 66 74 | 70 64 69 72 24 2c 22 22 |ory "+ft|pdir$,""|
|000017d0| 2c 22 23 23 46 54 50 23 | 23 22 29 0d 09 6a 07 20 |,"##FTP#|#")..j. |
|000017e0| 20 cd 0d 09 74 0a 20 c9 | 20 32 30 30 0d 09 7e 2e | ...t. .| 200..~.|
|000017f0| 20 20 f4 20 50 52 4f 43 | 44 69 73 70 6c 61 79 28 | . PROC|Display(|
|00001800| 22 43 6f 6d 6d 61 6e 64 | 20 6f 6b 22 2c 22 22 2c |"Command| ok","",|
|00001810| 22 23 23 46 54 50 23 23 | 22 29 0d 09 88 0a 20 c9 |"##FTP##|").... .|
|00001820| 20 33 35 30 0d 09 92 15 | 20 20 e7 20 66 74 70 64 | 350....| . ftpd|
|00001830| 72 65 6e 24 3d 22 22 20 | 8c 0d 09 9c 32 20 20 20 |ren$="" |....2 |
|00001840| f2 44 69 73 70 6c 61 79 | 28 22 43 6f 6d 6d 61 6e |.Display|("Comman|
|00001850| 64 20 6f 6b 2c 20 73 65 | 6e 64 20 72 65 73 74 22 |d ok, se|nd rest"|
|00001860| 2c 22 23 23 46 54 50 23 | 23 22 29 0d 09 a6 07 20 |,"##FTP#|#").... |
|00001870| 20 cc 0d 09 b0 23 20 20 | 20 f2 53 65 6e 64 54 6f | ....# | .SendTo|
|00001880| 46 54 50 28 22 52 4e 54 | 4f 20 22 2b 66 74 70 64 |FTP("RNT|O "+ftpd|
|00001890| 72 65 6e 24 29 0d 09 ba | 12 20 20 20 66 74 70 64 |ren$)...|. ftpd|
|000018a0| 72 65 6e 24 3d 22 22 0d | 09 c4 07 20 20 cd 0d 09 |ren$="".|... ...|
|000018b0| ce 0a 20 c9 20 35 30 32 | 0d 09 d8 3d 20 20 f2 44 |.. . 502|...= .D|
|000018c0| 69 73 70 6c 61 79 57 61 | 72 6e 69 6e 67 28 22 43 |isplayWa|rning("C|
|000018d0| 6f 6d 6d 61 6e 64 20 69 | 73 20 6e 6f 74 20 69 6d |ommand i|s not im|
|000018e0| 70 6c 65 6d 65 6e 74 65 | 64 22 2c 22 23 23 46 54 |plemente|d","##FT|
|000018f0| 50 23 23 22 29 0d 09 e2 | 0e 20 c9 20 35 35 30 2c |P##")...|. . 550,|
|00001900| 35 35 33 0d 09 ec 2a 20 | 20 f4 20 50 65 72 6d 69 |553...* | . Permi|
|00001910| 73 73 69 6f 6e 20 64 65 | 6e 69 65 64 20 6f 72 20 |ssion de|nied or |
|00001920| 6f 74 68 65 72 20 66 61 | 69 6c 75 72 65 0d 09 f6 |other fa|ilure...|
|00001930| 2e 20 20 f2 44 69 73 70 | 6c 61 79 57 61 72 6e 69 |. .Disp|layWarni|
|00001940| 6e 67 28 22 46 61 69 6c | 3a 20 22 2b 73 74 72 24 |ng("Fail|: "+str$|
|00001950| 2c 22 23 23 46 54 50 23 | 23 22 29 0d 0a 00 11 20 |,"##FTP#|#").... |
|00001960| 20 66 74 70 64 72 65 6e | 24 3d 22 22 0d 0a 0a 10 | ftpdren|$=""....|
|00001970| 20 20 66 74 70 64 74 79 | 70 65 3d 30 0d 0a 14 0a | ftpdty|pe=0....|
|00001980| 20 c9 20 32 32 31 0d 0a | 1e 36 20 20 f2 44 69 73 | . 221..|.6 .Dis|
|00001990| 70 6c 61 79 28 22 43 6f | 6e 6e 65 63 74 69 6f 6e |play("Co|nnection|
|000019a0| 20 62 65 69 6e 67 20 63 | 6c 6f 73 65 64 22 2c 22 | being c|losed","|
|000019b0| 22 2c 22 23 23 46 54 50 | 23 23 22 29 0d 0a 28 0f |","##FTP|##")..(.|
|000019c0| 20 20 66 74 70 64 6f 6e | 65 3d b9 0d 0a 32 0a 20 | ftpdon|e=...2. |
|000019d0| c9 20 34 32 31 0d 0a 3c | 3a 20 20 f2 44 69 73 70 |. 421..<|: .Disp|
|000019e0| 6c 61 79 57 61 72 6e 69 | 6e 67 28 22 53 65 72 76 |layWarni|ng("Serv|
|000019f0| 65 72 20 6d 75 73 74 20 | 73 68 75 74 20 64 6f 77 |er must |shut dow|
|00001a00| 6e 20 3a 22 2c 22 23 23 | 46 54 50 23 23 22 29 0d |n :","##|FTP##").|
|00001a10| 0a 46 2a 20 20 f2 44 69 | 73 70 6c 61 79 57 61 72 |.F* .Di|splayWar|
|00001a20| 6e 69 6e 67 28 22 20 20 | 22 2b 73 74 72 24 2c 22 |ning(" |"+str$,"|
|00001a30| 23 23 46 54 50 23 23 22 | 29 0d 0a 50 0f 20 20 66 |##FTP##"|)..P. f|
|00001a40| 74 70 64 6f 6e 65 3d b9 | 0d 0a 5a 06 20 7f 0d 0a |tpdone=.|..Z. ...|
|00001a50| 64 2d 20 20 f2 4f 76 65 | 72 6c 6f 61 64 5f 55 6e |d- .Ove|rload_Un|
|00001a60| 6b 6e 6f 77 6e 46 54 50 | 52 65 73 70 6f 6e 73 65 |knownFTP|Response|
|00001a70| 28 63 6f 64 65 2c 73 74 | 72 24 29 0d 0a 6e 05 cb |(code,st|r$)..n..|
|00001a80| 0d 0a 78 05 e1 0d 0a 82 | 05 3a 0d 0a 8c 2c dd f2 |..x.....|.:...,..|
|00001a90| 4f 76 65 72 6c 6f 61 64 | 5f 55 6e 6b 6e 6f 77 6e |Overload|_Unknown|
|00001aa0| 46 54 50 52 65 73 70 6f | 6e 73 65 28 63 6f 64 65 |FTPRespo|nse(code|
|00001ab0| 2c 73 74 72 24 29 0d 0a | 96 33 f2 44 69 73 70 6c |,str$)..|.3.Displ|
|00001ac0| 61 79 57 61 72 6e 69 6e | 67 28 22 55 6e 6b 6e 6f |ayWarnin|g("Unkno|
|00001ad0| 77 6e 20 72 65 73 70 6f | 6e 73 65 20 3a 22 2c 22 |wn respo|nse :","|
|00001ae0| 23 23 46 54 50 23 23 22 | 29 0d 0a a0 34 f2 44 69 |##FTP##"|)...4.Di|
|00001af0| 73 70 6c 61 79 57 61 72 | 6e 69 6e 67 28 22 20 20 |splayWar|ning(" |
|00001b00| 22 2b c3 28 63 6f 64 65 | 29 2b 22 20 22 2b 73 74 |"+.(code|)+" "+st|
|00001b10| 72 24 2c 22 23 23 46 54 | 50 23 23 22 29 0d 0a aa |r$,"##FT|P##")...|
|00001b20| 05 e1 0d 0a b4 05 3a 0d | 0a be 0f dd f2 53 65 6c |......:.|.....Sel|
|00001b30| 65 63 74 46 54 50 0d 0a | c8 11 ea 20 74 69 74 6c |ectFTP..|... titl|
|00001b40| 65 24 2c 70 72 65 24 0d | 0a d2 13 e7 20 66 74 70 |e$,pre$.|.... ftp|
|00001b50| 75 73 65 72 24 3d 22 22 | 20 8c 0d 0a dc 12 20 70 |user$=""| ..... p|
|00001b60| 72 65 24 3d 22 55 73 65 | 72 3e 20 22 0d 0a e6 25 |re$="Use|r> "...%|
|00001b70| 20 74 69 74 6c 65 24 3d | 22 46 54 50 20 6c 6f 67 | title$=|"FTP log|
|00001b80| 69 6e 20 66 6f 72 20 22 | 2b 66 74 70 68 6f 73 74 |in for "|+ftphost|
|00001b90| 24 0d 0a f0 05 cc 0d 0a | fa 14 20 e7 20 66 74 70 |$.......|.. . ftp|
|00001ba0| 70 61 73 73 24 3d 22 22 | 20 8c 0d 0b 04 2a 20 20 |pass$=""| ....* |
|00001bb0| 70 72 65 24 3d 22 50 61 | 73 73 77 6f 72 64 20 28 |pre$="Pa|ssword (|
|00001bc0| 66 6f 72 20 22 2b 66 74 | 70 75 73 65 72 24 2b 22 |for "+ft|puser$+"|
|00001bd0| 29 3e 20 22 0d 0b 0e 26 | 20 20 74 69 74 6c 65 24 |)> "...&| title$|
|00001be0| 3d 22 46 54 50 20 6c 6f | 67 69 6e 20 66 6f 72 20 |="FTP lo|gin for |
|00001bf0| 22 2b 66 74 70 68 6f 73 | 74 24 0d 0b 18 06 20 cc |"+ftphos|t$.... .|
|00001c00| 0d 0b 22 16 20 20 70 72 | 65 24 3d 22 43 6f 6d 6d |..". pr|e$="Comm|
|00001c10| 61 6e 64 3e 20 22 0d 0b | 2c 2a 20 20 74 69 74 6c |and> "..|,* titl|
|00001c20| 65 24 3d 22 46 54 50 20 | 63 6f 6e 6e 65 63 74 69 |e$="FTP |connecti|
|00001c30| 6f 6e 20 74 6f 20 22 2b | 66 74 70 68 6f 73 74 24 |on to "+|ftphost$|
|00001c40| 0d 0b 36 06 20 cd 0d 0b | 40 05 cd 0d 0b 4a 1a f2 |..6. ...|@....J..|
|00001c50| 53 65 74 49 6e 70 75 74 | 54 69 74 6c 65 28 74 69 |SetInput|Title(ti|
|00001c60| 74 6c 65 24 29 0d 0b 54 | 16 f2 53 65 74 50 72 65 |tle$)..T|..SetPre|
|00001c70| 49 6e 70 75 74 28 70 72 | 65 24 29 0d 0b 5e 18 f2 |Input(pr|e$)..^..|
|00001c80| 53 65 74 46 6f 63 75 73 | 28 22 23 23 46 54 50 23 |SetFocus|("##FTP#|
|00001c90| 23 22 29 0d 0b 68 23 f2 | 53 65 74 44 69 73 70 6c |#")..h#.|SetDispl|
|00001ca0| 61 79 46 6f 72 52 65 63 | 61 6c 6c 28 22 23 23 46 |ayForRec|all("##F|
|00001cb0| 54 50 23 23 22 29 0d 0b | 72 1f 53 65 6e 64 69 6e |TP##")..|r.Sendin|
|00001cc0| 67 54 6f 44 69 73 70 6c | 61 79 24 3d 22 23 23 46 |gToDispl|ay$="##F|
|00001cd0| 54 50 23 23 22 0d 0b 7c | 05 e1 0d 0b 86 05 3a 0d |TP##"..||......:.|
|00001ce0| 0b 90 28 dd f2 4f 76 65 | 72 6c 6f 61 64 5f 44 69 |..(..Ove|rload_Di|
|00001cf0| 73 70 6c 61 79 53 65 6c | 65 63 74 65 64 28 64 69 |splaySel|ected(di|
|00001d00| 73 70 6c 61 79 24 29 0d | 0b 9a 1a e7 20 64 69 73 |splay$).|.... dis|
|00001d10| 70 6c 61 79 24 3d 22 23 | 23 46 54 50 23 23 22 20 |play$="#|#FTP##" |
|00001d20| 8c 0d 0b a4 0f 20 f2 53 | 65 6c 65 63 74 46 54 50 |..... .S|electFTP|
|00001d30| 0d 0b ae 05 cc 0d 0b b8 | 11 20 f2 40 28 64 69 73 |........|. .@(dis|
|00001d40| 70 6c 61 79 24 29 0d 0b | c2 05 cd 0d 0b cc 05 e1 |play$)..|........|
|00001d50| 0d 0b d6 05 3a 0d 0b e0 | 1d dd f2 4f 76 65 72 6c |....:...|...Overl|
|00001d60| 6f 61 64 5f 55 73 65 72 | 4c 69 6e 65 28 73 74 72 |oad_User|Line(str|
|00001d70| 24 29 0d 0b ea 0a ea 20 | 63 6f 6d 24 0d 0b f4 32 |$)..... |com$...2|
|00001d80| e7 20 53 65 6e 64 69 6e | 67 54 6f 44 69 73 70 6c |. Sendin|gToDispl|
|00001d90| 61 79 24 3d 22 23 23 46 | 54 50 23 23 22 20 80 20 |ay$="##F|TP##" . |
|00001da0| 66 74 70 68 6f 73 74 24 | 3c 3e 22 22 20 8c 0d 0b |ftphost$|<>"" ...|
|00001db0| fe 0c 20 c8 8e 20 22 22 | 20 ca 0d 0c 08 10 20 20 |.. .. ""| ..... |
|00001dc0| c9 20 66 74 70 75 73 65 | 72 24 0d 0c 12 14 20 20 |. ftpuse|r$.... |
|00001dd0| 20 66 74 70 75 73 65 72 | 24 3d 73 74 72 24 0d 0c | ftpuser|$=str$..|
|00001de0| 1c 12 20 20 20 e7 20 73 | 74 72 24 3d 22 22 20 8c |.. . s|tr$="" .|
|00001df0| 0d 0c 26 12 20 20 20 20 | f2 46 54 50 5f 63 6c 6f |..&. |.FTP_clo|
|00001e00| 73 65 0d 0c 30 08 20 20 | 20 cc 0d 0c 3a 29 20 20 |se..0. | ...:) |
|00001e10| 20 20 e7 20 73 74 72 24 | 3d 22 61 6e 6f 6e 79 6d | . str$|="anonym|
|00001e20| 6f 75 73 22 20 84 20 73 | 74 72 24 3d 22 66 74 70 |ous" . s|tr$="ftp|
|00001e30| 22 20 8c 0d 0c 44 1b 20 | 20 20 20 20 66 74 70 70 |" ...D. | ftpp|
|00001e40| 61 73 73 24 3d 6d 79 5f | 65 6d 61 69 6c 24 0d 0c |ass$=my_|email$..|
|00001e50| 4e 09 20 20 20 20 cd 0d | 0c 58 41 20 20 20 20 f2 |N. ..|.XA .|
|00001e60| 44 69 73 70 6c 61 79 28 | 22 53 65 6e 64 69 6e 67 |Display(|"Sending|
|00001e70| 20 75 73 65 72 20 6e 61 | 6d 65 20 27 22 2b 66 74 | user na|me '"+ft|
|00001e80| 70 75 73 65 72 24 2b 22 | 27 22 2c 22 22 2c 22 23 |puser$+"|'","","#|
|00001e90| 23 46 54 50 23 23 22 29 | 0d 0c 62 20 20 20 20 20 |#FTP##")|..b |
|00001ea0| f2 53 65 6e 64 54 6f 46 | 54 50 28 22 55 53 45 52 |.SendToF|TP("USER|
|00001eb0| 20 22 2b 73 74 72 24 29 | 0d 0c 6c 08 20 20 20 cd | "+str$)|..l. .|
|00001ec0| 0d 0c 76 10 20 20 c9 20 | 66 74 70 70 61 73 73 24 |..v. . |ftppass$|
|00001ed0| 0d 0c 80 14 20 20 20 66 | 74 70 70 61 73 73 24 3d |.... f|tppass$=|
|00001ee0| 73 74 72 24 0d 0c 8a 12 | 20 20 20 e7 20 73 74 72 |str$....| . str|
|00001ef0| 24 3d 22 22 20 8c 0d 0c | 94 13 20 20 20 20 66 74 |$="" ...|.. ft|
|00001f00| 70 75 73 65 72 24 3d 22 | 22 0d 0c 9e 12 20 20 20 |puser$="|".... |
|00001f10| 20 f2 53 65 6c 65 63 74 | 46 54 50 0d 0c a8 08 20 | .Select|FTP.... |
|00001f20| 20 20 cc 0d 0c b2 1e 20 | 20 20 20 e7 20 66 74 70 | ..... | . ftp|
|00001f30| 70 61 73 73 24 3d 6d 79 | 5f 65 6d 61 69 6c 24 20 |pass$=my|_email$ |
|00001f40| 8c 0d 0c bc 43 20 20 20 | 20 20 f2 44 69 73 70 6c |....C | .Displ|
|00001f50| 61 79 28 22 53 65 6e 64 | 69 6e 67 20 65 6d 61 69 |ay("Send|ing emai|
|00001f60| 6c 20 61 64 64 72 65 73 | 73 20 61 73 20 70 61 73 |l addres|s as pas|
|00001f70| 73 77 6f 72 64 22 2c 22 | 22 2c 22 23 23 46 54 50 |sword","|","##FTP|
|00001f80| 23 23 22 29 0d 0c c6 09 | 20 20 20 20 cc 0d 0c d0 |##")....| ....|
|00001f90| 32 20 20 20 20 20 f2 44 | 69 73 70 6c 61 79 28 22 |2 .D|isplay("|
|00001fa0| 53 65 6e 64 69 6e 67 20 | 70 61 73 73 77 6f 72 64 |Sending |password|
|00001fb0| 22 2c 22 22 2c 22 23 23 | 46 54 50 23 23 22 29 0d |","","##|FTP##").|
|00001fc0| 0c da 09 20 20 20 20 cd | 0d 0c e4 20 20 20 20 20 |... .|... |
|00001fd0| f2 53 65 6e 64 54 6f 46 | 54 50 28 22 50 41 53 53 |.SendToF|TP("PASS|
|00001fe0| 20 22 2b 73 74 72 24 29 | 0d 0c ee 08 20 20 20 cd | "+str$)|.... .|
|00001ff0| 0d 0c f8 07 20 20 7f 0d | 0d 02 28 20 20 20 63 6f |.... ..|..( co|
|00002000| 6d 24 3d a4 43 61 70 69 | 74 61 6c 69 73 65 28 a4 |m$=.Capi|talise(.|
|00002010| 6f 6e 65 70 61 72 61 6d | 28 73 74 72 24 29 29 0d |oneparam|(str$)).|
|00002020| 0d 0c 19 20 20 20 73 74 | 72 24 3d a4 6d 6f 76 65 |... st|r$=.move|
|00002030| 6f 6e 28 73 74 72 24 29 | 0d 0d 16 3f 20 20 20 e7 |on(str$)|...? .|
|00002040| 20 66 74 70 64 74 79 70 | 65 3c 3e 30 20 80 20 63 | ftpdtyp|e<>0 . c|
|00002050| 6f 6d 24 3c 3e 22 53 54 | 41 54 22 20 80 20 63 6f |om$<>"ST|AT" . co|
|00002060| 6d 24 3c 3e 22 22 20 80 | 20 63 6f 6d 24 3c 3e 22 |m$<>"" .| com$<>"|
|00002070| 51 55 49 54 22 20 8c 0d | 0d 20 52 20 20 20 20 f2 |QUIT" ..|. R .|
|00002080| 44 69 73 70 6c 61 79 57 | 61 72 6e 69 6e 67 28 22 |DisplayW|arning("|
|00002090| 4f 70 65 72 61 74 69 6f | 6e 20 63 75 72 72 65 6e |Operatio|n curren|
|000020a0| 74 6c 79 20 69 6e 20 70 | 72 6f 67 72 65 73 73 20 |tly in p|rogress |
|000020b0| 2d 20 70 6c 65 61 73 65 | 20 77 61 69 74 22 2c 22 |- please| wait","|
|000020c0| 23 23 46 54 50 23 23 22 | 29 0d 0d 2a 08 20 20 20 |##FTP##"|)..*. |
|000020d0| cc 0d 0d 34 11 20 20 20 | 20 c8 8e 20 63 6f 6d 24 |...4. | .. com$|
|000020e0| 20 ca 0d 0d 3e 0d 20 20 | 20 20 20 c9 20 22 22 0d | ...>. | . "".|
|000020f0| 0d 48 32 20 20 20 20 20 | 20 f4 20 44 6f 20 6e 6f |.H2 | . Do no|
|00002100| 74 68 69 6e 67 20 69 66 | 20 74 68 65 79 20 6a 75 |thing if| they ju|
|00002110| 73 74 20 70 72 65 73 73 | 65 64 20 72 65 74 75 72 |st press|ed retur|
|00002120| 6e 0d 0d 52 1e 20 20 20 | 20 20 c9 20 22 52 45 4e |n..R. | . "REN|
|00002130| 41 4d 45 22 2c 22 52 45 | 4e 22 2c 22 4d 56 22 0d |AME","RE|N","MV".|
|00002140| 0d 5c 1a 20 20 20 20 20 | 20 e7 20 a7 73 74 72 24 |.\. | . .str$|
|00002150| 2c 22 20 22 29 3d 30 20 | 8c 0d 0d 66 49 20 20 20 |," ")=0 |...fI |
|00002160| 20 20 20 20 f2 44 69 73 | 70 6c 61 79 57 61 72 6e | .Dis|playWarn|
|00002170| 69 6e 67 28 22 53 79 6e | 74 61 78 3a 20 52 45 4e |ing("Syn|tax: REN|
|00002180| 20 3c 6f 6c 64 2d 6e 61 | 6d 65 3e 20 3c 6e 65 77 | <old-na|me> <new|
|00002190| 2d 6e 61 6d 65 3e 22 2c | 22 23 23 46 54 50 23 23 |-name>",|"##FTP##|
|000021a0| 22 29 0d 0d 70 0b 20 20 | 20 20 20 20 cc 0d 0d 7a |")..p. | ...z|
|000021b0| 31 20 20 20 20 20 20 20 | f2 46 54 50 5f 6d 76 28 |1 |.FTP_mv(|
|000021c0| a4 6f 6e 65 70 61 72 61 | 6d 28 73 74 72 24 29 2c |.onepara|m(str$),|
|000021d0| a4 6d 6f 76 65 6f 6e 28 | 73 74 72 24 29 29 0d 0d |.moveon(|str$))..|
|000021e0| 84 0b 20 20 20 20 20 20 | cd 0d 0d 8e 1e 20 20 20 |.. |..... |
|000021f0| 20 20 c9 20 22 44 45 4c | 45 54 45 22 2c 22 44 45 | . "DEL|ETE","DE|
|00002200| 4c 22 2c 22 52 4d 22 0d | 0d 98 15 20 20 20 20 20 |L","RM".|... |
|00002210| 20 e7 20 73 74 72 24 3d | 22 22 20 8c 0d 0d a2 3a | . str$=|"" ....:|
|00002220| 20 20 20 20 20 20 20 f2 | 44 69 73 70 6c 61 79 57 | .|DisplayW|
|00002230| 61 72 6e 69 6e 67 28 22 | 53 79 6e 74 61 78 3a 20 |arning("|Syntax: |
|00002240| 44 45 4c 20 3c 66 69 6c | 65 3e 22 2c 22 23 23 46 |DEL <fil|e>","##F|
|00002250| 54 50 23 23 22 29 0d 0d | ac 0b 20 20 20 20 20 20 |TP##")..|.. |
|00002260| cc 0d 0d b6 18 20 20 20 | 20 20 20 20 f2 46 54 50 |..... | .FTP|
|00002270| 5f 72 6d 28 73 74 72 24 | 29 0d 0d c0 0b 20 20 20 |_rm(str$|).... |
|00002280| 20 20 20 cd 0d 0d ca 0f | 20 20 20 20 20 c9 20 22 | .....| . "|
|00002290| 43 44 22 0d 0d d4 16 20 | 20 20 20 20 20 e7 20 73 |CD".... | . s|
|000022a0| 74 72 24 3d 22 5e 22 20 | 8c 0d 0d de 12 20 20 20 |tr$="^" |..... |
|000022b0| 20 20 20 20 f2 46 54 50 | 5f 75 70 0d 0d e8 0b 20 | .FTP|_up.... |
|000022c0| 20 20 20 20 20 cc 0d 0d | f2 18 20 20 20 20 20 20 | ...|.. |
|000022d0| 20 f2 46 54 50 5f 63 64 | 28 73 74 72 24 29 0d 0d | .FTP_cd|(str$)..|
|000022e0| fc 0b 20 20 20 20 20 20 | cd 0d 0e 06 0f 20 20 20 |.. |..... |
|000022f0| 20 20 c9 20 22 55 50 22 | 0d 0e 10 11 20 20 20 20 | . "UP"|.... |
|00002300| 20 20 f2 46 54 50 5f 75 | 70 0d 0e 1a 19 20 20 20 | .FTP_u|p.... |
|00002310| 20 20 c9 20 22 4c 53 22 | 2c 22 44 49 52 22 2c 22 | . "LS"|,"DIR","|
|00002320| 2e 22 0d 0e 24 1a 20 20 | 20 20 20 20 f2 46 54 50 |."..$. | .FTP|
|00002330| 5f 64 69 72 28 73 74 72 | 24 2c 33 29 0d 0e 2e 0f |_dir(str|$,3)....|
|00002340| 20 20 20 20 20 c9 20 22 | 4c 4c 22 0d 0e 38 1a 20 | . "|LL"..8. |
|00002350| 20 20 20 20 20 f2 46 54 | 50 5f 64 69 72 28 73 74 | .FT|P_dir(st|
|00002360| 72 24 2c 31 29 0d 0e 42 | 10 20 20 20 20 20 c9 20 |r$,1)..B|. . |
|00002370| 22 47 45 54 22 0d 0e 4c | 15 20 20 20 20 20 20 e7 |"GET"..L|. .|
|00002380| 20 73 74 72 24 3d 22 22 | 20 8c 0d 0e 56 50 20 20 | str$=""| ...VP |
|00002390| 20 20 20 20 20 f2 44 69 | 73 70 6c 61 79 57 61 72 | .Di|splayWar|
|000023a0| 6e 69 6e 67 28 22 53 79 | 6e 74 61 78 3a 20 47 45 |ning("Sy|ntax: GE|
|000023b0| 54 20 3c 72 65 6d 6f 74 | 65 2d 66 69 6c 65 3e 20 |T <remot|e-file> |
|000023c0| 5b 3c 6c 6f 63 61 6c 2d | 66 69 6c 65 3e 5d 22 2c |[<local-|file>]",|
|000023d0| 22 23 23 46 54 50 23 23 | 22 29 0d 0e 60 0b 20 20 |"##FTP##|")..`. |
|000023e0| 20 20 20 20 cc 0d 0e 6a | 32 20 20 20 20 20 20 20 | ...j|2 |
|000023f0| f2 46 54 50 5f 67 65 74 | 28 a4 6f 6e 65 70 61 72 |.FTP_get|(.onepar|
|00002400| 61 6d 28 73 74 72 24 29 | 2c a4 6d 6f 76 65 6f 6e |am(str$)|,.moveon|
|00002410| 28 73 74 72 24 29 29 0d | 0e 74 0b 20 20 20 20 20 |(str$)).|.t. |
|00002420| 20 cd 0d 0e 7e 11 20 20 | 20 20 20 c9 20 22 54 59 | ...~. | . "TY|
|00002430| 50 45 22 0d 0e 88 15 20 | 20 20 20 20 20 e7 20 73 |PE".... | . s|
|00002440| 74 72 24 3d 22 22 20 8c | 0d 0e 92 3b 20 20 20 20 |tr$="" .|...; |
|00002450| 20 20 20 f2 44 69 73 70 | 6c 61 79 57 61 72 6e 69 | .Disp|layWarni|
|00002460| 6e 67 28 22 53 79 6e 74 | 61 78 3a 20 54 59 50 45 |ng("Synt|ax: TYPE|
|00002470| 20 3c 66 69 6c 65 3e 22 | 2c 22 23 23 46 54 50 23 | <file>"|,"##FTP#|
|00002480| 23 22 29 0d 0e 9c 0b 20 | 20 20 20 20 20 cc 0d 0e |#").... | ...|
|00002490| a6 1a 20 20 20 20 20 20 | 20 f2 46 54 50 5f 74 79 |.. | .FTP_ty|
|000024a0| 70 65 28 73 74 72 24 29 | 0d 0e b0 0b 20 20 20 20 |pe(str$)|.... |
|000024b0| 20 20 cd 0d 0e ba 10 20 | 20 20 20 20 c9 20 22 50 | ..... | . "P|
|000024c0| 55 54 22 0d 0e c4 15 20 | 20 20 20 20 20 e7 20 73 |UT".... | . s|
|000024d0| 74 72 24 3d 22 22 20 8c | 0d 0e ce 50 20 20 20 20 |tr$="" .|...P |
|000024e0| 20 20 20 f2 44 69 73 70 | 6c 61 79 57 61 72 6e 69 | .Disp|layWarni|
|000024f0| 6e 67 28 22 53 79 6e 74 | 61 78 3a 20 50 55 54 20 |ng("Synt|ax: PUT |
|00002500| 3c 6c 6f 63 61 6c 2d 66 | 69 6c 65 3e 20 5b 3c 72 |<local-f|ile> [<r|
|00002510| 65 6d 6f 74 65 2d 66 69 | 6c 65 3e 5d 22 2c 22 23 |emote-fi|le>]","#|
|00002520| 23 46 54 50 23 23 22 29 | 0d 0e d8 0b 20 20 20 20 |#FTP##")|.... |
|00002530| 20 20 cc 0d 0e e2 32 20 | 20 20 20 20 20 20 f2 46 | ....2 | .F|
|00002540| 54 50 5f 70 75 74 28 a4 | 6f 6e 65 70 61 72 61 6d |TP_put(.|oneparam|
|00002550| 28 73 74 72 24 29 2c a4 | 6d 6f 76 65 6f 6e 28 73 |(str$),.|moveon(s|
|00002560| 74 72 24 29 29 0d 0e ec | 0b 20 20 20 20 20 20 cd |tr$))...|. .|
|00002570| 0d 0e f6 11 20 20 20 20 | 20 c9 20 22 53 54 41 54 |.... | . "STAT|
|00002580| 22 0d 0f 00 42 20 20 20 | 20 20 20 f2 44 69 73 70 |"...B | .Disp|
|00002590| 6c 61 79 28 22 52 65 71 | 75 65 73 74 69 6e 67 20 |lay("Req|uesting |
|000025a0| 6f 70 65 72 61 74 69 6f | 6e 20 73 74 61 74 69 73 |operatio|n statis|
|000025b0| 74 69 63 73 22 2c 22 22 | 2c 22 23 23 46 54 50 23 |tics",""|,"##FTP#|
|000025c0| 23 22 29 0d 0f 0a 1c 20 | 20 20 20 20 20 f2 53 65 |#").... | .Se|
|000025d0| 6e 64 54 6f 46 54 50 28 | 22 53 54 41 54 22 29 0d |ndToFTP(|"STAT").|
|000025e0| 0f 14 11 20 20 20 20 20 | c9 20 22 51 55 49 54 22 |... |. "QUIT"|
|000025f0| 0d 0f 1e 13 20 20 20 20 | 20 20 f2 46 54 50 5f 71 |.... | .FTP_q|
|00002600| 75 69 74 0d 0f 28 11 20 | 20 20 20 20 c9 20 22 55 |uit..(. | . "U|
|00002610| 53 45 52 22 0d 0f 32 17 | 20 20 20 20 20 20 66 74 |SER"..2.| ft|
|00002620| 70 75 73 65 72 24 3d 73 | 74 72 24 0d 0f 3c 2b 20 |puser$=s|tr$..<+ |
|00002630| 20 20 20 20 20 e7 20 73 | 74 72 24 3d 22 61 6e 6f | . s|tr$="ano|
|00002640| 6e 79 6d 6f 75 73 22 20 | 84 20 73 74 72 24 3d 22 |nymous" |. str$="|
|00002650| 66 74 70 22 20 8c 0d 0f | 46 1d 20 20 20 20 20 20 |ftp" ...|F. |
|00002660| 20 66 74 70 70 61 73 73 | 24 3d 6d 79 5f 65 6d 61 | ftppass|$=my_ema|
|00002670| 69 6c 24 0d 0f 50 0b 20 | 20 20 20 20 20 cc 0d 0f |il$..P. | ...|
|00002680| 5a 16 20 20 20 20 20 20 | 20 66 74 70 70 61 73 73 |Z. | ftppass|
|00002690| 24 3d 22 22 0d 0f 64 0b | 20 20 20 20 20 20 cd 0d |$=""..d.| ..|
|000026a0| 0f 6e 16 20 20 20 20 20 | 20 e7 20 73 74 72 24 3c |.n. | . str$<|
|000026b0| 3e 22 22 20 8c 0d 0f 78 | 23 20 20 20 20 20 20 20 |>"" ...x|# |
|000026c0| f2 53 65 6e 64 54 6f 46 | 54 50 28 22 55 53 45 52 |.SendToF|TP("USER|
|000026d0| 20 22 2b 73 74 72 24 29 | 0d 0f 82 0b 20 20 20 20 | "+str$)|.... |
|000026e0| 20 20 cc 0d 0f 8c 15 20 | 20 20 20 20 20 20 f2 53 | ..... | .S|
|000026f0| 65 6c 65 63 74 46 54 50 | 0d 0f 96 0b 20 20 20 20 |electFTP|.... |
|00002700| 20 20 cd 0d 0f a0 0a 20 | 20 20 20 20 7f 0d 0f aa | ..... | ....|
|00002710| 30 20 20 20 20 20 20 f2 | 4f 76 65 72 6c 6f 61 64 |0 .|Overload|
|00002720| 5f 55 6e 6b 6e 6f 77 6e | 46 54 50 43 6f 6d 6d 61 |_Unknown|FTPComma|
|00002730| 6e 64 28 63 6f 6d 24 2c | 73 74 72 24 29 0d 0f b4 |nd(com$,|str$)...|
|00002740| 09 20 20 20 20 cb 0d 0f | be 08 20 20 20 cd 0d 0f |. ...|.. ...|
|00002750| c8 06 20 cb 0d 0f d2 05 | cc 0d 0f dc 0d 20 f2 40 |.. .....|..... .@|
|00002760| 28 73 74 72 24 29 0d 0f | e6 05 cd 0d 0f f0 05 e1 |(str$)..|........|
|00002770| 0d 0f fa 05 3a 0d 10 04 | 2b dd f2 4f 76 65 72 6c |....:...|+..Overl|
|00002780| 6f 61 64 5f 55 6e 6b 6e | 6f 77 6e 46 54 50 43 6f |oad_Unkn|ownFTPCo|
|00002790| 6d 6d 61 6e 64 28 63 6f | 6d 24 2c 73 74 72 24 29 |mmand(co|m$,str$)|
|000027a0| 0d 10 0e 30 f2 44 69 73 | 70 6c 61 79 28 22 52 61 |...0.Dis|play("Ra|
|000027b0| 77 3a 20 22 2b 63 6f 6d | 24 2b 22 20 22 2b 73 74 |w: "+com|$+" "+st|
|000027c0| 72 24 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |r$,"","#|#FTP##")|
|000027d0| 0d 10 18 1d f2 53 65 6e | 64 54 6f 46 54 50 28 63 |.....Sen|dToFTP(c|
|000027e0| 6f 6d 24 2b 22 20 22 2b | 73 74 72 24 29 0d 10 22 |om$+" "+|str$).."|
|000027f0| 05 e1 0d 10 2c 05 3a 0d | 10 36 13 dd f2 53 65 6e |....,.:.|.6...Sen|
|00002800| 64 54 6f 46 54 50 28 61 | 24 29 0d 10 40 1b f2 53 |dToFTP(a|$)..@..S|
|00002810| 65 6e 64 53 74 72 69 6e | 67 28 66 74 70 73 6f 63 |endStrin|g(ftpsoc|
|00002820| 6b 2c 61 24 29 0d 10 4a | 0d e7 20 64 65 62 75 67 |k,a$)..J|.. debug|
|00002830| 20 8c 0d 10 54 24 20 f2 | 44 69 73 70 6c 61 79 49 | ...T$ .|DisplayI|
|00002840| 6e 66 6f 28 22 3e 20 22 | 2b 61 24 2c 22 23 23 46 |nfo("> "|+a$,"##F|
|00002850| 54 50 23 23 22 29 0d 10 | 5e 05 cd 0d 10 68 05 e1 |TP##")..|^....h..|
|00002860| 0d 10 72 05 3a 0d 10 7c | 0f dd f2 46 54 50 5f 63 |..r.:..||...FTP_c|
|00002870| 6c 6f 73 65 0d 10 86 1b | f2 4b 69 6c 6c 44 69 73 |lose....|.KillDis|
|00002880| 70 6c 61 79 28 22 23 23 | 46 54 50 23 23 22 29 0d |play("##|FTP##").|
|00002890| 10 90 16 f2 53 65 6e 64 | 54 6f 46 54 50 28 22 51 |....Send|ToFTP("Q|
|000028a0| 55 49 54 22 29 0d 10 9a | 13 f2 43 6c 6f 73 65 28 |UIT")...|..Close(|
|000028b0| 66 74 70 73 6f 63 6b 29 | 0d 10 a4 1a f2 46 72 65 |ftpsock)|.....Fre|
|000028c0| 65 42 75 66 66 65 72 28 | 66 74 70 62 75 66 66 65 |eBuffer(|ftpbuffe|
|000028d0| 72 29 0d 10 ae 0f 66 74 | 70 68 6f 73 74 24 3d 22 |r)....ft|phost$="|
|000028e0| 22 0d 10 b8 13 e7 20 66 | 74 70 64 70 6f 72 74 3c |"..... f|tpdport<|
|000028f0| 3e 30 20 8c 0d 10 c2 20 | 20 f2 43 6c 6f 73 65 42 |>0 .... | .CloseB|
|00002900| 79 4c 6f 63 61 6c 50 6f | 72 74 28 66 74 70 64 70 |yLocalPo|rt(ftpdp|
|00002910| 6f 72 74 29 0d 10 cc 0f | 20 66 74 70 64 74 79 70 |ort)....| ftpdtyp|
|00002920| 65 3d 30 0d 10 d6 10 20 | 66 74 70 64 72 65 6e 24 |e=0.... |ftpdren$|
|00002930| 3d 22 22 0d 10 e0 0f 20 | 66 74 70 64 70 6f 72 74 |="".... |ftpdport|
|00002940| 3d 30 0d 10 ea 13 20 e7 | 20 66 74 70 64 61 74 61 |=0.... .| ftpdata|
|00002950| 3c 3e 30 20 8c 0d 10 f4 | 15 20 20 f2 43 6c 6f 73 |<>0 ....|. .Clos|
|00002960| 65 28 66 74 70 64 61 74 | 61 29 0d 10 fe 0f 20 20 |e(ftpdat|a).... |
|00002970| 66 74 70 64 61 74 61 3d | 30 0d 11 08 1a 20 20 f2 |ftpdata=|0.... .|
|00002980| 46 72 65 65 42 75 66 66 | 65 72 28 66 74 70 64 62 |FreeBuff|er(ftpdb|
|00002990| 75 66 29 0d 11 12 06 20 | cd 0d 11 1c 05 cd 0d 11 |uf).... |........|
|000029a0| 26 1a f2 52 65 6d 6f 76 | 65 43 61 6c 6c 42 61 63 |&..Remov|eCallBac|
|000029b0| 6b 28 22 46 54 50 22 29 | 0d 11 30 23 e7 20 53 65 |k("FTP")|..0#. Se|
|000029c0| 6e 64 69 6e 67 54 6f 44 | 69 73 70 6c 61 79 24 3d |ndingToD|isplay$=|
|000029d0| 22 23 23 46 54 50 23 23 | 22 20 8c 0d 11 3a 13 20 |"##FTP##|" ...:. |
|000029e0| f2 53 65 6c 65 63 74 4e | 6f 46 6f 63 75 73 0d 11 |.SelectN|oFocus..|
|000029f0| 44 05 cd 0d 11 4e 05 e1 | 0d 11 58 05 3a 0d 11 62 |D....N..|..X.:..b|
|00002a00| 18 dd f2 46 54 50 44 61 | 74 61 28 69 31 2c 68 61 |...FTPDa|ta(i1,ha|
|00002a10| 6e 64 6c 65 29 0d 11 6c | 3a 66 74 70 64 61 74 61 |ndle)..l|:ftpdata|
|00002a20| 3d a4 41 63 63 65 70 74 | 28 68 61 6e 64 6c 65 2c |=.Accept|(handle,|
|00002a30| 22 46 54 50 5f 44 45 72 | 72 6f 72 22 2c 22 46 54 |"FTP_DEr|ror","FT|
|00002a40| 50 5f 44 49 6e 63 6f 6d | 69 6e 67 22 2c 30 29 0d |P_DIncom|ing",0).|
|00002a50| 11 76 12 e7 20 66 74 70 | 64 74 79 70 65 3c 31 20 |.v.. ftp|dtype<1 |
|00002a60| 8c 0d 11 80 2d 20 f4 20 | 49 66 20 69 74 27 73 20 |....- . |If it's |
|00002a70| 61 6e 20 69 6e 76 61 6c | 69 64 20 63 6f 6e 6e 65 |an inval|id conne|
|00002a80| 63 74 69 6f 6e 2c 20 6b | 69 6c 6c 20 69 74 0d 11 |ction, k|ill it..|
|00002a90| 8a 43 20 f2 44 69 73 70 | 6c 61 79 45 72 72 6f 72 |.C .Disp|layError|
|00002aa0| 28 22 49 6e 76 61 6c 69 | 64 20 63 6f 6e 6e 65 63 |("Invali|d connec|
|00002ab0| 74 69 6f 6e 20 74 6f 20 | 46 54 50 20 64 61 74 61 |tion to |FTP data|
|00002ac0| 20 70 6f 72 74 22 2c 22 | 23 23 46 54 50 23 23 22 | port","|##FTP##"|
|00002ad0| 29 0d 11 94 14 20 f2 43 | 6c 6f 73 65 28 66 74 70 |).... .C|lose(ftp|
|00002ae0| 64 61 74 61 29 0d 11 9e | 0e 20 66 74 70 64 61 74 |data)...|. ftpdat|
|00002af0| 61 3d 30 0d 11 a8 05 cc | 0d 11 b2 17 20 66 74 70 |a=0.....|.... ftp|
|00002b00| 64 62 75 66 3d a4 4e 65 | 77 42 75 66 66 65 72 0d |dbuf=.Ne|wBuffer.|
|00002b10| 11 bc 2a 20 f2 4f 76 65 | 72 6c 6f 61 64 5f 46 54 |..* .Ove|rload_FT|
|00002b20| 50 44 61 74 61 43 6f 6e | 6e 65 63 74 69 6f 6e 28 |PDataCon|nection(|
|00002b30| 66 74 70 64 74 79 70 65 | 29 0d 11 c6 13 20 f2 43 |ftpdtype|).... .C|
|00002b40| 6c 6f 73 65 28 68 61 6e | 64 6c 65 29 0d 11 d0 0f |lose(han|dle)....|
|00002b50| 20 66 74 70 64 70 6f 72 | 74 3d 30 0d 11 da 05 cd | ftpdpor|t=0.....|
|00002b60| 0d 11 e4 05 e1 0d 11 ee | 05 3a 0d 11 f8 26 dd f2 |........|.:...&..|
|00002b70| 4f 76 65 72 6c 6f 61 64 | 5f 46 54 50 44 61 74 61 |Overload|_FTPData|
|00002b80| 43 6f 6e 6e 65 63 74 69 | 6f 6e 28 74 79 70 65 29 |Connecti|on(type)|
|00002b90| 0d 12 02 0d c8 8e 20 74 | 79 70 65 20 ca 0d 12 0c |...... t|ype ....|
|00002ba0| 08 20 c9 20 31 0d 12 16 | 19 20 20 f4 20 44 69 72 |. . 1...|. . Dir|
|00002bb0| 65 63 74 6f 72 79 20 6c | 69 73 74 69 6e 67 0d 12 |ectory l|isting..|
|00002bc0| 20 3b 20 20 f2 44 69 73 | 70 6c 61 79 49 6e 66 6f | ; .Dis|playInfo|
|00002bd0| 28 22 2d 2d 20 44 69 72 | 65 63 74 6f 72 79 20 22 |("-- Dir|ectory "|
|00002be0| 2b 66 74 70 64 69 72 24 | 2b 22 20 2d 2d 22 2c 22 |+ftpdir$|+" --","|
|00002bf0| 23 23 46 54 50 23 23 22 | 29 0d 12 2a 08 20 c9 20 |##FTP##"|)..*. . |
|00002c00| 32 0d 12 34 14 20 20 f4 | 20 47 45 54 20 73 74 61 |2..4. .| GET sta|
|00002c10| 72 74 69 6e 67 0d 12 3e | 38 20 20 f2 44 69 73 70 |rting..>|8 .Disp|
|00002c20| 6c 61 79 28 22 43 6f 6e | 6e 65 63 74 69 6f 6e 20 |lay("Con|nection |
|00002c30| 66 6f 72 20 47 45 54 20 | 6f 70 65 6e 65 64 22 2c |for GET |opened",|
|00002c40| 22 22 2c 22 23 23 46 54 | 50 23 23 22 29 0d 12 48 |"","##FT|P##")..H|
|00002c50| 08 20 c9 20 33 0d 12 52 | 1f 20 20 f4 20 53 68 6f |. . 3..R|. . Sho|
|00002c60| 72 74 20 64 69 72 65 63 | 74 6f 72 79 20 6c 69 73 |rt direc|tory lis|
|00002c70| 74 69 6e 67 0d 12 5c 3b | 20 20 f2 44 69 73 70 6c |ting..\;| .Displ|
|00002c80| 61 79 49 6e 66 6f 28 22 | 2d 2d 20 44 69 72 65 63 |ayInfo("|-- Direc|
|00002c90| 74 6f 72 79 20 22 2b 66 | 74 70 64 69 72 24 2b 22 |tory "+f|tpdir$+"|
|00002ca0| 20 2d 2d 22 2c 22 23 23 | 46 54 50 23 23 22 29 0d | --","##|FTP##").|
|00002cb0| 12 66 12 20 20 66 74 70 | 64 6c 69 73 74 24 3d 22 |.f. ftp|dlist$="|
|00002cc0| 22 0d 12 70 08 20 c9 20 | 34 0d 12 7a 14 20 20 f4 |"..p. . |4..z. .|
|00002cd0| 20 50 55 54 20 73 74 61 | 72 74 69 6e 67 0d 12 84 | PUT sta|rting...|
|00002ce0| 38 20 20 f2 44 69 73 70 | 6c 61 79 28 22 43 6f 6e |8 .Disp|lay("Con|
|00002cf0| 6e 65 63 74 69 6f 6e 20 | 66 6f 72 20 50 55 54 20 |nection |for PUT |
|00002d00| 6f 70 65 6e 65 64 22 2c | 22 22 2c 22 23 23 46 54 |opened",|"","##FT|
|00002d10| 50 23 23 22 29 0d 12 8e | 12 20 20 f2 46 54 50 53 |P##")...|. .FTPS|
|00002d20| 65 6e 64 44 61 74 61 0d | 12 98 08 20 c9 20 35 0d |endData.|... . 5.|
|00002d30| 12 a2 15 20 20 f4 20 54 | 59 50 45 20 73 74 61 72 |... . T|YPE star|
|00002d40| 74 69 6e 67 0d 12 ac 38 | 20 20 f2 44 69 73 70 6c |ting...8| .Displ|
|00002d50| 61 79 49 6e 66 6f 28 22 | 2d 2d 20 46 69 6c 65 20 |ayInfo("|-- File |
|00002d60| 22 2b 66 74 70 64 66 69 | 6c 65 24 2b 22 20 2d 2d |"+ftpdfi|le$+" --|
|00002d70| 22 2c 22 23 23 46 54 50 | 23 23 22 29 0d 12 b6 06 |","##FTP|##")....|
|00002d80| 20 7f 0d 12 c0 1f 20 20 | f4 20 55 6e 6b 6e 6f 77 | ..... |. Unknow|
|00002d90| 6e 20 63 6f 6e 6e 65 63 | 74 69 6f 6e 20 74 79 70 |n connec|tion typ|
|00002da0| 65 0d 12 ca 56 20 20 f2 | 44 69 73 70 6c 61 79 45 |e...V .|DisplayE|
|00002db0| 72 72 6f 72 28 22 43 6f | 6e 6e 65 63 74 69 6f 6e |rror("Co|nnection|
|00002dc0| 20 61 63 63 65 70 74 65 | 64 20 62 75 74 20 74 79 | accepte|d but ty|
|00002dd0| 70 65 20 75 6e 72 65 63 | 6f 67 6e 69 73 65 64 2c |pe unrec|ognised,|
|00002de0| 20 63 6c 6f 73 69 6e 67 | 22 2c 22 22 2c 22 23 23 | closing|","","##|
|00002df0| 46 54 50 23 23 22 29 0d | 12 d4 15 20 20 f2 43 6c |FTP##").|... .Cl|
|00002e00| 6f 73 65 28 66 74 70 64 | 61 74 61 29 0d 12 de 0f |ose(ftpd|ata)....|
|00002e10| 20 20 66 74 70 64 61 74 | 61 3d 30 0d 12 e8 05 cb | ftpdat|a=0.....|
|00002e20| 0d 12 f2 05 e1 0d 12 fc | 05 3a 0d 13 06 1f dd f2 |........|.:......|
|00002e30| 46 54 50 5f 44 45 72 72 | 6f 72 28 69 31 2c 69 32 |FTP_DErr|or(i1,i2|
|00002e40| 2c 72 65 61 73 6f 6e 24 | 29 0d 13 10 2c f2 4f 76 |,reason$|)...,.Ov|
|00002e50| 65 72 6c 6f 61 64 5f 46 | 54 50 44 61 74 61 45 72 |erload_F|TPDataEr|
|00002e60| 72 6f 72 28 66 74 70 64 | 74 79 70 65 2c 72 65 61 |ror(ftpd|type,rea|
|00002e70| 73 6f 6e 24 29 0d 13 1a | 13 f2 43 6c 6f 73 65 28 |son$)...|..Close(|
|00002e80| 66 74 70 64 61 74 61 29 | 0d 13 24 18 f2 46 72 65 |ftpdata)|..$..Fre|
|00002e90| 65 42 75 66 66 65 72 28 | 66 74 70 64 62 75 66 29 |eBuffer(|ftpdbuf)|
|00002ea0| 0d 13 2e 0d 66 74 70 64 | 61 74 61 3d 30 0d 13 38 |....ftpd|ata=0..8|
|00002eb0| 0e 66 74 70 64 74 79 70 | 65 3d 30 0d 13 42 0f 66 |.ftpdtyp|e=0..B.f|
|00002ec0| 74 70 64 72 65 6e 24 3d | 22 22 0d 13 4c 05 e1 0d |tpdren$=|""..L...|
|00002ed0| 13 56 05 3a 0d 13 60 29 | dd f2 4f 76 65 72 6c 6f |.V.:..`)|..Overlo|
|00002ee0| 61 64 5f 46 54 50 44 61 | 74 61 45 72 72 6f 72 28 |ad_FTPDa|taError(|
|00002ef0| 74 79 70 65 2c 72 65 61 | 73 6f 6e 24 29 0d 13 6a |type,rea|son$)..j|
|00002f00| 0d c8 8e 20 74 79 70 65 | 20 ca 0d 13 74 08 20 c9 |... type| ...t. .|
|00002f10| 20 31 0d 13 7e 19 20 20 | f4 20 44 69 72 65 63 74 | 1..~. |. Direct|
|00002f20| 6f 72 79 20 6c 69 73 74 | 69 6e 67 0d 13 88 32 20 |ory list|ing...2 |
|00002f30| 20 f2 44 69 73 70 6c 61 | 79 49 6e 66 6f 28 22 2d | .Displa|yInfo("-|
|00002f40| 2d 20 4c 69 73 74 69 6e | 67 20 65 6e 64 73 20 2d |- Listin|g ends -|
|00002f50| 2d 22 2c 22 23 23 46 54 | 50 23 23 22 29 0d 13 92 |-","##FT|P##")...|
|00002f60| 08 20 c9 20 32 0d 13 9c | 10 20 20 f4 20 47 45 54 |. . 2...|. . GET|
|00002f70| 20 64 6f 6e 65 0d 13 a6 | 5b 20 20 f2 44 69 73 70 | done...|[ .Disp|
|00002f80| 6c 61 79 28 22 46 69 6e | 69 73 68 65 64 20 47 45 |lay("Fin|ished GE|
|00002f90| 54 20 6f 66 20 22 2b 66 | 74 70 64 66 69 6c 65 24 |T of "+f|tpdfile$|
|00002fa0| 2b 22 2c 20 22 2b c3 28 | 66 74 70 64 67 6f 74 29 |+", "+.(|ftpdgot)|
|00002fb0| 2b 22 20 62 79 74 65 73 | 20 72 65 63 65 69 76 65 |+" bytes| receive|
|00002fc0| 64 22 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |d","","#|#FTP##")|
|00002fd0| 0d 13 b0 08 20 c9 20 33 | 0d 13 ba 1f 20 20 f4 20 |.... . 3|.... . |
|00002fe0| 53 68 6f 72 74 20 64 69 | 72 65 63 74 6f 72 79 20 |Short di|rectory |
|00002ff0| 6c 69 73 74 69 6e 67 0d | 13 c4 17 20 20 e7 20 66 |listing.|... . f|
|00003000| 74 70 64 6c 69 73 74 24 | 3c 3e 22 22 20 8c 0d 13 |tpdlist$|<>"" ...|
|00003010| ce 27 20 20 20 f2 44 69 | 73 70 6c 61 79 28 66 74 |.' .Di|splay(ft|
|00003020| 70 64 6c 69 73 74 24 2c | 22 22 2c 22 23 23 46 54 |pdlist$,|"","##FT|
|00003030| 50 23 23 22 29 0d 13 d8 | 07 20 20 cd 0d 13 e2 32 |P##")...|. ....2|
|00003040| 20 20 f2 44 69 73 70 6c | 61 79 49 6e 66 6f 28 22 | .Displ|ayInfo("|
|00003050| 2d 2d 20 4c 69 73 74 69 | 6e 67 20 65 6e 64 73 20 |-- Listi|ng ends |
|00003060| 2d 2d 22 2c 22 23 23 46 | 54 50 23 23 22 29 0d 13 |--","##F|TP##")..|
|00003070| ec 08 20 c9 20 34 0d 13 | f6 1e 20 20 f4 20 50 55 |.. . 4..|.. . PU|
|00003080| 54 20 63 6c 6f 73 65 64 | 20 70 72 65 6d 61 74 75 |T closed| prematu|
|00003090| 72 65 6c 79 0d 14 00 42 | 20 20 f2 44 69 73 70 6c |rely...B| .Displ|
|000030a0| 61 79 57 61 72 6e 69 6e | 67 28 22 50 55 54 20 63 |ayWarnin|g("PUT c|
|000030b0| 6f 6e 6e 65 63 74 69 6f | 6e 20 63 6c 6f 73 65 64 |onnectio|n closed|
|000030c0| 20 62 79 20 73 65 72 76 | 65 72 22 2c 22 23 23 46 | by serv|er","##F|
|000030d0| 54 50 23 23 22 29 0d 14 | 0a 42 20 20 f4 20 52 65 |TP##")..|.B . Re|
|000030e0| 6d 6f 76 65 20 74 68 65 | 20 63 61 6c 6c 62 61 63 |move the| callbac|
|000030f0| 6b 20 6f 74 68 65 72 77 | 69 73 65 20 74 68 69 6e |k otherw|ise thin|
|00003100| 67 73 20 67 65 74 20 61 | 20 6c 69 74 74 6c 65 20 |gs get a| little |
|00003110| 68 61 69 72 79 2e 2e 2e | 0d 14 14 1c 20 20 f2 52 |hairy...|.... .R|
|00003120| 65 6d 6f 76 65 43 61 6c | 6c 42 61 63 6b 28 22 46 |emoveCal|lBack("F|
|00003130| 54 50 22 29 0d 14 1e 08 | 20 c9 20 35 0d 14 28 11 |TP")....| . 5..(.|
|00003140| 20 20 f4 20 54 59 50 45 | 20 64 6f 6e 65 0d 14 32 | . TYPE| done..2|
|00003150| 3a 20 20 f2 44 69 73 70 | 6c 61 79 49 6e 66 6f 28 |: .Disp|layInfo(|
|00003160| 22 2d 2d 20 45 6e 64 20 | 6f 66 20 22 2b 66 74 70 |"-- End |of "+ftp|
|00003170| 64 66 69 6c 65 24 2b 22 | 20 2d 2d 22 2c 22 23 23 |dfile$+"| --","##|
|00003180| 46 54 50 23 23 22 29 0d | 14 3c 06 20 7f 0d 14 46 |FTP##").|.<. ...F|
|00003190| 48 20 20 f2 44 69 73 70 | 6c 61 79 45 72 72 6f 72 |H .Disp|layError|
|000031a0| 28 22 43 6f 6e 6e 65 63 | 74 69 6f 6e 20 63 6c 6f |("Connec|tion clo|
|000031b0| 73 65 64 20 66 6f 72 20 | 75 6e 72 65 63 6f 67 6e |sed for |unrecogn|
|000031c0| 69 73 65 64 20 74 79 70 | 65 22 2c 22 23 23 46 54 |ised typ|e","##FT|
|000031d0| 50 23 23 22 29 0d 14 50 | 05 cb 0d 14 5a 05 e1 0d |P##")..P|....Z...|
|000031e0| 14 64 05 3a 0d 14 6e 1a | dd f2 46 54 50 5f 44 49 |.d.:..n.|..FTP_DI|
|000031f0| 6e 63 6f 6d 69 6e 67 28 | 69 31 2c 69 32 29 0d 14 |ncoming(|i1,i2)..|
|00003200| 78 0e ea 20 6e 75 6d 62 | 79 74 65 73 0d 14 82 29 |x.. numb|ytes...)|
|00003210| 6e 75 6d 62 79 74 65 73 | 3d a4 52 65 61 64 54 6f |numbytes|=.ReadTo|
|00003220| 53 74 61 74 69 63 42 75 | 66 66 65 72 28 66 74 70 |StaticBu|ffer(ftp|
|00003230| 64 61 74 61 29 0d 14 8c | 30 f2 4f 76 65 72 6c 6f |data)...|0.Overlo|
|00003240| 61 64 5f 46 54 50 44 61 | 74 61 49 6e 63 6f 6d 69 |ad_FTPDa|taIncomi|
|00003250| 6e 67 28 66 74 70 64 74 | 79 70 65 2c 6e 75 6d 62 |ng(ftpdt|ype,numb|
|00003260| 79 74 65 73 29 0d 14 96 | 05 e1 0d 14 a0 05 3a 0d |ytes)...|......:.|
|00003270| 14 aa 2d dd f2 4f 76 65 | 72 6c 6f 61 64 5f 46 54 |..-..Ove|rload_FT|
|00003280| 50 44 61 74 61 49 6e 63 | 6f 6d 69 6e 67 28 74 79 |PDataInc|oming(ty|
|00003290| 70 65 2c 6e 75 6d 62 79 | 74 65 73 29 0d 14 b4 12 |pe,numby|tes)....|
|000032a0| ea 20 73 74 72 24 2c 6f | 75 74 2c 6d 65 6d 0d 14 |. str$,o|ut,mem..|
|000032b0| be 11 c8 8e 20 66 74 70 | 64 74 79 70 65 20 ca 0d |.... ftp|dtype ..|
|000032c0| 14 c8 08 20 c9 20 31 0d | 14 d2 19 20 20 f4 20 44 |... . 1.|... . D|
|000032d0| 69 72 65 63 74 6f 72 79 | 20 6c 69 73 74 69 6e 67 |irectory| listing|
|000032e0| 0d 14 dc 34 20 20 f2 42 | 75 66 66 65 72 41 64 64 |...4 .B|ufferAdd|
|000032f0| 28 66 74 70 64 62 75 66 | 2c a4 53 74 61 74 69 63 |(ftpdbuf|,.Static|
|00003300| 42 75 66 66 65 72 41 64 | 64 72 2c 6e 75 6d 62 79 |BufferAd|dr,numby|
|00003310| 74 65 73 29 0d 14 e6 26 | 20 20 73 74 72 24 3d a4 |tes)...&| str$=.|
|00003320| 47 65 74 4c 69 6e 65 46 | 72 6f 6d 42 75 66 66 65 |GetLineF|romBuffe|
|00003330| 72 28 66 74 70 64 62 75 | 66 29 0d 14 f0 10 20 20 |r(ftpdbu|f).... |
|00003340| c8 95 20 a9 28 73 74 72 | 24 29 0d 14 fa 22 20 20 |.. .(str|$)..." |
|00003350| 20 f2 44 69 73 70 6c 61 | 79 28 73 74 72 24 2c 22 | .Displa|y(str$,"|
|00003360| 22 2c 22 23 23 46 54 50 | 23 23 22 29 0d 15 04 27 |","##FTP|##")...'|
|00003370| 20 20 20 73 74 72 24 3d | a4 47 65 74 4c 69 6e 65 | str$=|.GetLine|
|00003380| 46 72 6f 6d 42 75 66 66 | 65 72 28 66 74 70 64 62 |FromBuff|er(ftpdb|
|00003390| 75 66 29 0d 15 0e 07 20 | 20 ce 0d 15 18 08 20 c9 |uf).... | ..... .|
|000033a0| 20 32 0d 15 22 10 20 20 | f4 20 47 45 54 20 66 69 | 2..". |. GET fi|
|000033b0| 6c 65 0d 15 2c 1b 20 20 | 6d 65 6d 3d a4 53 74 61 |le..,. |mem=.Sta|
|000033c0| 74 69 63 42 75 66 66 65 | 72 41 64 64 72 0d 15 36 |ticBuffe|rAddr..6|
|000033d0| 14 20 20 6f 75 74 3d ad | 28 66 74 70 64 74 6f 24 |. out=.|(ftpdto$|
|000033e0| 29 0d 15 40 2d 20 20 c8 | 99 20 22 4f 53 5f 47 42 |)..@- .|. "OS_GB|
|000033f0| 50 42 22 2c 31 2c 6f 75 | 74 2c 6d 65 6d 2c 6e 75 |PB",1,ou|t,mem,nu|
|00003400| 6d 62 79 74 65 73 2c 66 | 74 70 64 67 6f 74 0d 15 |mbytes,f|tpdgot..|
|00003410| 4a 0b 20 20 d9 23 6f 75 | 74 0d 15 54 17 20 20 66 |J. .#ou|t..T. f|
|00003420| 74 70 64 67 6f 74 2b 3d | 6e 75 6d 62 79 74 65 73 |tpdgot+=|numbytes|
|00003430| 0d 15 5e 3c 20 20 f2 44 | 69 73 70 6c 61 79 28 22 |..^< .D|isplay("|
|00003440| 52 65 63 65 69 76 65 64 | 20 22 2b c3 28 66 74 70 |Received| "+.(ftp|
|00003450| 64 67 6f 74 29 2b 22 20 | 62 79 74 65 73 22 2c 22 |dgot)+" |bytes","|
|00003460| 22 2c 22 23 23 46 54 50 | 23 23 22 29 0d 15 68 08 |","##FTP|##")..h.|
|00003470| 20 c9 20 33 0d 15 72 1f | 20 20 f4 20 53 68 6f 72 | . 3..r.| . Shor|
|00003480| 74 20 64 69 72 65 63 74 | 6f 72 79 20 6c 69 73 74 |t direct|ory list|
|00003490| 69 6e 67 0d 15 7c 34 20 | 20 f2 42 75 66 66 65 72 |ing..|4 | .Buffer|
|000034a0| 41 64 64 28 66 74 70 64 | 62 75 66 2c a4 53 74 61 |Add(ftpd|buf,.Sta|
|000034b0| 74 69 63 42 75 66 66 65 | 72 41 64 64 72 2c 6e 75 |ticBuffe|rAddr,nu|
|000034c0| 6d 62 79 74 65 73 29 0d | 15 86 26 20 20 73 74 72 |mbytes).|..& str|
|000034d0| 24 3d a4 47 65 74 4c 69 | 6e 65 46 72 6f 6d 42 75 |$=.GetLi|neFromBu|
|000034e0| 66 66 65 72 28 66 74 70 | 64 62 75 66 29 0d 15 90 |ffer(ftp|dbuf)...|
|000034f0| 10 20 20 c8 95 20 a9 28 | 73 74 72 24 29 0d 15 9a |. .. .(|str$)...|
|00003500| 1a 20 20 20 66 74 70 64 | 6c 69 73 74 24 2b 3d 73 |. ftpd|list$+=s|
|00003510| 74 72 24 2b 22 20 22 0d | 15 a4 1b 20 20 20 e7 20 |tr$+" ".|... . |
|00003520| a9 28 66 74 70 64 6c 69 | 73 74 24 29 3e 3d 34 38 |.(ftpdli|st$)>=48|
|00003530| 20 8c 0d 15 ae 28 20 20 | 20 20 f2 44 69 73 70 6c | ....( | .Displ|
|00003540| 61 79 28 66 74 70 64 6c | 69 73 74 24 2c 22 22 2c |ay(ftpdl|ist$,"",|
|00003550| 22 23 23 46 54 50 23 23 | 22 29 0d 15 b8 14 20 20 |"##FTP##|").... |
|00003560| 20 20 66 74 70 64 6c 69 | 73 74 24 3d 22 22 0d 15 | ftpdli|st$=""..|
|00003570| c2 08 20 20 20 cc 0d 15 | cc 2f 20 20 20 20 66 74 |.. ...|./ ft|
|00003580| 70 64 6c 69 73 74 24 2b | 3d c4 31 32 2d 28 a9 28 |pdlist$+|=.12-(.(|
|00003590| 66 74 70 64 6c 69 73 74 | 24 29 20 83 20 31 32 29 |ftpdlist|$) . 12)|
|000035a0| 2c 22 20 22 29 0d 15 d6 | 08 20 20 20 cd 0d 15 e0 |," ")...|. ....|
|000035b0| 27 20 20 20 73 74 72 24 | 3d a4 47 65 74 4c 69 6e |' str$|=.GetLin|
|000035c0| 65 46 72 6f 6d 42 75 66 | 66 65 72 28 66 74 70 64 |eFromBuf|fer(ftpd|
|000035d0| 62 75 66 29 0d 15 ea 07 | 20 20 ce 0d 15 f4 08 20 |buf)....| ..... |
|000035e0| c9 20 34 0d 15 fe 27 20 | 20 f4 20 44 61 74 61 20 |. 4...' | . Data |
|000035f0| 69 6e 63 6f 6d 69 6e 67 | 20 6f 6e 20 50 55 54 20 |incoming| on PUT |
|00003600| 3f 20 49 67 6e 6f 72 65 | 20 21 0d 16 08 08 20 c9 |? Ignore| !.... .|
|00003610| 20 35 0d 16 12 11 20 20 | f4 20 54 59 50 45 20 64 | 5.... |. TYPE d|
|00003620| 61 74 61 0d 16 1c 34 20 | 20 f2 42 75 66 66 65 72 |ata...4 | .Buffer|
|00003630| 41 64 64 28 66 74 70 64 | 62 75 66 2c a4 53 74 61 |Add(ftpd|buf,.Sta|
|00003640| 74 69 63 42 75 66 66 65 | 72 41 64 64 72 2c 6e 75 |ticBuffe|rAddr,nu|
|00003650| 6d 62 79 74 65 73 29 0d | 16 26 26 20 20 73 74 72 |mbytes).|.&& str|
|00003660| 24 3d a4 47 65 74 4c 69 | 6e 65 46 72 6f 6d 42 75 |$=.GetLi|neFromBu|
|00003670| 66 66 65 72 28 66 74 70 | 64 62 75 66 29 0d 16 30 |ffer(ftp|dbuf)..0|
|00003680| 10 20 20 c8 95 20 a9 28 | 73 74 72 24 29 0d 16 3a |. .. .(|str$)..:|
|00003690| 2e 20 20 20 f2 44 69 73 | 70 6c 61 79 28 a4 43 6f |. .Dis|play(.Co|
|000036a0| 6c 6f 75 72 28 31 32 29 | 2b 73 74 72 24 2c 22 22 |lour(12)|+str$,""|
|000036b0| 2c 22 23 23 46 54 50 23 | 23 22 29 0d 16 44 27 20 |,"##FTP#|#")..D' |
|000036c0| 20 20 73 74 72 24 3d a4 | 47 65 74 4c 69 6e 65 46 | str$=.|GetLineF|
|000036d0| 72 6f 6d 42 75 66 66 65 | 72 28 66 74 70 64 62 75 |romBuffe|r(ftpdbu|
|000036e0| 66 29 0d 16 4e 07 20 20 | ce 0d 16 58 05 cb 0d 16 |f)..N. |...X....|
|000036f0| 62 05 e1 0d 16 6c 05 3a | 0d 16 76 18 dd f2 46 54 |b....l.:|..v...FT|
|00003700| 50 5f 64 69 72 28 73 74 | 72 24 2c 74 79 70 65 29 |P_dir(st|r$,type)|
|00003710| 0d 16 80 08 ea 20 61 24 | 0d 16 8a 1d f2 44 69 73 |..... a$|.....Dis|
|00003720| 70 6c 61 79 28 22 22 2c | 22 22 2c 22 23 23 46 54 |play("",|"","##FT|
|00003730| 50 23 23 22 29 0d 16 94 | 37 f2 44 69 73 70 6c 61 |P##")...|7.Displa|
|00003740| 79 28 22 46 65 74 63 68 | 69 6e 67 20 64 69 72 65 |y("Fetch|ing dire|
|00003750| 63 74 6f 72 79 20 6c 69 | 73 74 69 6e 67 22 2c 22 |ctory li|sting","|
|00003760| 22 2c 22 23 23 46 54 50 | 23 23 22 29 0d 16 9e 12 |","##FTP|##")....|
|00003770| f4 20 4c 69 73 74 69 6e | 67 20 6d 6f 64 65 0d 16 |. Listin|g mode..|
|00003780| a8 11 66 74 70 64 74 79 | 70 65 3d 74 79 70 65 0d |..ftpdty|pe=type.|
|00003790| 16 b2 17 f4 20 53 65 6c | 65 63 74 20 41 53 43 49 |.... Sel|ect ASCI|
|000037a0| 49 20 6d 6f 64 65 0d 16 | bc 18 f2 53 65 6e 64 54 |I mode..|...SendT|
|000037b0| 6f 46 54 50 28 22 54 59 | 50 45 20 41 22 29 0d 16 |oFTP("TY|PE A")..|
|000037c0| c6 1d f4 20 57 68 69 63 | 68 20 74 79 70 65 20 64 |... Whic|h type d|
|000037d0| 6f 20 77 65 20 77 61 6e | 74 20 3f 0d 16 d0 0e e7 |o we wan|t ?.....|
|000037e0| 20 74 79 70 65 3d 31 20 | 8c 0d 16 da 0e 20 61 24 | type=1 |..... a$|
|000037f0| 3d 22 4c 49 53 54 22 0d | 16 e4 05 cc 0d 16 ee 0e |="LIST".|........|
|00003800| 20 61 24 3d 22 4e 4c 53 | 54 22 0d 16 f8 05 cd 0d | a$="NLS|T"......|
|00003810| 17 02 15 f4 20 53 65 6c | 65 63 74 20 74 68 65 20 |.... Sel|ect the |
|00003820| 70 6f 72 74 0d 17 0c 0d | f2 46 54 50 5f 70 6f 72 |port....|.FTP_por|
|00003830| 74 0d 17 16 1b f4 20 41 | 6e 64 20 72 65 71 75 65 |t..... A|nd reque|
|00003840| 73 74 20 66 69 6c 65 20 | 6c 69 73 74 0d 17 20 0f |st file |list.. .|
|00003850| e7 20 73 74 72 24 3d 22 | 22 20 8c 0d 17 2a 13 20 |. str$="|" ...*. |
|00003860| f2 53 65 6e 64 54 6f 46 | 54 50 28 61 24 29 0d 17 |.SendToF|TP(a$)..|
|00003870| 34 05 cc 0d 17 3e 1c 20 | f2 53 65 6e 64 54 6f 46 |4....>. |.SendToF|
|00003880| 54 50 28 61 24 2b 22 20 | 22 2b 73 74 72 24 29 0d |TP(a$+" |"+str$).|
|00003890| 17 48 05 cd 0d 17 52 05 | e1 0d 17 5c 05 3a 0d 17 |.H....R.|...\.:..|
|000038a0| 66 12 dd f2 46 54 50 5f | 63 64 28 64 69 72 24 29 |f...FTP_|cd(dir$)|
|000038b0| 0d 17 70 1d f2 44 69 73 | 70 6c 61 79 28 22 22 2c |..p..Dis|play("",|
|000038c0| 22 22 2c 22 23 23 46 54 | 50 23 23 22 29 0d 17 7a |"","##FT|P##")..z|
|000038d0| 38 f2 44 69 73 70 6c 61 | 79 28 22 43 68 61 6e 67 |8.Displa|y("Chang|
|000038e0| 69 6e 67 20 74 6f 20 64 | 69 72 65 63 74 6f 72 79 |ing to d|irectory|
|000038f0| 20 22 2b 64 69 72 24 2c | 22 22 2c 22 23 23 46 54 | "+dir$,|"","##FT|
|00003900| 50 23 23 22 29 0d 17 84 | 1b f2 53 65 6e 64 54 6f |P##")...|..SendTo|
|00003910| 46 54 50 28 22 43 57 44 | 20 22 2b 64 69 72 24 29 |FTP("CWD| "+dir$)|
|00003920| 0d 17 8e 0e f2 46 54 50 | 5f 64 69 72 6c 73 0d 17 |.....FTP|_dirls..|
|00003930| 98 05 e1 0d 17 a2 05 3a | 0d 17 ac 0c dd f2 46 54 |.......:|......FT|
|00003940| 50 5f 75 70 0d 17 b6 1d | f2 44 69 73 70 6c 61 79 |P_up....|.Display|
|00003950| 28 22 22 2c 22 22 2c 22 | 23 23 46 54 50 23 23 22 |("","","|##FTP##"|
|00003960| 29 0d 17 c0 39 f2 44 69 | 73 70 6c 61 79 28 22 43 |)...9.Di|splay("C|
|00003970| 68 61 6e 67 69 6e 67 20 | 74 6f 20 70 61 72 65 6e |hanging |to paren|
|00003980| 74 20 64 69 72 65 63 74 | 6f 72 79 22 2c 22 22 2c |t direct|ory","",|
|00003990| 22 23 23 46 54 50 23 23 | 22 29 0d 17 ca 16 f2 53 |"##FTP##|").....S|
|000039a0| 65 6e 64 54 6f 46 54 50 | 28 22 43 44 55 50 22 29 |endToFTP|("CDUP")|
|000039b0| 0d 17 d4 0e f2 46 54 50 | 5f 64 69 72 6c 73 0d 17 |.....FTP|_dirls..|
|000039c0| de 05 e1 0d 17 e8 05 3a | 0d 17 f2 12 dd f2 46 54 |.......:|......FT|
|000039d0| 50 5f 6c 6f 67 67 65 64 | 69 6e 0d 17 fc 2d f2 44 |P_logged|in...-.D|
|000039e0| 69 73 70 6c 61 79 28 22 | 53 75 63 63 65 73 73 66 |isplay("|Successf|
|000039f0| 75 6c 20 6c 6f 67 69 6e | 22 2c 22 22 2c 22 23 23 |ul login|","","##|
|00003a00| 46 54 50 23 23 22 29 0d | 18 06 0e f2 53 65 6c 65 |FTP##").|....Sele|
|00003a10| 63 74 46 54 50 0d 18 10 | 13 e7 20 66 74 70 64 69 |ctFTP...|.. ftpdi|
|00003a20| 72 24 3c 3e 22 22 20 8c | 0d 18 1a 1f 20 f2 53 65 |r$<>"" .|.... .Se|
|00003a30| 6e 64 54 6f 46 54 50 28 | 22 43 57 44 20 22 2b 66 |ndToFTP(|"CWD "+f|
|00003a40| 74 70 64 69 72 24 29 0d | 18 24 05 cd 0d 18 2e 0e |tpdir$).|.$......|
|00003a50| f2 46 54 50 5f 64 69 72 | 6c 73 0d 18 38 05 e1 0d |.FTP_dir|ls..8...|
|00003a60| 18 42 05 3a 0d 18 4c 0e | dd f2 46 54 50 5f 70 6f |.B.:..L.|..FTP_po|
|00003a70| 72 74 0d 18 56 12 e7 20 | 66 74 70 64 70 6f 72 74 |rt..V.. |ftpdport|
|00003a80| 3d 30 20 8c 0d 18 60 15 | 20 e7 20 66 74 70 70 6e |=0 ...`.| . ftppn|
|00003a90| 61 6d 65 24 3d 22 22 20 | 8c 0d 18 6a 13 20 20 6d |ame$="" |...j. m|
|00003aa0| 65 6d 3d a4 43 6c 61 69 | 6d 28 34 29 0d 18 74 13 |em=.Clai|m(4)..t.|
|00003ab0| 20 20 21 6d 65 6d 3d a4 | 47 65 74 4d 79 49 50 0d | !mem=.|GetMyIP.|
|00003ac0| 18 7e 4f 20 20 66 74 70 | 70 6e 61 6d 65 24 3d c3 |.~O ftp|pname$=.|
|00003ad0| 28 3f 28 6d 65 6d 2b 30 | 29 29 2b 22 2c 22 2b c3 |(?(mem+0|))+","+.|
|00003ae0| 28 3f 28 6d 65 6d 2b 31 | 29 29 2b 22 2c 22 2b c3 |(?(mem+1|))+","+.|
|00003af0| 28 3f 28 6d 65 6d 2b 32 | 29 29 2b 22 2c 22 2b c3 |(?(mem+2|))+","+.|
|00003b00| 28 3f 28 6d 65 6d 2b 33 | 29 29 2b 22 2c 22 0d 18 |(?(mem+3|))+","..|
|00003b10| 88 13 20 20 f2 52 65 6c | 65 61 73 65 28 6d 65 6d |.. .Rel|ease(mem|
|00003b20| 29 0d 18 92 06 20 cd 0d | 18 9c 24 20 66 74 70 64 |).... ..|..$ ftpd|
|00003b30| 70 6f 72 74 3d a4 4c 69 | 73 74 65 6e 28 30 2c 22 |port=.Li|sten(0,"|
|00003b40| 46 54 50 44 61 74 61 22 | 2c 30 29 0d 18 a6 05 cd |FTPData"|,0).....|
|00003b50| 0d 18 b0 40 f2 44 69 73 | 70 6c 61 79 28 22 53 65 |...@.Dis|play("Se|
|00003b60| 6e 74 20 50 4f 52 54 20 | 63 6f 6d 6d 61 6e 64 20 |nt PORT |command |
|00003b70| 28 22 2b c3 28 66 74 70 | 64 70 6f 72 74 29 2b 22 |("+.(ftp|dport)+"|
|00003b80| 29 22 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |)","","#|#FTP##")|
|00003b90| 0d 18 ba 49 f2 53 65 6e | 64 54 6f 46 54 50 28 22 |...I.Sen|dToFTP("|
|00003ba0| 50 4f 52 54 20 22 2b 66 | 74 70 70 6e 61 6d 65 24 |PORT "+f|tppname$|
|00003bb0| 2b c3 28 66 74 70 64 70 | 6f 72 74 20 81 20 32 35 |+.(ftpdp|ort . 25|
|00003bc0| 36 29 2b 22 2c 22 2b c3 | 28 66 74 70 64 70 6f 72 |6)+","+.|(ftpdpor|
|00003bd0| 74 20 83 20 32 35 36 29 | 29 0d 18 c4 05 e1 0d 18 |t . 256)|).......|
|00003be0| ce 05 3a 0d 18 d8 25 f4 | 20 47 65 74 20 61 20 6c |..:...%.| Get a l|
|00003bf0| 69 73 74 69 6e 67 20 66 | 6f 72 20 74 68 65 20 64 |isting f|or the d|
|00003c00| 69 72 65 63 74 6f 72 79 | 0d 18 e2 0f dd f2 46 54 |irectory|......FT|
|00003c10| 50 5f 64 69 72 6c 73 0d | 18 ec 15 f2 53 65 6e 64 |P_dirls.|....Send|
|00003c20| 54 6f 46 54 50 28 22 50 | 57 44 22 29 0d 18 f6 15 |ToFTP("P|WD")....|
|00003c30| e7 20 66 74 70 5f 63 64 | 74 79 70 65 3c 3e 32 20 |. ftp_cd|type<>2 |
|00003c40| 8c 0d 19 00 19 20 f2 53 | 65 6e 64 54 6f 46 54 50 |..... .S|endToFTP|
|00003c50| 28 22 54 59 50 45 20 41 | 22 29 0d 19 0a 16 20 f4 |("TYPE A|").... .|
|00003c60| 20 53 65 6c 65 63 74 20 | 74 68 65 20 70 6f 72 74 | Select |the port|
|00003c70| 0d 19 14 0e 20 f2 46 54 | 50 5f 70 6f 72 74 0d 19 |.... .FT|P_port..|
|00003c80| 1e 18 20 f4 20 52 65 71 | 75 65 73 74 20 66 69 6c |.. . Req|uest fil|
|00003c90| 65 20 6c 69 73 74 0d 19 | 28 18 20 66 74 70 64 74 |e list..|(. ftpdt|
|00003ca0| 79 70 65 3d 66 74 70 5f | 63 64 74 79 70 65 0d 19 |ype=ftp_|cdtype..|
|00003cb0| 32 13 20 e7 20 66 74 70 | 64 74 79 70 65 3d 31 20 |2. . ftp|dtype=1 |
|00003cc0| 8c 0d 19 3c 18 20 20 f2 | 53 65 6e 64 54 6f 46 54 |...<. .|SendToFT|
|00003cd0| 50 28 22 4c 49 53 54 22 | 29 0d 19 46 06 20 cc 0d |P("LIST"|)..F. ..|
|00003ce0| 19 50 18 20 20 f2 53 65 | 6e 64 54 6f 46 54 50 28 |.P. .Se|ndToFTP(|
|00003cf0| 22 4e 4c 53 54 22 29 0d | 19 5a 06 20 cd 0d 19 64 |"NLST").|.Z. ...d|
|00003d00| 05 cd 0d 19 6e 05 e1 0d | 19 78 05 3a 0d 19 82 10 |....n...|.x.:....|
|00003d10| f4 20 47 65 74 20 61 20 | 66 69 6c 65 0d 19 8c 18 |. Get a |file....|
|00003d20| dd f2 46 54 50 5f 67 65 | 74 28 66 72 6f 6d 24 2c |..FTP_ge|t(from$,|
|00003d30| 74 6f 24 29 0d 19 96 0d | 66 74 70 64 67 6f 74 3d |to$)....|ftpdgot=|
|00003d40| 30 0d 19 a0 13 66 74 70 | 64 66 69 6c 65 24 3d 66 |0....ftp|dfile$=f|
|00003d50| 72 6f 6d 24 0d 19 aa 0e | e7 20 74 6f 24 3d 22 22 |rom$....|. to$=""|
|00003d60| 20 8c 0d 19 b4 24 20 74 | 6f 24 3d a4 6c 65 61 66 | ....$ t|o$=.leaf|
|00003d70| 6e 61 6d 65 28 a4 75 6e | 69 78 74 6f 72 6f 28 66 |name(.un|ixtoro(f|
|00003d80| 72 6f 6d 24 29 29 0d 19 | be 05 cd 0d 19 c8 0f 66 |rom$))..|.......f|
|00003d90| 74 70 64 74 6f 24 3d 74 | 6f 24 0d 19 d2 17 e7 20 |tpdto$=t|o$..... |
|00003da0| a7 66 74 70 64 74 6f 24 | 2c 22 2e 22 29 3d 30 20 |.ftpdto$|,".")=0 |
|00003db0| 8c 0d 19 dc 23 20 66 74 | 70 64 74 6f 24 3d 66 74 |....# ft|pdto$=ft|
|00003dc0| 70 5f 74 6f 64 69 72 24 | 2b 22 2e 22 2b 66 74 70 |p_todir$|+"."+ftp|
|00003dd0| 64 74 6f 24 0d 19 e6 05 | cd 0d 19 f0 12 6f 75 74 |dto$....|.....out|
|00003de0| 3d ae 28 66 74 70 64 74 | 6f 24 29 0d 19 fa 0e e7 |=.(ftpdt|o$).....|
|00003df0| 20 6f 75 74 3c 3e 30 20 | 8c 0d 1a 04 0a 20 d9 23 | out<>0 |..... .#|
|00003e00| 6f 75 74 0d 1a 0e 22 20 | f4 20 57 65 27 72 65 20 |out..." |. We're |
|00003e10| 69 6e 20 66 69 6c 65 20 | 72 65 74 72 69 65 76 65 |in file |retrieve|
|00003e20| 20 6d 6f 64 65 0d 1a 18 | 0f 20 66 74 70 64 74 79 | mode...|. ftpdty|
|00003e30| 70 65 3d 32 0d 1a 22 22 | 20 f4 20 53 65 6c 65 63 |pe=2..""| . Selec|
|00003e40| 74 20 42 69 6e 61 72 79 | 20 6d 6f 64 65 20 28 49 |t Binary| mode (I|
|00003e50| 6d 61 67 65 3f 29 0d 1a | 2c 19 20 f2 53 65 6e 64 |mage?)..|,. .Send|
|00003e60| 54 6f 46 54 50 28 22 54 | 59 50 45 20 49 22 29 0d |ToFTP("T|YPE I").|
|00003e70| 1a 36 16 20 f4 20 53 65 | 6c 65 63 74 20 74 68 65 |.6. . Se|lect the|
|00003e80| 20 70 6f 72 74 0d 1a 40 | 0e 20 f2 46 54 50 5f 70 | port..@|. .FTP_p|
|00003e90| 6f 72 74 0d 1a 4a 13 20 | f4 20 47 65 74 20 74 68 |ort..J. |. Get th|
|00003ea0| 65 20 66 69 6c 65 0d 1a | 54 1e 20 f2 53 65 6e 64 |e file..|T. .Send|
|00003eb0| 54 6f 46 54 50 28 22 52 | 45 54 52 20 22 2b 66 72 |ToFTP("R|ETR "+fr|
|00003ec0| 6f 6d 24 29 0d 1a 5e 3c | 20 f2 44 69 73 70 6c 61 |om$)..^<| .Displa|
|00003ed0| 79 28 22 47 65 74 74 69 | 6e 67 20 66 69 6c 65 20 |y("Getti|ng file |
|00003ee0| 22 2b 66 72 6f 6d 24 2b | 22 20 61 73 20 22 2b 74 |"+from$+|" as "+t|
|00003ef0| 6f 24 2c 22 22 2c 22 23 | 23 46 54 50 23 23 22 29 |o$,"","#|#FTP##")|
|00003f00| 0d 1a 68 05 cc 0d 1a 72 | 38 20 f2 44 69 73 70 6c |..h....r|8 .Displ|
|00003f10| 61 79 57 61 72 6e 69 6e | 67 28 22 46 61 69 6c 3a |ayWarnin|g("Fail:|
|00003f20| 20 43 6f 75 6c 64 20 6e | 6f 74 20 63 72 65 61 74 | Could n|ot creat|
|00003f30| 65 20 66 69 6c 65 20 22 | 2b 74 6f 24 29 0d 1a 7c |e file "|+to$)..||
|00003f40| 05 cd 0d 1a 86 05 e1 0d | 1a 90 05 3a 0d 1a 9a 1f |........|...:....|
|00003f50| f4 20 54 79 70 65 20 61 | 20 66 69 6c 65 20 74 6f |. Type a| file to|
|00003f60| 20 74 68 65 20 77 69 6e | 64 6f 77 0d 1a a4 15 dd | the win|dow.....|
|00003f70| f2 46 54 50 5f 74 79 70 | 65 28 66 69 6c 65 24 29 |.FTP_typ|e(file$)|
|00003f80| 0d 1a ae 20 f4 20 57 65 | 27 72 65 20 69 6e 20 66 |... . We|'re in f|
|00003f90| 69 6c 65 20 64 69 73 70 | 6c 61 79 20 6d 6f 64 65 |ile disp|lay mode|
|00003fa0| 0d 1a b8 0e 66 74 70 64 | 74 79 70 65 3d 35 0d 1a |....ftpd|type=5..|
|00003fb0| c2 21 f4 20 53 65 6c 65 | 63 74 20 42 69 6e 61 72 |.!. Sele|ct Binar|
|00003fc0| 79 20 6d 6f 64 65 20 28 | 49 6d 61 67 65 3f 29 0d |y mode (|Image?).|
|00003fd0| 1a cc 18 f2 53 65 6e 64 | 54 6f 46 54 50 28 22 54 |....Send|ToFTP("T|
|00003fe0| 59 50 45 20 49 22 29 0d | 1a d6 15 f4 20 53 65 6c |YPE I").|.... Sel|
|00003ff0| 65 63 74 20 74 68 65 20 | 70 6f 72 74 0d 1a e0 0d |ect the |port....|
|00004000| f2 46 54 50 5f 70 6f 72 | 74 0d 1a ea 12 f4 20 47 |.FTP_por|t..... G|
|00004010| 65 74 20 74 68 65 20 66 | 69 6c 65 0d 1a f4 1d f2 |et the f|ile.....|
|00004020| 53 65 6e 64 54 6f 46 54 | 50 28 22 52 45 54 52 20 |SendToFT|P("RETR |
|00004030| 22 2b 66 69 6c 65 24 29 | 0d 1a fe 0d 66 74 70 64 |"+file$)|....ftpd|
|00004040| 67 6f 74 3d 30 0d 1b 08 | 13 66 74 70 64 66 69 6c |got=0...|.ftpdfil|
|00004050| 65 24 3d 66 69 6c 65 24 | 0d 1b 12 1d f2 44 69 73 |e$=file$|.....Dis|
|00004060| 70 6c 61 79 28 22 22 2c | 22 22 2c 22 23 23 46 54 |play("",|"","##FT|
|00004070| 50 23 23 22 29 0d 1b 1c | 2f f2 44 69 73 70 6c 61 |P##")...|/.Displa|
|00004080| 79 28 22 54 79 70 69 6e | 67 20 66 69 6c 65 20 22 |y("Typin|g file "|
|00004090| 2b 66 69 6c 65 24 2c 22 | 22 2c 22 23 23 46 54 50 |+file$,"|","##FTP|
|000040a0| 23 23 22 29 0d 1b 26 05 | e1 0d 1b 30 05 3a 0d 1b |##")..&.|...0.:..|
|000040b0| 3a 10 f4 20 50 75 74 20 | 61 20 66 69 6c 65 0d 1b |:.. Put |a file..|
|000040c0| 44 18 dd f2 46 54 50 5f | 70 75 74 28 66 72 6f 6d |D...FTP_|put(from|
|000040d0| 24 2c 74 6f 24 29 0d 1b | 4e 0e e7 20 74 6f 24 3d |$,to$)..|N.. to$=|
|000040e0| 22 22 20 8c 0d 1b 58 24 | 20 74 6f 24 3d a4 72 6f |"" ...X$| to$=.ro|
|000040f0| 74 6f 75 6e 69 78 28 a4 | 6c 65 61 66 6e 61 6d 65 |tounix(.|leafname|
|00004100| 28 66 72 6f 6d 24 29 29 | 0d 1b 62 05 cd 0d 1b 6c |(from$))|..b....l|
|00004110| 13 66 74 70 64 66 69 6c | 65 24 3d 66 72 6f 6d 24 |.ftpdfil|e$=from$|
|00004120| 0d 1b 76 19 e7 20 a7 66 | 74 70 64 66 69 6c 65 24 |..v.. .f|tpdfile$|
|00004130| 2c 22 2e 22 29 3d 30 20 | 8c 0d 1b 80 29 20 66 74 |,".")=0 |....) ft|
|00004140| 70 64 66 69 6c 65 24 3d | 66 74 70 5f 66 72 6f 6d |pdfile$=|ftp_from|
|00004150| 64 69 72 24 2b 22 2e 22 | 2b 66 74 70 64 66 69 6c |dir$+"."|+ftpdfil|
|00004160| 65 24 0d 1b 8a 05 cd 0d | 1b 94 13 69 6e 3d 8e 28 |e$......|...in=.(|
|00004170| 66 74 70 64 66 69 6c 65 | 24 29 0d 1b 9e 0c e7 20 |ftpdfile|$)..... |
|00004180| 69 6e 3d 30 20 8c 0d 1b | a8 37 20 f2 44 69 73 70 |in=0 ...|.7 .Disp|
|00004190| 6c 61 79 57 61 72 6e 69 | 6e 67 28 22 46 61 69 6c |layWarni|ng("Fail|
|000041a0| 3a 20 4c 6f 63 61 6c 20 | 66 69 6c 65 20 64 6f 65 |: Local |file doe|
|000041b0| 73 20 6e 6f 74 20 65 78 | 69 73 74 22 29 0d 1b b2 |s not ex|ist")...|
|000041c0| 05 cc 0d 1b bc 1f 20 f4 | 20 57 65 27 72 65 20 69 |...... .| We're i|
|000041d0| 6e 20 66 69 6c 65 20 73 | 74 6f 72 65 20 6d 6f 64 |n file s|tore mod|
|000041e0| 65 0d 1b c6 0f 20 66 74 | 70 64 74 79 70 65 3d 34 |e.... ft|pdtype=4|
|000041f0| 0d 1b d0 22 20 f4 20 53 | 65 6c 65 63 74 20 42 69 |..." . S|elect Bi|
|00004200| 6e 61 72 79 20 6d 6f 64 | 65 20 28 49 6d 61 67 65 |nary mod|e (Image|
|00004210| 3f 29 0d 1b da 19 20 f2 | 53 65 6e 64 54 6f 46 54 |?).... .|SendToFT|
|00004220| 50 28 22 54 59 50 45 20 | 49 22 29 0d 1b e4 16 20 |P("TYPE |I").... |
|00004230| f4 20 53 65 6c 65 63 74 | 20 74 68 65 20 70 6f 72 |. Select| the por|
|00004240| 74 0d 1b ee 0e 20 f2 46 | 54 50 5f 70 6f 72 74 0d |t.... .F|TP_port.|
|00004250| 1b f8 13 20 f4 20 47 65 | 74 20 74 68 65 20 66 69 |... . Ge|t the fi|
|00004260| 6c 65 0d 1c 02 3c 20 f2 | 44 69 73 70 6c 61 79 28 |le...< .|Display(|
|00004270| 22 50 75 74 74 69 6e 67 | 20 66 69 6c 65 20 22 2b |"Putting| file "+|
|00004280| 66 72 6f 6d 24 2b 22 20 | 61 73 20 22 2b 74 6f 24 |from$+" |as "+to$|
|00004290| 2c 22 22 2c 22 23 23 46 | 54 50 23 23 22 29 0d 1c |,"","##F|TP##")..|
|000042a0| 0c 1c 20 f2 53 65 6e 64 | 54 6f 46 54 50 28 22 53 |.. .Send|ToFTP("S|
|000042b0| 54 4f 52 20 22 2b 74 6f | 24 29 0d 1c 16 0e 20 66 |TOR "+to|$).... f|
|000042c0| 74 70 64 67 6f 74 3d 30 | 0d 1c 20 10 20 66 74 70 |tpdgot=0|.. . ftp|
|000042d0| 64 74 6f 24 3d 74 6f 24 | 0d 1c 2a 05 cd 0d 1c 34 |dto$=to$|..*....4|
|000042e0| 05 e1 0d 1c 3e 05 3a 0d | 1c 48 11 dd f2 46 54 50 |....>.:.|.H...FTP|
|000042f0| 53 65 6e 64 44 61 74 61 | 0d 1c 52 15 ea 20 69 6e |SendData|..R.. in|
|00004300| 2c 65 78 74 2c 6d 65 6d | 2c 6c 65 66 74 0d 1c 5c |,ext,mem|,left..\|
|00004310| 13 69 6e 3d 8e 28 66 74 | 70 64 66 69 6c 65 24 29 |.in=.(ft|pdfile$)|
|00004320| 0d 1c 66 0c 65 78 74 3d | a2 23 69 6e 0d 1c 70 14 |..f.ext=|.#in..p.|
|00004330| 6c 65 66 74 3d 65 78 74 | 2d 66 74 70 64 67 6f 74 |left=ext|-ftpdgot|
|00004340| 0d 1c 7a 1a e7 20 6c 65 | 66 74 3e 66 74 70 5f 62 |..z.. le|ft>ftp_b|
|00004350| 6c 6f 63 6b 73 69 7a 65 | 20 8c 0d 1c 84 17 20 6c |locksize| ..... l|
|00004360| 65 66 74 3d 66 74 70 5f | 62 6c 6f 63 6b 73 69 7a |eft=ftp_|blocksiz|
|00004370| 65 0d 1c 8e 05 cd 0d 1c | 98 0e e7 20 6c 65 66 74 |e.......|... left|
|00004380| 3d 30 20 8c 0d 1c a2 50 | 20 f2 44 69 73 70 6c 61 |=0 ....P| .Displa|
|00004390| 79 28 22 43 6c 6f 73 69 | 6e 67 20 64 61 74 61 20 |y("Closi|ng data |
|000043a0| 63 6f 6e 6e 65 63 74 69 | 6f 6e 2c 20 22 2b c3 28 |connecti|on, "+.(|
|000043b0| 66 74 70 64 67 6f 74 29 | 2b 22 20 62 79 74 65 73 |ftpdgot)|+" bytes|
|000043c0| 20 73 65 6e 74 22 2c 22 | 22 2c 22 23 23 46 54 50 | sent","|","##FTP|
|000043d0| 23 23 22 29 0d 1c ac 14 | 20 f2 43 6c 6f 73 65 28 |##")....| .Close(|
|000043e0| 66 74 70 64 61 74 61 29 | 0d 1c b6 19 20 f2 46 72 |ftpdata)|.... .Fr|
|000043f0| 65 65 42 75 66 66 65 72 | 28 66 74 70 64 62 75 66 |eeBuffer|(ftpdbuf|
|00004400| 29 0d 1c c0 0e 20 66 74 | 70 64 61 74 61 3d 30 0d |).... ft|pdata=0.|
|00004410| 1c ca 0f 20 66 74 70 64 | 74 79 70 65 3d 30 0d 1c |... ftpd|type=0..|
|00004420| d4 05 cc 0d 1c de 15 20 | f4 20 52 65 61 64 20 74 |....... |. Read t|
|00004430| 68 65 20 62 6c 6f 63 6b | 0d 1c e8 15 20 6d 65 6d |he block|.... mem|
|00004440| 3d a4 43 6c 61 69 6d 28 | 6c 65 66 74 29 0d 1c f2 |=.Claim(|left)...|
|00004450| 27 20 c8 99 20 22 4f 53 | 5f 47 42 50 42 22 2c 33 |' .. "OS|_GBPB",3|
|00004460| 2c 69 6e 2c 6d 65 6d 2c | 6c 65 66 74 2c 66 74 70 |,in,mem,|left,ftp|
|00004470| 64 67 6f 74 0d 1c fc 09 | 20 d9 23 69 6e 0d 1d 06 |dgot....| .#in...|
|00004480| 12 20 66 74 70 64 67 6f | 74 2b 3d 6c 65 66 74 0d |. ftpdgo|t+=left.|
|00004490| 1d 10 45 20 f2 44 69 73 | 70 6c 61 79 28 22 53 65 |..E .Dis|play("Se|
|000044a0| 6e 74 20 22 2b c3 28 66 | 74 70 64 67 6f 74 29 2b |nt "+.(f|tpdgot)+|
|000044b0| 22 20 62 79 74 65 73 20 | 6f 66 20 22 2b 66 74 70 |" bytes |of "+ftp|
|000044c0| 64 66 69 6c 65 24 2c 22 | 22 2c 22 23 23 46 54 50 |dfile$,"|","##FTP|
|000044d0| 23 23 22 29 0d 1d 1a 22 | 20 f2 53 65 6e 64 4d 65 |##")..."| .SendMe|
|000044e0| 6d 6f 72 79 28 66 74 70 | 64 61 74 61 2c 6d 65 6d |mory(ftp|data,mem|
|000044f0| 2c 6c 65 66 74 29 0d 1d | 24 25 20 f2 41 64 64 43 |,left)..|$% .AddC|
|00004500| 61 6c 6c 42 61 63 6b 28 | 22 46 54 50 22 2c 66 74 |allBack(|"FTP",ft|
|00004510| 70 5f 70 65 72 69 6f 64 | 2c 30 29 0d 1d 2e 05 cd |p_period|,0).....|
|00004520| 0d 1d 38 05 e1 0d 1d 42 | 05 3a 0d 1d 4c 1d f4 20 |..8....B|.:..L.. |
|00004530| 57 65 27 72 65 20 62 65 | 69 6e 67 20 63 61 6c 6c |We're be|ing call|
|00004540| 65 64 20 62 61 63 6b 0d | 1d 56 26 dd f2 4f 76 65 |ed back.|.V&..Ove|
|00004550| 72 6c 6f 61 64 5f 43 61 | 6c 6c 42 61 63 6b 28 6e |rload_Ca|llBack(n|
|00004560| 61 6d 65 24 2c 70 72 69 | 76 61 74 65 29 0d 1d 60 |ame$,pri|vate)..`|
|00004570| 13 e7 20 6e 61 6d 65 24 | 3d 22 46 54 50 22 20 8c |.. name$|="FTP" .|
|00004580| 0d 1d 6a 11 20 f2 46 54 | 50 53 65 6e 64 44 61 74 |..j. .FT|PSendDat|
|00004590| 61 0d 1d 74 05 cc 0d 1d | 7e 16 20 f2 40 28 6e 61 |a..t....|~. .@(na|
|000045a0| 6d 65 24 2c 70 72 69 76 | 61 74 65 29 0d 1d 88 05 |me$,priv|ate)....|
|000045b0| cd 0d 1d 92 05 e1 0d 1d | 9c 05 3a 0d 1d a6 17 dd |........|..:.....|
|000045c0| f2 46 54 50 5f 6d 76 28 | 66 72 6f 6d 24 2c 74 6f |.FTP_mv(|from$,to|
|000045d0| 24 29 0d 1d b0 10 66 74 | 70 64 72 65 6e 24 3d 74 |$)....ft|pdren$=t|
|000045e0| 6f 24 0d 1d ba 37 f2 44 | 69 73 70 6c 61 79 28 22 |o$...7.D|isplay("|
|000045f0| 52 65 6e 61 6d 69 6e 67 | 20 22 2b 66 72 6f 6d 24 |Renaming| "+from$|
|00004600| 2b 22 20 74 6f 20 22 2b | 74 6f 24 2c 22 22 2c 22 |+" to "+|to$,"","|
|00004610| 23 23 46 54 50 23 23 22 | 29 0d 1d c4 1d f2 53 65 |##FTP##"|).....Se|
|00004620| 6e 64 54 6f 46 54 50 28 | 22 52 4e 46 52 20 22 2b |ndToFTP(|"RNFR "+|
|00004630| 66 72 6f 6d 24 29 0d 1d | ce 05 e1 0d 1d d8 05 3a |from$)..|.......:|
|00004640| 0d 1d e2 13 dd f2 46 54 | 50 5f 72 6d 28 66 69 6c |......FT|P_rm(fil|
|00004650| 65 24 29 0d 1d ec 2c f2 | 44 69 73 70 6c 61 79 28 |e$)...,.|Display(|
|00004660| 22 44 65 6c 65 74 69 6e | 67 20 22 2b 66 69 6c 65 |"Deletin|g "+file|
|00004670| 24 2c 22 22 2c 22 23 23 | 46 54 50 23 23 22 29 0d |$,"","##|FTP##").|
|00004680| 1d f6 1d f2 53 65 6e 64 | 54 6f 46 54 50 28 22 44 |....Send|ToFTP("D|
|00004690| 45 4c 45 20 22 2b 66 69 | 6c 65 24 29 0d 1e 00 05 |ELE "+fi|le$)....|
|000046a0| e1 0d 1e 0a 05 3a 0d 1e | 14 0e dd f2 46 54 50 5f |.....:..|....FTP_|
|000046b0| 71 75 69 74 0d 1e 1e 40 | f2 44 69 73 70 6c 61 79 |quit...@|.Display|
|000046c0| 28 22 43 6c 6f 73 69 6e | 67 20 63 6f 6e 6e 65 63 |("Closin|g connec|
|000046d0| 74 69 6f 6e 20 62 79 20 | 6c 6f 63 61 6c 20 72 65 |tion by |local re|
|000046e0| 71 75 65 73 74 22 2c 22 | 22 2c 22 23 23 46 54 50 |quest","|","##FTP|
|000046f0| 23 23 22 29 0d 1e 28 16 | f2 53 65 6e 64 54 6f 46 |##")..(.|.SendToF|
|00004700| 54 50 28 22 51 55 49 54 | 22 29 0d 1e 32 05 e1 0d |TP("QUIT|")..2...|
|00004710| 1e 3c 05 3a 0d 1e 46 1c | f4 20 45 6e 75 6d 65 72 |.<.:..F.|. Enumer|
|00004720| 61 74 65 20 6d 6f 64 75 | 6c 65 20 6e 61 6d 65 73 |ate modu|le names|
|00004730| 0d 1e 50 23 dd a4 4f 76 | 65 72 6c 6f 61 64 5f 43 |..P#..Ov|erload_C|
|00004740| 6f 6e 66 69 67 4d 6f 64 | 4e 61 6d 65 28 63 6f 75 |onfigMod|Name(cou|
|00004750| 6e 74 29 0d 1e 5a 0a ea | 20 72 65 74 24 0d 1e 64 |nt)..Z..| ret$..d|
|00004760| 0f e7 20 63 6f 75 6e 74 | 3d 30 20 8c 0d 1e 6e 0f |.. count|=0 ...n.|
|00004770| 20 72 65 74 24 3d 22 46 | 54 50 22 0d 1e 78 05 cc | ret$="F|TP"..x..|
|00004780| 0d 1e 82 15 20 72 65 74 | 24 3d a4 40 28 63 6f 75 |.... ret|$=.@(cou|
|00004790| 6e 74 2d 31 29 0d 1e 8c | 05 cd 0d 1e 96 09 3d 72 |nt-1)...|......=r|
|000047a0| 65 74 24 0d 1e a0 05 3a | 0d 1e aa 22 f4 20 57 68 |et$....:|...". Wh|
|000047b0| 61 74 20 6f 70 74 69 6f | 6e 73 20 64 6f 20 77 65 |at optio|ns do we|
|000047c0| 20 70 72 6f 76 69 64 65 | 20 3f 0d 1e b4 25 dd f2 | provide| ?...%..|
|000047d0| 4f 76 65 72 6c 6f 61 64 | 5f 43 6f 6e 66 69 67 4f |Overload|_ConfigO|
|000047e0| 70 74 69 6f 6e 73 28 6d | 6f 64 75 6c 65 24 29 0d |ptions(m|odule$).|
|000047f0| 1e be 15 e7 20 6d 6f 64 | 75 6c 65 24 3d 22 46 54 |.... mod|ule$="FT|
|00004800| 50 22 20 8c 0d 1e c8 17 | 20 f2 44 69 73 70 6c 61 |P" .....| .Displa|
|00004810| 79 43 6f 6e 66 69 67 28 | 22 22 29 0d 1e d2 2e 20 |yConfig(|"").... |
|00004820| f2 44 69 73 70 6c 61 79 | 43 6f 6e 66 69 67 28 22 |.Display|Config("|
|00004830| 2d 2d 20 46 54 50 20 63 | 6f 6e 66 69 67 75 72 61 |-- FTP c|onfigura|
|00004840| 74 69 6f 6e 20 2d 2d 22 | 29 0d 1e dc 2a 20 f2 44 |tion --"|)...* .D|
|00004850| 69 73 70 6c 61 79 43 6f | 6e 66 69 67 28 22 59 6f |isplayCo|nfig("Yo|
|00004860| 75 20 63 61 6e 20 63 6f | 6e 66 69 67 75 72 65 20 |u can co|nfigure |
|00004870| 3a 22 29 0d 1e e6 3c 20 | f2 44 69 73 70 6c 61 79 |:")...< |.Display|
|00004880| 43 6f 6e 66 69 67 28 22 | 20 20 49 6e 63 6f 6d 69 |Config("| Incomi|
|00004890| 6e 67 20 20 3a 20 44 69 | 72 65 63 74 6f 72 79 20 |ng : Di|rectory |
|000048a0| 74 6f 20 73 74 6f 72 65 | 20 47 45 54 73 22 29 0d |to store| GETs").|
|000048b0| 1e f0 40 20 f2 44 69 73 | 70 6c 61 79 43 6f 6e 66 |..@ .Dis|playConf|
|000048c0| 69 67 28 22 20 20 4f 75 | 74 67 6f 69 6e 67 20 20 |ig(" Ou|tgoing |
|000048d0| 3a 20 44 69 72 65 63 74 | 6f 72 79 20 66 72 6f 6d |: Direct|ory from|
|000048e0| 20 77 68 69 63 68 20 74 | 6f 20 50 55 54 22 29 0d | which t|o PUT").|
|000048f0| 1e fa 49 20 f2 44 69 73 | 70 6c 61 79 43 6f 6e 66 |..I .Dis|playConf|
|00004900| 69 67 28 22 20 20 43 64 | 54 79 70 65 20 20 20 20 |ig(" Cd|Type |
|00004910| 3a 20 57 68 61 74 20 74 | 6f 20 64 6f 20 77 68 65 |: What t|o do whe|
|00004920| 6e 20 63 68 61 6e 67 69 | 6e 67 20 64 69 72 65 63 |n changi|ng direc|
|00004930| 74 6f 72 69 65 73 22 29 | 0d 1f 04 49 20 f2 44 69 |tories")|...I .Di|
|00004940| 73 70 6c 61 79 43 6f 6e | 66 69 67 28 22 20 20 42 |splayCon|fig(" B|
|00004950| 6c 6f 63 6b 53 69 7a 65 | 20 3a 20 53 69 7a 65 20 |lockSize| : Size |
|00004960| 6f 66 20 62 6c 6f 63 6b | 73 20 74 6f 20 73 65 6e |of block|s to sen|
|00004970| 64 20 74 6f 20 74 68 65 | 20 73 65 72 76 65 72 22 |d to the| server"|
|00004980| 29 0d 1f 0e 49 20 f2 44 | 69 73 70 6c 61 79 43 6f |)...I .D|isplayCo|
|00004990| 6e 66 69 67 28 22 20 20 | 50 65 72 69 6f 64 20 20 |nfig(" |Period |
|000049a0| 20 20 3a 20 48 6f 77 20 | 6f 66 74 65 6e 20 62 6c | : How |often bl|
|000049b0| 6f 63 6b 73 20 73 68 6f | 75 6c 64 20 62 65 20 73 |ocks sho|uld be s|
|000049c0| 65 6e 74 20 28 63 73 29 | 22 29 0d 1f 18 05 cc 0d |ent (cs)|")......|
|000049d0| 1f 22 10 20 f2 40 28 6d | 6f 64 75 6c 65 24 29 0d |.". .@(m|odule$).|
|000049e0| 1f 2c 05 cd 0d 1f 36 05 | e1 0d 1f 40 05 3a 0d 1f |.,....6.|...@.:..|
|000049f0| 4a 20 f4 20 48 6f 77 20 | 64 6f 20 77 65 20 63 6f |J . How |do we co|
|00004a00| 6e 66 69 67 75 72 65 20 | 74 68 69 6e 67 73 0d 1f |nfigure |things..|
|00004a10| 54 2f dd f2 4f 76 65 72 | 6c 6f 61 64 5f 43 6f 6e |T/..Over|load_Con|
|00004a20| 66 69 67 43 6f 6d 6d 61 | 6e 64 28 6d 6f 64 75 6c |figComma|nd(modul|
|00004a30| 65 24 2c 63 6f 6d 24 2c | 73 74 72 24 29 0d 1f 5e |e$,com$,|str$)..^|
|00004a40| 15 e7 20 6d 6f 64 75 6c | 65 24 3d 22 46 54 50 22 |.. modul|e$="FTP"|
|00004a50| 20 8c 0d 1f 68 0e 20 c8 | 8e 20 63 6f 6d 24 20 ca | ...h. .|. com$ .|
|00004a60| 0d 1f 72 12 20 20 c9 20 | 22 49 4e 43 4f 4d 49 4e |..r. . |"INCOMIN|
|00004a70| 47 22 0d 1f 7c 39 20 20 | 20 e7 20 28 73 74 72 24 |G"..|9 | . (str$|
|00004a80| 3d 22 22 20 84 20 a4 66 | 69 6c 65 74 79 70 65 28 |="" . .f|iletype(|
|00004a90| 73 74 72 24 29 3c 3e 26 | 31 30 30 30 29 20 80 20 |str$)<>&|1000) . |
|00004aa0| 73 74 72 24 3c 3e 22 2a | 22 20 8c 0d 1f 86 32 20 |str$<>"*|" ....2 |
|00004ab0| 20 20 20 f2 44 69 73 70 | 6c 61 79 43 6f 6e 66 69 | .Disp|layConfi|
|00004ac0| 67 28 22 53 79 6e 74 61 | 78 3a 20 49 6e 63 6f 6d |g("Synta|x: Incom|
|00004ad0| 69 6e 67 20 3c 64 69 72 | 3e 7c 2a 22 29 0d 1f 90 |ing <dir|>|*")...|
|00004ae0| 08 20 20 20 cc 0d 1f 9a | 14 20 20 20 20 e7 20 73 |. ....|. . s|
|00004af0| 74 72 24 3d 22 2a 22 20 | 8c 0d 1f a4 26 20 20 20 |tr$="*" |....& |
|00004b00| 20 20 73 74 72 24 3d 6d | 61 67 72 61 74 68 65 61 | str$=m|agrathea|
|00004b10| 5f 75 73 65 72 24 2b 22 | 2e 46 54 50 49 6e 22 0d |_user$+"|.FTPIn".|
|00004b20| 1f ae 09 20 20 20 20 cd | 0d 1f b8 1b 20 20 20 20 |... .|.... |
|00004b30| c8 99 20 22 4f 53 5f 46 | 69 6c 65 22 2c 38 2c 73 |.. "OS_F|ile",8,s|
|00004b40| 74 72 24 0d 1f c2 17 20 | 20 20 20 66 74 70 5f 74 |tr$.... | ftp_t|
|00004b50| 6f 64 69 72 24 3d 73 74 | 72 24 0d 1f cc 2c 20 20 |odir$=st|r$..., |
|00004b60| 20 20 f2 44 42 5f 57 72 | 69 74 65 43 6f 6e 66 69 | .DB_Wr|iteConfi|
|00004b70| 67 28 22 46 54 50 5f 49 | 6e 63 6f 6d 69 6e 67 22 |g("FTP_I|ncoming"|
|00004b80| 2c 73 74 72 24 29 0d 1f | d6 2f 20 20 20 20 f2 44 |,str$)..|./ .D|
|00004b90| 69 73 70 6c 61 79 43 6f | 6e 66 69 67 28 22 53 65 |isplayCo|nfig("Se|
|00004ba0| 74 20 49 6e 63 6f 6d 69 | 6e 67 20 74 6f 20 22 2b |t Incomi|ng to "+|
|00004bb0| 73 74 72 24 29 0d 1f e0 | 08 20 20 20 cd 0d 1f ea |str$)...|. ....|
|00004bc0| 04 0d 1f f4 12 20 20 c9 | 20 22 4f 55 54 47 4f 49 |..... .| "OUTGOI|
|00004bd0| 4e 47 22 0d 1f fe 39 20 | 20 20 e7 20 28 73 74 72 |NG"...9 | . (str|
|00004be0| 24 3d 22 22 20 84 20 a4 | 66 69 6c 65 74 79 70 65 |$="" . .|filetype|
|00004bf0| 28 73 74 72 24 29 3c 3e | 26 31 30 30 30 29 20 80 |(str$)<>|&1000) .|
|00004c00| 20 73 74 72 24 3c 3e 22 | 2a 22 20 8c 0d 20 08 32 | str$<>"|*" .. .2|
|00004c10| 20 20 20 20 f2 44 69 73 | 70 6c 61 79 43 6f 6e 66 | .Dis|playConf|
|00004c20| 69 67 28 22 53 79 6e 74 | 61 78 3a 20 4f 75 74 67 |ig("Synt|ax: Outg|
|00004c30| 6f 69 6e 67 20 3c 64 69 | 72 3e 7c 2a 22 29 0d 20 |oing <di|r>|*"). |
|00004c40| 12 08 20 20 20 cc 0d 20 | 1c 14 20 20 20 20 e7 20 |.. .. |.. . |
|00004c50| 73 74 72 24 3d 22 2a 22 | 20 8c 0d 20 26 27 20 20 |str$="*"| .. &' |
|00004c60| 20 20 20 73 74 72 24 3d | 6d 61 67 72 61 74 68 65 | str$=|magrathe|
|00004c70| 61 5f 75 73 65 72 24 2b | 22 2e 46 54 50 4f 75 74 |a_user$+|".FTPOut|
|00004c80| 22 0d 20 30 09 20 20 20 | 20 cd 0d 20 3a 1b 20 20 |". 0. | .. :. |
|00004c90| 20 20 c8 99 20 22 4f 53 | 5f 46 69 6c 65 22 2c 38 | .. "OS|_File",8|
|00004ca0| 2c 73 74 72 24 0d 20 44 | 19 20 20 20 20 66 74 70 |,str$. D|. ftp|
|00004cb0| 5f 66 72 6f 6d 64 69 72 | 24 3d 73 74 72 24 0d 20 |_fromdir|$=str$. |
|00004cc0| 4e 2c 20 20 20 20 f2 44 | 42 5f 57 72 69 74 65 43 |N, .D|B_WriteC|
|00004cd0| 6f 6e 66 69 67 28 22 46 | 54 50 5f 4f 75 74 67 6f |onfig("F|TP_Outgo|
|00004ce0| 69 6e 67 22 2c 73 74 72 | 24 29 0d 20 58 2f 20 20 |ing",str|$). X/ |
|00004cf0| 20 20 f2 44 69 73 70 6c | 61 79 43 6f 6e 66 69 67 | .Displ|ayConfig|
|00004d00| 28 22 53 65 74 20 4f 75 | 74 67 6f 69 6e 67 20 74 |("Set Ou|tgoing t|
|00004d10| 6f 20 22 2b 73 74 72 24 | 29 0d 20 62 08 20 20 20 |o "+str$|). b. |
|00004d20| cd 0d 20 6c 04 0d 20 76 | 10 20 20 c9 20 22 43 44 |.. l.. v|. . "CD|
|00004d30| 54 59 50 45 22 0d 20 80 | 1d 20 20 20 c8 8e 20 a4 |TYPE". .|. .. .|
|00004d40| 43 61 70 69 74 61 6c 69 | 73 65 28 73 74 72 24 29 |Capitali|se(str$)|
|00004d50| 20 ca 0d 20 8a 10 20 20 | 20 20 c9 20 22 4c 4f 4e | .. .. | . "LON|
|00004d60| 47 22 0d 20 94 15 20 20 | 20 20 20 66 74 70 5f 63 |G". .. | ftp_c|
|00004d70| 64 74 79 70 65 3d 31 0d | 20 9e 2a 20 20 20 20 20 |dtype=1.| .* |
|00004d80| f2 44 42 5f 57 72 69 74 | 65 43 6f 6e 66 69 67 28 |.DB_Writ|eConfig(|
|00004d90| 22 46 54 50 5f 43 44 54 | 79 70 65 22 2c 22 31 22 |"FTP_CDT|ype","1"|
|00004da0| 29 0d 20 a8 2d 20 20 20 | 20 20 f2 44 69 73 70 6c |). .- | .Displ|
|00004db0| 61 79 43 6f 6e 66 69 67 | 28 22 53 65 74 20 43 64 |ayConfig|("Set Cd|
|00004dc0| 54 79 70 65 20 74 6f 20 | 4c 6f 6e 67 22 29 0d 20 |Type to |Long"). |
|00004dd0| b2 10 20 20 20 20 c9 20 | 22 4e 4f 4e 45 22 0d 20 |.. . |"NONE". |
|00004de0| bc 15 20 20 20 20 20 66 | 74 70 5f 63 64 74 79 70 |.. f|tp_cdtyp|
|00004df0| 65 3d 32 0d 20 c6 2a 20 | 20 20 20 20 f2 44 42 5f |e=2. .* | .DB_|
|00004e00| 57 72 69 74 65 43 6f 6e | 66 69 67 28 22 46 54 50 |WriteCon|fig("FTP|
|00004e10| 5f 43 44 54 79 70 65 22 | 2c 22 32 22 29 0d 20 d0 |_CDType"|,"2"). .|
|00004e20| 2e 20 20 20 20 20 f2 44 | 69 73 70 6c 61 79 43 6f |. .D|isplayCo|
|00004e30| 6e 66 69 67 28 22 53 65 | 74 20 43 64 54 79 70 65 |nfig("Se|t CdType|
|00004e40| 20 74 6f 20 53 68 6f 72 | 74 22 29 0d 20 da 11 20 | to Shor|t"). .. |
|00004e50| 20 20 20 c9 20 22 53 48 | 4f 52 54 22 0d 20 e4 15 | . "SH|ORT". ..|
|00004e60| 20 20 20 20 20 66 74 70 | 5f 63 64 74 79 70 65 3d | ftp|_cdtype=|
|00004e70| 33 0d 20 ee 2a 20 20 20 | 20 20 f2 44 42 5f 57 72 |3. .* | .DB_Wr|
|00004e80| 69 74 65 43 6f 6e 66 69 | 67 28 22 46 54 50 5f 43 |iteConfi|g("FTP_C|
|00004e90| 44 54 79 70 65 22 2c 22 | 33 22 29 0d 20 f8 2e 20 |DType","|3"). .. |
|00004ea0| 20 20 20 20 f2 44 69 73 | 70 6c 61 79 43 6f 6e 66 | .Dis|playConf|
|00004eb0| 69 67 28 22 53 65 74 20 | 43 64 54 79 70 65 20 74 |ig("Set |CdType t|
|00004ec0| 6f 20 53 68 6f 72 74 22 | 29 0d 21 02 09 20 20 20 |o Short"|).!.. |
|00004ed0| 20 7f 0d 21 0c 39 20 20 | 20 20 20 f2 44 69 73 70 | ..!.9 | .Disp|
|00004ee0| 6c 61 79 43 6f 6e 66 69 | 67 28 22 53 79 6e 74 61 |layConfi|g("Synta|
|00004ef0| 78 3a 20 43 64 54 79 70 | 65 20 4c 6f 6e 67 7c 53 |x: CdTyp|e Long|S|
|00004f00| 68 6f 72 74 7c 4e 6f 6e | 65 22 29 0d 21 16 08 20 |hort|Non|e").!.. |
|00004f10| 20 20 cb 0d 21 20 04 0d | 21 2a 13 20 20 c9 20 22 | ..! ..|!*. . "|
|00004f20| 42 4c 4f 43 4b 53 49 5a | 45 22 0d 21 34 16 20 20 |BLOCKSIZ|E".!4. |
|00004f30| 20 e7 20 bb 28 73 74 72 | 24 29 3c 31 32 38 20 8c | . .(str|$)<128 .|
|00004f40| 0d 21 3e 3b 20 20 20 20 | f2 44 69 73 70 6c 61 79 |.!>; |.Display|
|00004f50| 43 6f 6e 66 69 67 28 22 | 53 79 6e 74 61 78 3a 20 |Config("|Syntax: |
|00004f60| 42 6c 6f 63 6b 53 69 7a | 65 20 3c 62 79 74 65 73 |BlockSiz|e <bytes|
|00004f70| 3e 20 28 3e 3d 31 32 38 | 29 22 29 0d 21 48 08 20 |> (>=128|)").!H. |
|00004f80| 20 20 cc 0d 21 52 1d 20 | 20 20 20 66 74 70 5f 62 | ..!R. | ftp_b|
|00004f90| 6c 6f 63 6b 73 69 7a 65 | 3d bb 28 73 74 72 24 29 |locksize|=.(str$)|
|00004fa0| 0d 21 5c 37 20 20 20 20 | f2 44 42 5f 57 72 69 74 |.!\7 |.DB_Writ|
|00004fb0| 65 43 6f 6e 66 69 67 28 | 22 46 54 50 5f 42 6c 6f |eConfig(|"FTP_Blo|
|00004fc0| 63 6b 53 69 7a 65 22 2c | c3 66 74 70 5f 62 6c 6f |ckSize",|.ftp_blo|
|00004fd0| 63 6b 73 69 7a 65 29 0d | 21 66 3a 20 20 20 20 f2 |cksize).|!f: .|
|00004fe0| 44 69 73 70 6c 61 79 43 | 6f 6e 66 69 67 28 22 53 |DisplayC|onfig("S|
|00004ff0| 65 74 20 42 6c 6f 63 6b | 53 69 7a 65 20 74 6f 20 |et Block|Size to |
|00005000| 22 2b c3 66 74 70 5f 62 | 6c 6f 63 6b 73 69 7a 65 |"+.ftp_b|locksize|
|00005010| 29 0d 21 70 08 20 20 20 | cd 0d 21 7a 04 0d 21 84 |).!p. |..!z..!.|
|00005020| 10 20 20 c9 20 22 50 45 | 52 49 4f 44 22 0d 21 8e |. . "PE|RIOD".!.|
|00005030| 24 20 20 20 e7 20 bb 28 | 73 74 72 24 29 3c 31 30 |$ . .(|str$)<10|
|00005040| 20 84 20 bb 28 73 74 72 | 24 29 3e 32 35 30 30 20 | . .(str|$)>2500 |
|00005050| 8c 0d 21 98 41 20 20 20 | 20 f2 44 69 73 70 6c 61 |..!.A | .Displa|
|00005060| 79 43 6f 6e 66 69 67 28 | 22 53 79 6e 74 61 78 3a |yConfig(|"Syntax:|
|00005070| 20 42 6c 6f 63 6b 53 69 | 7a 65 20 3c 62 79 74 65 | BlockSi|ze <byte|
|00005080| 73 3e 20 28 31 30 3c 3d | 78 3c 3d 32 35 30 30 29 |s> (10<=|x<=2500)|
|00005090| 22 29 0d 21 a2 08 20 20 | 20 cc 0d 21 ac 1a 20 20 |").!.. | ..!.. |
|000050a0| 20 20 66 74 70 5f 70 65 | 72 69 6f 64 3d bb 28 73 | ftp_pe|riod=.(s|
|000050b0| 74 72 24 29 0d 21 b6 31 | 20 20 20 20 f2 44 42 5f |tr$).!.1| .DB_|
|000050c0| 57 72 69 74 65 43 6f 6e | 66 69 67 28 22 46 54 50 |WriteCon|fig("FTP|
|000050d0| 5f 50 65 72 69 6f 64 22 | 2c c3 66 74 70 5f 70 65 |_Period"|,.ftp_pe|
|000050e0| 72 69 6f 64 29 0d 21 c0 | 34 20 20 20 20 f2 44 69 |riod).!.|4 .Di|
|000050f0| 73 70 6c 61 79 43 6f 6e | 66 69 67 28 22 53 65 74 |splayCon|fig("Set|
|00005100| 20 50 65 72 69 6f 64 20 | 74 6f 20 22 2b c3 66 74 | Period |to "+.ft|
|00005110| 70 5f 70 65 72 69 6f 64 | 29 0d 21 ca 08 20 20 20 |p_period|).!.. |
|00005120| cd 0d 21 d4 04 0d 21 de | 0e 20 20 c9 20 22 4c 49 |..!...!.|. . "LI|
|00005130| 53 54 22 0d 21 e8 19 20 | 20 20 f2 44 69 73 70 6c |ST".!.. | .Displ|
|00005140| 61 79 43 6f 6e 66 69 67 | 28 22 22 29 0d 21 f2 30 |ayConfig|("").!.0|
|00005150| 20 20 20 f2 44 69 73 70 | 6c 61 79 43 6f 6e 66 69 | .Disp|layConfi|
|00005160| 67 28 22 49 6e 63 6f 6d | 69 6e 67 20 20 3a 20 22 |g("Incom|ing : "|
|00005170| 2b 66 74 70 5f 74 6f 64 | 69 72 24 29 0d 21 fc 32 |+ftp_tod|ir$).!.2|
|00005180| 20 20 20 f2 44 69 73 70 | 6c 61 79 43 6f 6e 66 69 | .Disp|layConfi|
|00005190| 67 28 22 4f 75 74 67 6f | 69 6e 67 20 20 3a 20 22 |g("Outgo|ing : "|
|000051a0| 2b 66 74 70 5f 66 72 6f | 6d 64 69 72 24 29 0d 22 |+ftp_fro|mdir$)."|
|000051b0| 06 16 20 20 20 c8 8e 20 | 66 74 70 5f 63 64 74 79 |.. .. |ftp_cdty|
|000051c0| 70 65 20 ca 0d 22 10 0b | 20 20 20 20 c9 20 31 0d |pe .."..| . 1.|
|000051d0| 22 1a 2b 20 20 20 20 20 | f2 44 69 73 70 6c 61 79 |".+ |.Display|
|000051e0| 43 6f 6e 66 69 67 28 22 | 43 64 54 79 70 65 20 20 |Config("|CdType |
|000051f0| 20 20 3a 20 4c 6f 6e 67 | 22 29 0d 22 24 0b 20 20 | : Long|")."$. |
|00005200| 20 20 c9 20 32 0d 22 2e | 2b 20 20 20 20 20 f2 44 | . 2.".|+ .D|
|00005210| 69 73 70 6c 61 79 43 6f | 6e 66 69 67 28 22 43 64 |isplayCo|nfig("Cd|
|00005220| 54 79 70 65 20 20 20 20 | 3a 20 4e 6f 6e 65 22 29 |Type |: None")|
|00005230| 0d 22 38 0b 20 20 20 20 | c9 20 33 0d 22 42 2c 20 |."8. |. 3."B, |
|00005240| 20 20 20 20 f2 44 69 73 | 70 6c 61 79 43 6f 6e 66 | .Dis|playConf|
|00005250| 69 67 28 22 43 64 54 79 | 70 65 20 20 20 20 3a 20 |ig("CdTy|pe : |
|00005260| 53 68 6f 72 74 22 29 0d | 22 4c 08 20 20 20 cb 0d |Short").|"L. ..|
|00005270| 22 4d 34 20 20 20 f2 44 | 69 73 70 6c 61 79 43 6f |"M4 .D|isplayCo|
|00005280| 6e 66 69 67 28 22 42 6c | 6f 63 6b 73 69 7a 65 20 |nfig("Bl|ocksize |
|00005290| 3a 20 22 2b c3 66 74 70 | 5f 62 6c 6f 63 6b 73 69 |: "+.ftp|_blocksi|
|000052a0| 7a 65 29 0d 22 4e 37 20 | 20 20 f2 44 69 73 70 6c |ze)."N7 | .Displ|
|000052b0| 61 79 43 6f 6e 66 69 67 | 28 22 50 65 72 69 6f 64 |ayConfig|("Period|
|000052c0| 20 20 20 20 3a 20 22 2b | c3 66 74 70 5f 70 65 72 | : "+|.ftp_per|
|000052d0| 69 6f 64 2b 22 20 63 73 | 22 29 0d 22 6a 04 0d 22 |iod+" cs|")."j.."|
|000052e0| 74 0e 20 20 c9 20 22 48 | 45 4c 50 22 0d 22 7e 27 |t. . "H|ELP"."~'|
|000052f0| 20 20 20 f2 4f 76 65 72 | 6c 6f 61 64 5f 43 6f 6e | .Over|load_Con|
|00005300| 66 69 67 4f 70 74 69 6f | 6e 73 28 6d 6f 64 75 6c |figOptio|ns(modul|
|00005310| 65 24 29 0d 22 88 04 0d | 22 92 07 20 20 7f 0d 22 |e$)."...|".. .."|
|00005320| 9c 2f 20 20 20 f2 44 69 | 73 70 6c 61 79 43 6f 6e |./ .Di|splayCon|
|00005330| 66 69 67 28 22 43 6f 6d | 6d 61 6e 64 20 6e 6f 74 |fig("Com|mand not|
|00005340| 20 72 65 63 6f 67 6e 69 | 73 65 64 22 29 0d 22 a6 | recogni|sed").".|
|00005350| 06 20 cb 0d 22 b0 05 cc | 0d 22 ba 1a 20 f2 40 28 |. .."...|.".. .@(|
|00005360| 6d 6f 64 75 6c 65 24 2c | 63 6f 6d 24 2c 73 74 72 |module$,|com$,str|
|00005370| 24 29 0d 22 c4 05 cd 0d | 22 ce 05 e1 0d ff |$)."....|"..... |
+--------+-------------------------+-------------------------+--------+--------+