Files
restic/changelog/unreleased/pull-5718
T
Johannes Truschnigg a8f0ad5cc4 mount: check for more requisite mountpoint conditions (#5718)
* mount: check for more requisite mountpoint conditions

In order to be able to mount a repository over a mountpoint target
directory via FUSE, that target directory needs to be both writeable and
executable for the UID performing the mount.

Without this patch, `restic mount` only checks for the target pathname's
existence, which can lead to a lot of data transfer and/or computation
for large repos to be performed before eventually croaking with a fatal
"fusermount: failed to chdir to mountpoint: Permission denied" (or
similar) error.

FUSE does allow for mounting over a target path that refers to a regular
(writeable) file, but the result is not accessible via chdir(), so we
prevent that as well, and accept only directory inodes as the intended
target mountpoint path.

* Don't use snake_case identifiers

* Add changelog entry

* tweak changelog summary

---------

Co-authored-by: Michael Eischer <michael.eischer@fau.de>
2026-02-19 17:11:49 +00:00

10 lines
475 B
Plaintext

Enhancement: stricter early mountpoint validation in `mount`
`restic mount` accepted parameters that would lead to a FUSE mount operation
failing after having done computationally intensive work to prepare the mount.
The `mountpoint` argument supplied must now refer to the name of a directory
that the current user can access and write to, otherwise `restic mount` will
exit with an error before interacting with the repository.
https://github.com/restic/restic/pull/5718