Cryptographically secure file transfer CLI tool
Go to file
2022-07-17 20:58:45 +03:00
.github/workflows Initial commit 2022-07-10 22:16:50 +03:00
data Initial commit 2022-07-10 22:16:50 +03:00
doc README.md & structure.svg 2022-07-16 22:09:28 +03:00
output Initial commit 2022-07-10 22:16:50 +03:00
src Removed panics 2022-07-17 19:07:22 +03:00
tests Single binary structure & integration tests 2022-07-15 16:18:03 +03:00
.gitignore Initial commit 2022-07-10 22:16:50 +03:00
Cargo.lock Single binary structure & integration tests 2022-07-15 16:18:03 +03:00
Cargo.toml Single binary structure & integration tests 2022-07-15 16:18:03 +03:00
LICENSE Initial commit 2022-07-10 22:16:50 +03:00
README.md More detailed usage-section 2022-07-17 20:58:45 +03:00

TCP socket pair for easy and efficient file transfer

Single binary (~5.6 MB) containing both server and client. Originally made as an backend for other project.

Installation and usage

Quickly run with:

cargo run -- <OPTIONS>

or create and run an optimized, independent binary:

cargo build --release
./target/release/fragilebyte <OPTIONS>

If no options are specified the app starts as a server by default. It can be started as a client by defining a target address as shown below.

USAGE:
    fragilebyte [OPTIONS]

OPTIONS:
    -b, --buffersize <BUFFERSIZE>    Buffersize used in the file transfer (bytes) [default: 8192]
    -f, --fileroot <FILEROOT>        Path to the folder where the files are outputted as a client or
                                     served from as a server [default: './output' / './data']
    -h, --help                       Print help information
        --localhost                  Run only in the local network
    -p, --port <PORT>                Port where the service is hosted [default: 8080]
    -t, --target <TARGET>            Server's address when connecting as a client
        --timeout <TIMEOUT>          Seconds of inactivity after which the server closes itself
                                     [default: 30]
    -V, --version                    Print version information

Dependencies

DependenciesGraph