aboutsummaryrefslogtreecommitdiffstats
path: root/src/userinfo.c
diff options
context:
space:
mode:
authorHenry Stern <stern@fsi.io>2015-09-11 13:11:12 -0300
committerHenry Stern <stern@fsi.io>2015-09-11 13:11:12 -0300
commitdb20a1bfae369f619f9ee2afcafffb27b9897fa4 (patch)
tree1cbcea879be2a7d6e53d41d92855cd7ca63294c1 /src/userinfo.c
parent5922a236d0ce7fcf911fce6ff7a52b11ddcf2142 (diff)
downloadbindfs-db20a1bfae369f619f9ee2afcafffb27b9897fa4.tar.gz
Better handle symlinks with destructive system calls.
The unlink, rmdir, and rename system calls behave unexpectedly if you resolve the symbolic link and perform the operation on that instead. It would leave a dangling symlink and delete the original instead which is probably not the intention. This commit adds another parameter to process_path to enable or disable the symlink resolution. The bindfs_unlink, bindfs_rmdir and bindfs_rename functions use this parameter to produce the expected result. rm -rf will still behave differently, deleting the contents of the symlinked directory before removing the symlink and not the linked directory.
Diffstat (limited to 'src/userinfo.c')
0 files changed, 0 insertions, 0 deletions