Antonio SJ Musumeci
eb6d1a1bc2
change to using template for policy class
2015-12-29 16:14:37 -05:00
Antonio SJ Musumeci
c731b7035c
fix building without xattr
2015-12-14 18:48:04 -05:00
Antonio SJ Musumeci
9e24796429
add mergerfs pid to xattrs
2015-12-07 21:20:12 -05:00
Antonio SJ Musumeci
5e880bddba
use SYS_setgroups rather than setgroups
2015-10-29 23:20:37 -04:00
Antonio SJ Musumeci
93cedabe9c
fix misc issues flagged by clang scan-build
2015-10-22 18:06:11 -04:00
Antonio SJ Musumeci
1c7de2d83e
fix minor integer casting issues
2015-10-13 23:33:33 -04:00
Antonio SJ Musumeci
58446f9124
misc fixes to compile on older platforms
2015-10-12 19:51:57 -04:00
Antonio SJ Musumeci
40f569be37
rewrite gid cache system
...
Uses fixed storage so as to not require C++11 local thread storage or memory allocation.
2015-10-11 15:01:57 -04:00
Antonio SJ Musumeci
53e3284b26
remove usage of UINT32_MAX macro
2015-10-01 10:26:12 -04:00
Antonio SJ Musumeci
09ffc8c903
provide usage text and version info. closes #146
2015-09-29 07:29:10 -04:00
Antonio SJ Musumeci
5808ab7795
move on enospc when writing feature. closes #141
...
This feature mimics the standard mhddfs behavior but is more thorough.
If a write fails and the errno is set to ENOSPC then mergerfs will (if
the feature is enabled) attempt to move the file to the drive with
the most free space but only if it has enough room for the file plus
the amount to be written. If that transfer is successful it will then
unlink the original file and attempt the previously failed write again.
The copy includes copying the path and file including the acls, owners,
attributes, extended attributes, and timestamps.
2015-09-25 15:14:17 -04:00
Antonio SJ Musumeci
a960a7ef46
cleanup controlfile manipulation
2015-09-14 22:40:49 -04:00
Antonio SJ Musumeci
e0cf97261c
include default_permissions in default arguments
...
closes #130
2015-09-14 22:12:24 -04:00
Antonio SJ Musumeci
3163258a33
make changing credentials opportunistic + per thread setgroups cache
...
closes #129,#131
2015-09-14 19:00:07 -04:00
Antonio SJ Musumeci
ce9352987c
realpath'ize all source mount points. closes #117
2015-09-06 18:24:36 -04:00
Antonio SJ Musumeci
2d899479c3
fix non-suffixed setxattr of user.mergerfs.minfreespace
2015-09-05 23:08:11 -04:00
Antonio SJ Musumeci
b22528bac4
add user.mergerfs.version xattr
2015-09-05 21:48:15 -04:00
Antonio SJ Musumeci
e377d54c93
add user.mergerfs.policies xattr
2015-09-05 19:49:08 -04:00
Antonio SJ Musumeci
8178bf518c
refactor and simplify getxattr for user.mergerfs.\*
2015-09-03 16:56:54 -04:00
Antonio SJ Musumeci
bc77b0fd2a
add minfreespace check to epmfs create policy
2015-09-01 22:28:35 -04:00
Antonio SJ Musumeci
1f1e481075
rework rename
...
Return EXDEV if directories of tragets differ. If the old and new path exist in the same directory first rename each old found by the policy and then unlink/rmdir any new on a drive which didn't rename. The unlink/rmdir will occur only if there were no rename errors. Any failures of unlink/rmdir are ignored. The last rename error is returned.
2015-09-01 18:32:31 -04:00
Antonio SJ Musumeci
7a93198d4a
forgot to add einval to policy
2015-08-30 17:08:24 -04:00
Antonio SJ Musumeci
bbc75f6ff1
create errno policies for simulating errors. closes #107
2015-08-27 22:38:23 -04:00
Antonio SJ Musumeci
126df0fbf1
fix epmfs failing to pick the existing path. closes #102
2015-08-24 15:51:17 -04:00
Antonio SJ Musumeci
8767db971a
remove unused variable
2015-08-05 11:59:39 -04:00
Antonio SJ Musumeci
838c081b8c
Merge pull request #94 from trapexit/config-cleanup
...
config get and struct naming cleanup
2015-08-05 11:51:33 -04:00
Antonio SJ Musumeci
267f2d291c
move requesting of FUSE flags to init from cli args
2015-08-05 11:50:21 -04:00
Antonio SJ Musumeci
f130d07fd8
config get and struct naming cleanup
2015-08-05 09:28:53 -04:00
Antonio SJ Musumeci
52d80299b5
passthrough ioctl args without processing. closes #90
2015-08-05 09:18:34 -04:00
Antonio SJ Musumeci
c60d03831f
use gte rather than gt for mtime comparisons. fixes #91
2015-08-04 14:03:44 -04:00
Antonio SJ Musumeci
80b2c35175
add creation of full path for open
2015-07-16 16:57:01 -04:00
Antonio SJ Musumeci
983fa9100d
change fuse functions to use the fuse namespace
2015-07-15 10:53:13 -04:00
Antonio SJ Musumeci
efadd2c8d8
Merge pull request #86 from trapexit/readdir-cleanup
...
remove unused readdir function
2015-07-15 10:51:43 -04:00
Antonio SJ Musumeci
e5359ebd05
remove unused readdir function
2015-07-15 10:50:25 -04:00
Antonio SJ Musumeci
f00cd1467e
use pthread_getugid_np instead of gete{u,g}id on OSX. fixes #84
2015-07-15 10:39:47 -04:00
Antonio SJ Musumeci
4d605388a4
ignore ENOTSUP errors when cloning paths. fixes #82
2015-07-13 12:20:19 -04:00
Antonio SJ Musumeci
aafc1e9394
add str to size_t conversion code
2015-07-05 21:02:42 -04:00
Antonio SJ Musumeci
b3109ac506
add minfreespace to xattr interface
2015-07-05 19:36:23 -04:00
Antonio SJ Musumeci
b2cd79154a
stop auto calculating and storing fullpath in policies
2015-07-03 10:40:47 -04:00
Antonio SJ Musumeci
0c60701b29
create different policies based on category of use
2015-07-03 08:53:36 -04:00
Antonio SJ Musumeci
51b6d3f647
add category to policies so as to distinguish between creates and searches
2015-07-03 08:51:19 -04:00
Antonio SJ Musumeci
6ca43893ea
separate policies into individual modules
2015-06-23 22:27:01 -04:00
Antonio SJ Musumeci
3c8f12281f
move policy function type from fs to policy
2015-06-23 00:24:14 -04:00
Antonio SJ Musumeci
2bd44568a1
move Path object to separate file
2015-06-22 23:22:51 -04:00
Antonio SJ Musumeci
8e5b79647b
create lfs policy. closes #73
2015-06-22 11:06:36 -04:00
Antonio SJ Musumeci
58167c3636
first w/ free space policy. closes #72
2015-06-22 10:53:39 -04:00
Antonio SJ Musumeci
ccb22c1fbe
create minfreespace option. closes #71
2015-06-22 09:59:16 -04:00
Antonio SJ Musumeci
45b73e53be
fix calling of lgetxattr. closes #68
2015-06-04 09:31:43 -04:00
Antonio SJ Musumeci
5fb277529f
attempt to set priority to -10 on startup. closes #65
2015-03-17 20:39:20 -04:00
Antonio SJ Musumeci
4b204b8fba
restrict who can setxattr the pseudo file. closes #64
2015-03-13 20:31:02 -04:00