From c335d423e3b49b923bdd4d1dbe242f252f335d01 Mon Sep 17 00:00:00 2001 From: Reiner Herrmann Date: Fri, 6 Aug 2021 14:26:20 +0200 Subject: Convert README to Markdown --- README | 68 --------------------------------------------------------- README.md | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+), 68 deletions(-) delete mode 100644 README create mode 100644 README.md diff --git a/README b/README deleted file mode 100644 index e6a5f44..0000000 --- a/README +++ /dev/null @@ -1,68 +0,0 @@ -RusTFTP - -A client and server implementation of the Trivial File Transfer Protocol, -written in Rust. - - -Currently supported: -- RFC 1350 (TFTP revision 2) -- RFC 2347 (Option Extension) -- RFC 2348 (Blocksize Option) -- RFC 2349 (Timeout Interval and Transfer Size Options) - -Non-standard options: -- blksize2: block size as a power of 2 -- utimeout: timeout in microseconds - - -Use cargo to build the binaries (output dir is target/release/): - $ cargo build --release - - -Client: - - $ ./rtftpc --help - RusTFTP - - ./rtftpc [options] [:port] - - Options: - -h, --help display usage information - -g, --get FILE download file from remote server - -p, --put FILE upload file to remote server - -b, --blksize SIZE negotiate a different block size (default: 1428) - -n, --netascii use netascii mode (instead of octet) - - -Server: - - $ ./rtftpd --help - RusTFTP - - ./rtftpd [options] [directory] - - Options: - -h, --help display usage information - -p, --port PORT port to listen on (default: 69) - -u, --uid UID user id to run as (default: 65534) - -g, --gid GID group id to run as (default: 65534) - -r, --read-only allow only reading/downloading of files (RRQ) - -w, --write-only allow only writing/uploading of files (WRQ) - -t, --threads N number of worker threads (default: 2) - - -Notes: - - As the block number is two bytes long, the number of blocks is limited - to 65535 (with the first block starting at 1). - To support the transfer of files larger than 65535 blocks, it will wrap around - after reaching the maximum and start at 0 again, which is not defined in the - standard. - - -License: - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. diff --git a/README.md b/README.md new file mode 100644 index 0000000..b700a07 --- /dev/null +++ b/README.md @@ -0,0 +1,75 @@ +RusTFTP +======= + +A client and server implementation of the Trivial File Transfer Protocol, +written in Rust. + + +Currently supported: +* RFC 1350 (TFTP revision 2) +* RFC 2347 (Option Extension) +* RFC 2348 (Blocksize Option) +* RFC 2349 (Timeout Interval and Transfer Size Options) + +Non-standard options: +* blksize2: block size as a power of 2 +* utimeout: timeout in microseconds + + +Use cargo to build the binaries (output dir is `target/release/`): +``` +$ cargo build --release +``` + + +### Client + +``` +$ ./rtftpc --help +RusTFTP + +./rtftpc [options] [:port] + +Options: + -h, --help display usage information + -g, --get FILE download file from remote server + -p, --put FILE upload file to remote server + -b, --blksize SIZE negotiate a different block size (default: 1428) + -n, --netascii use netascii mode (instead of octet) +``` + + +### Server + +``` +$ ./rtftpd --help +RusTFTP + +./rtftpd [options] [directory] + +Options: + -h, --help display usage information + -p, --port PORT port to listen on (default: 69) + -u, --uid UID user id to run as (default: 65534) + -g, --gid GID group id to run as (default: 65534) + -r, --read-only allow only reading/downloading of files (RRQ) + -w, --write-only allow only writing/uploading of files (WRQ) + -t, --threads N number of worker threads (default: 2) +``` + + +## Notes + +As the block number is two bytes long, the number of blocks is limited +to 65535 (with the first block starting at 1). +To support the transfer of files larger than 65535 blocks, it will wrap around +after reaching the maximum and start at 0 again, which is not defined in the +standard. + + +## License + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. -- cgit v1.2.3