Opened 14 years ago
Closed 14 years ago
#133 closed enhancement (fixed)
open file remotely without using ssh channel
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | critical | Milestone: | 0.12 |
Component: | Global | Keywords: | |
Cc: |
Description (last modified by )
The sftp code was removed with paramiko, what we can do to restore the functionality is to define a new message type for file transfers and send the file through the normal client-server channel.
- new
accept_files
option for servers (defaults to off?) - keep file pointer + index in server connection
- send first chunk of data, below the max_line limit and also taking into account the link speed
- server creates a temporary file in configurable download location (default to ~/Download)
- server sends an ack after each packet is received (potential small delay here to ensure we prioritize other packets ahead of file transfers)
- client fire progress_update callbacks registered with the file transfer
- client sends the next chunk (potential delay here - same reason as above), taking into account how long the first previous took (so we can keep UI updates regular - say 1 second target)
- if the server (or client) does not ack (or send the next chunk) within a certain amount of time (tbd - dynamic?), we cancel the whole thing and tell the other end. The server can delete the temporary file.
- When the transfer is complete, we ask the server to open it.
- Ensure file data is encrypted over the wire
Change History (4)
comment:1 Changed 14 years ago by
Owner: | changed from Antoine Martin to Antoine Martin |
---|---|
Status: | new → accepted |
comment:2 Changed 14 years ago by
Description: | modified (diff) |
---|
comment:3 Changed 14 years ago by
part2 in r3523:
- can send multiple files
- shows progress using existing progress bar code
- stores data in a secure temp file
comment:4 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
This will do for now.
Not doing:
- max size for file transfers, user can cancel if it takes too long
- delays between receiving and acking, seems ok without it
Not done yet:
- encrypt file data: #138
May do later:
- show which files are being sent
- only send up to N files in parallel
Note: See
TracTickets for help on using
tickets.
allow_file_transfers
" option in r3522