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

TFTPProviderDriver's stage() method does not work with tftpd --secure flag #1487

Open
flxzt opened this issue Aug 27, 2024 · 0 comments
Open
Assignees

Comments

@flxzt
Copy link
Contributor

flxzt commented Aug 27, 2024

I came across the following issue:

When trying to stage files with the TFTPProviderDriver, it's stage() method symlinks the synced file from the cache dir to the tftp server dir.
Because the file is outside of the tftp server directory, this does not work in combination with the --secure flag of the tftp server. This flag makes the server chroot into it's server directory so any symlinks that point outside of it won't be followed correctly.

This is a problem when trying to use the stage() method in combination with the TFTPProvider external field,
which returns the "externally visible" (relative) path.

I guess a solution can be to remove the --secure flag and use the internal field to resolve to an absolute path of the staged file symlink.

But if I didn't miss anything this renders the external field effectively broken in the TFTPPRoviderDriver when trying to be used in combination with the stage() method.
This also dictates the setup of the tftp server which sometimes is not ideal when used for other purposes as well

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

2 participants