Subversion Repositories Kolibri OS

Rev

Rev 5011 | Rev 6436 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5011 Rev 6394
Line 46... Line 46...
46
include '../../dll.inc'
46
include '../../dll.inc'
47
include '../../network.inc'
47
include '../../network.inc'
Line 48... Line 48...
48
 
48
 
49
include 'usercommands.inc'
49
include 'usercommands.inc'
-
 
50
include 'servercommands.inc'
Line 50... Line 51...
50
include 'servercommands.inc'
51
include 'parser.inc'
51
 
52
 
52
start:
53
start:
53
; initialize heap for using dynamic blocks
54
; initialize heap for using dynamic blocks
Line 120... Line 121...
120
        jz      done
121
        jz      done
121
; reset color back to grey and print newline
122
; reset color back to grey and print newline
122
        invoke  con_set_flags, 0x07
123
        invoke  con_set_flags, 0x07
123
        invoke  con_write_asciiz, str_newline
124
        invoke  con_write_asciiz, str_newline
Line 124... Line 125...
124
 
125
 
125
resolve:
126
no_resolve:
Line 126... Line 127...
126
        mov     [sockaddr1.port], 21 shl 8
127
        mov     [sockaddr1.port], 21 shl 8
127
 
128
 
128
; delete terminating '\n'
129
; delete terminating '\n'
Line 339... Line 340...
339
        jmp     wait_for_usercommand
340
        jmp     wait_for_usercommand
Line 340... Line 341...
340
 
341
 
341
 
342
 
-
 
343
  .connected:
-
 
344
; request username
-
 
345
        cmp     [use_params], 1
342
  .connected:
346
        je      .copy_user
343
; request username
347
 
344
        invoke  con_write_asciiz, str_user
348
        invoke  con_write_asciiz, str_user
345
        mov     dword[buf_cmd], "USER"
349
        mov     dword[buf_cmd], "USER"
Line -... Line 350...
-
 
350
        mov     byte[buf_cmd+4], " "
-
 
351
        jmp     .send
-
 
352
 
-
 
353
  .copy_user: 
-
 
354
; copy user name to buf_cmd
-
 
355
        mov     edi, buf_cmd
-
 
356
        mov     esi, param_user
-
 
357
  @@:
-
 
358
        lodsb
-
 
359
        stosb
Line 346... Line 360...
346
        mov     byte[buf_cmd+4], " "
360
        cmp     byte [esi-1], 0
347
        jmp     .send
361
        jne     @b
-
 
362
        jmp     .send
-
 
363
 
-
 
364
  .needpass:
348
 
365
; request password
349
 
366
        cmp     [use_params], 1
350
  .needpass:
367
        je      .copy_password
351
; request password
368
 
-
 
369
        invoke  con_write_asciiz, str_pass
-
 
370
        mov     dword[buf_cmd], "PASS"
-
 
371
        mov     byte[buf_cmd+4], " "
-
 
372
        invoke  con_set_flags, 0x00             ; black text on black background for password
-
 
373
        jmp     .send
-
 
374
 
-
 
375
  .copy_password:
-
 
376
; copy password to buf_cmd
-
 
377
        mov     edi, buf_cmd
-
 
378
        mov     esi, param_password
-
 
379
  @@:
Line 352... Line 380...
352
        invoke  con_write_asciiz, str_pass
380
        lodsb
353
        mov     dword[buf_cmd], "PASS"
381
        stosb
-
 
382
        cmp     byte [esi-1], 0
-
 
383
        jne     @b
354
        mov     byte[buf_cmd+4], " "
384
 
355
        invoke  con_set_flags, 0x00             ; black text on black background for password
385
  .send:
Line -... Line 386...
-
 
386
; read string
356
 
387
        cmp     [use_params], 1
357
  .send:
388
        je      @f
358
; read string
389
        mov     esi, buf_cmd+5
359
        mov     esi, buf_cmd+5
390
        invoke  con_gets, esi, 256
360
        invoke  con_gets, esi, 256
391
 
Line 545... Line 576...
545
str_title       db 'FTP client',0
576
str_title       db 'FTP client',0
546
str_welcome     db 'FTP client for KolibriOS v0.12',10
577
str_welcome     db 'FTP client for KolibriOS v0.12',10
547
                db 10
578
                db 10
548
                db 'Please enter ftp server address.',10,0
579
                db 'Please enter ftp server address.',10,0
Line -... Line 580...
-
 
580
 
-
 
581
str_ftp         db 'ftp://',0
549
 
582
 
550
str_prompt      db '> ',0
583
str_prompt      db '> ',0
551
str_resolve     db 'Resolving ',0
584
str_resolve     db 'Resolving ',0
552
str_newline     db 10,0
585
str_newline     db 10,0
553
str_err_resolve db 10,'Name resolution failed.',10,0
586
str_err_resolve db 10,'Name resolution failed.',10,0
Line 678... Line 711...
678
buf_buffer2     rb BUFFERSIZE+1
711
buf_buffer2     rb BUFFERSIZE+1
679
buf_cmd         rb 1024                 ; buffer for holding command string
712
buf_cmd         rb 1024                 ; buffer for holding command string
Line 680... Line 713...
680
 
713
 
Line -... Line 714...
-
 
714
path            rb 1024
-
 
715
 
-
 
716
use_params      db 0
-
 
717
param_user      rb 1024
-
 
718
param_password  rb 1024
-
 
719
param_server_addr rb 1024
681
path            rb 1024
720
param_path      rb 1024