Skip to content
theAesterPublic

About

Direct File Transfer Protocol

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Latest commit

 

History

24 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dftp

Direct File Transfer Protocol

This is for when you need to quickly transfer a file between two devices over the network.

It is not secure (yet) but easier to use than ssh and sftp since it's a one-shot program and doesn't require configuring a server. Moreover it has a very simple and understandable protocol.

It's just like how you may use netcat to transfer files however it's specialized for this purpose and is faster due to compression.

Installation

This is a Cargo project. simply:

cargo build --release

The binary files will reside in ./target/release

You could also use

cargo install --path [install path]

to install it locally

Usage

First, On the receiving end type:

dftp -r [-p {listen_port_numer}=8086] [-f {output_file_name}=stdout]

then on the sending end type:

dftp {ip_address_of_recieving_end}[:recieve_port=8086] [-p {bind_port_number}=any] [-f {input_file_name}=stdin] [-x]

the -x flag tells the program to use xz DEFLATE compression over the network.

Notes

Explanatory error messages and usage hints are yet to come. DONE. Support for transferring multiple files is the next task.

Default behavior is reading/writing from/to stdin/stdout for the sending/receiving end. Unless -f is specified.

Compression is disabled by default. use -x on the sending side to enable it.

About

Direct File Transfer Protocol

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages