Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide binary #9

Open
alexmaco opened this issue May 1, 2020 · 7 comments
Open

Provide binary #9

alexmaco opened this issue May 1, 2020 · 7 comments

Comments

@alexmaco
Copy link

alexmaco commented May 1, 2020

For convenient use, providing an executable binary (available via cargo install async-tftp-rs for instance) from this crate would be great. This would make it immediately useful for most use cases that just want to serve tftp, and are not looking to embed tftp in a larger application.

I think this crate would work great as an application since it implements most of the TFTP-related RFCs.

BIkeshedding topics:

  • the binary name: could probably be tftp-server, or serve-tftp, to reserve space for a future tftp-client

I'm willing to add the binary wrapper implementation and make a PR if you're willing to merge it.

@oblique
Copy link
Owner

oblique commented May 1, 2020

To be honest I never thought that someone will use this as an application instead of other tftp servers such as atftp. Do you prefer it because it can be easily build into a single binary? Or is there any other reason?

@alexmaco
Copy link
Author

alexmaco commented May 1, 2020

All (or most) else being equal, I would prefer to use networking applications written in rust for the reliability and security. In the past I used a fork of tftp_server (the binary), to which I added implementations for a few RFCs. However, this library already supports async, so i'd rather contribute to this over using my own.

@oblique
Copy link
Owner

oblique commented May 1, 2020

Hm cool. Yes I'm willing to accept your PR.

@oblique
Copy link
Owner

oblique commented May 1, 2020

I'm not sure about the binary names, but we can decide later.

spod added a commit to spod/async-tftp-rs that referenced this issue Dec 31, 2020
This is intended to address [issue oblique#9 - Provide binary](oblique#9).

The simple-tftpd binary is a based on examples/tfptd-dir.rs with a very basic logger implementation.
@spod
Copy link
Contributor

spod commented Dec 31, 2020

I was about to open a pull request to add a simple binary when reading cargo docs I spotted it's possible to run the included examples as binaries with cargo:

$ cargo run --example tftpd-dir
TFTP directory: ...
Listening on: 0.0.0.0:6969
^C
$ cargo run --example tftpd-targz <archive-path>
Listening on: 0.0.0.0:6969
^C

Hopefully they are adequate for you @alexmaco - if you think more is needed let me know and I'll spin up a branch with the binary I started on and we can work on it together.

@oblique
Copy link
Owner

oblique commented Jan 1, 2021

Since there is a demand, I can do it if @alexmaco didn't start yet.

@spod What features do you expect to see in the cli?

Repository owner deleted a comment from Azerxim Feb 6, 2024
Repository owner deleted a comment from rafly2103 Feb 15, 2024
Repository owner deleted a comment from leocsilva Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants
@spod @oblique @alexmaco and others