mirror of
https://github.com/rclone/rclone.git
synced 2024-11-23 00:43:49 +01:00
vfs: Add link permissions
This commit is contained in:
parent
b6f537ec5e
commit
1f9ecbc5b8
@ -100,6 +100,11 @@ var OptionsInfo = fs.Options{{
|
||||
Default: FileMode(0666),
|
||||
Help: "File permissions",
|
||||
Groups: "VFS",
|
||||
}, {
|
||||
Name: "link_perms",
|
||||
Default: FileMode(0666),
|
||||
Help: "Link permissions",
|
||||
Groups: "VFS",
|
||||
}, {
|
||||
Name: "vfs_case_insensitive",
|
||||
Default: runtime.GOOS == "windows" || runtime.GOOS == "darwin", // default to true on Windows and Mac, false otherwise,
|
||||
@ -181,6 +186,7 @@ type Options struct {
|
||||
GID uint32 `config:"gid"`
|
||||
DirPerms FileMode `config:"dir_perms"`
|
||||
FilePerms FileMode `config:"file_perms"`
|
||||
LinkPerms FileMode `config:"link_perms"`
|
||||
ChunkSize fs.SizeSuffix `config:"vfs_read_chunk_size"` // if > 0 read files in chunks
|
||||
ChunkSizeLimit fs.SizeSuffix `config:"vfs_read_chunk_size_limit"` // if > ChunkSize double the chunk size after each chunk until reached
|
||||
ChunkStreams int `config:"vfs_read_chunk_streams"` // Number of download streams to use
|
||||
@ -208,7 +214,11 @@ func (opt *Options) Init() {
|
||||
// Mask the permissions with the umask
|
||||
opt.DirPerms &= ^opt.Umask
|
||||
opt.FilePerms &= ^opt.Umask
|
||||
opt.LinkPerms &= ^opt.Umask
|
||||
|
||||
// Make sure directories are returned as directories
|
||||
opt.DirPerms |= FileMode(os.ModeDir)
|
||||
|
||||
// Make sure links are returned as links
|
||||
opt.LinkPerms |= FileMode(os.ModeSymlink)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user