Giuseppe Scrivano
f787603a30
fuse-overlayfs: add missing definitions for _FILE_OFFSET_BITS
...
it caused an issue on armv7h where different versions of dirent struct
were used in main.c and in the other files.
Regression introduced with c2c2ac5b82fb59322da227d196214b4a58ede634
Closes: https://github.com/containers/fuse-overlayfs/issues/197
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-15 10:18:30 +02:00
Giuseppe Scrivano
5f666c1e67
Merge pull request #196 from giuseppe/tag-0.7.8
...
configure.ac, NEWS: tag 0.7.8
2020-03-17 16:58:32 +01:00
Giuseppe Scrivano
f55aa8ef56
configure.ac, NEWS: tag 0.7.8
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v0.7.8
2020-03-17 12:27:58 +01:00
Daniel J Walsh
6cb22ea674
Merge pull request #194 from giuseppe/correct-nlink-dirs
...
main: drop nlink optimization
2020-03-16 10:23:52 -04:00
Daniel J Walsh
4b97cf9ee6
Merge pull request #195 from giuseppe/no-read-fd
...
main: stop ino lookup without an open fd
2020-03-16 10:22:24 -04:00
Giuseppe Scrivano
f703870668
main: drop nlink optimization
...
calculate the nlink for the directory on each stat.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-16 11:54:39 +01:00
Giuseppe Scrivano
e63c9b133d
main: stop ino lookup without an open fd
...
stop the lookup for the dev/ino if there is not an ino open as it also
prevents reading the origin xattr.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-16 11:36:55 +01:00
Daniel J Walsh
da13832baa
Merge pull request #191 from giuseppe/delete-dir-before-rename-no-overwrite
...
main, rename: make sure destination is deleted
2020-03-03 13:32:35 -05:00
Giuseppe Scrivano
8f15388c6f
configure.ac: tag 0.7.7
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v0.7.7
2020-03-03 16:50:17 +01:00
Giuseppe Scrivano
9660aaed2f
main: preserve errno for create_directory
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-03 16:50:16 +01:00
Giuseppe Scrivano
47218d09ab
main, rename: make sure destination is deleted
...
before doing a rename(2) make sure the destination is cleaned up,
otherwise a left-over directory can cause the rename to fail with
EEXIST.
Closes: https://github.com/containers/fuse-overlayfs/issues/189
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-03 16:50:15 +01:00
Giuseppe Scrivano
6bf8a6cc95
travis.yml: fix build
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-03-03 16:50:15 +01:00
Giuseppe Scrivano
8b91e3fed3
Merge pull request #186 from rhatdan/debug
...
Add support for debug to match help
2020-02-19 15:46:07 +01:00
Daniel J Walsh
14b1e91521
Add support for debug to match help
...
The help message that is printed does not match reality for the command line.
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-02-18 11:09:12 -05:00
Giuseppe Scrivano
8bba496f08
Merge pull request #180 from TomSweeneyRedHat/coc
...
Add Code of Conduct
2020-02-10 14:20:36 +01:00
TomSweeneyRedHat
1d8a4e751d
Add Code of Conduct
...
Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
2020-02-08 17:24:56 -05:00
Daniel J Walsh
ce61c7e955
Merge pull request #179 from giuseppe/tag-076
...
configure.ac: tag 0.7.6
v0.7.6
2020-02-03 09:23:46 -05:00
Giuseppe Scrivano
f3f7218bd1
configure.ac: tag 0.7.6
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-02-03 12:48:15 +01:00
Daniel J Walsh
9266fca93d
Merge pull request #178 from giuseppe/not-override-ino
...
main: lookup skip ino if there is no origin
2020-01-31 09:36:44 -06:00
Giuseppe Scrivano
47cc3c2475
utils: on ENXIO access the path
...
Closes: https://github.com/containers/fuse-overlayfs/issues/176
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-31 15:39:42 +01:00
Giuseppe Scrivano
f8b554aa9a
main: lookup skip ino if there is no origin
...
if there is no origin xattr specified, do not overwrite the ino
number.
Closes: https://github.com/containers/fuse-overlayfs/issues/177
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-31 15:39:41 +01:00
Giuseppe Scrivano
1874c5e9ce
.travis.yml: update golang
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-31 15:39:40 +01:00
Daniel J Walsh
907614553d
Merge pull request #172 from giuseppe/do-not-expose-opaque
...
listxattr/getxattr: do not access private xattrs
2020-01-17 16:59:27 -05:00
Giuseppe Scrivano
99d49d54ae
release: tag 0.7.5
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v0.7.5
2020-01-17 22:02:54 +01:00
Giuseppe Scrivano
8a7508ed40
utils: retry on temporary close failures
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-17 22:02:53 +01:00
Giuseppe Scrivano
d4a957dea9
main: use the rename version when setting opaque
...
so that it can be correctly set on the directory before renaming it.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-17 22:01:17 +01:00
Giuseppe Scrivano
632c56f4b9
listxattr/getxattr: do not access private xattrs
...
Closes: https://github.com/containers/fuse-overlayfs/issues/173
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-17 18:48:27 +01:00
Giuseppe Scrivano
32d867b96a
Merge pull request #171 from giuseppe/tag-0.7.4
...
release: tag 0.7.4
2020-01-17 11:51:36 +01:00
Giuseppe Scrivano
1a1c42aedb
release: tag 0.7.4
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v0.7.4
2020-01-17 11:34:45 +01:00
Daniel J Walsh
604452082e
Merge pull request #170 from giuseppe/check-whiteout
...
main: check if file is whiteout
2020-01-16 09:30:09 -05:00
Giuseppe Scrivano
ce93abae5f
main: do not copyup opaque xattr
...
when performing the copyup, do not copy the private xattrs.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-15 17:52:16 +01:00
Giuseppe Scrivano
214d606084
main: check if file is whiteout
...
when doing a lookup, make sure the returned file is not a whiteout for
functions that expect the file to exist.
Close: https://github.com/containers/fuse-overlayfs/issues/169
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-15 00:09:31 +01:00
Daniel J Walsh
dd7cf03497
Merge pull request #168 from giuseppe/drop-O_DIRECT
...
main: reset O_DIRECT on open
2020-01-14 10:15:22 -05:00
Giuseppe Scrivano
724ab6d2b3
main: reset O_DIRECT on open
...
having the fd open with O_DIRECT causes pwrite64 to fail with EINVAL
if the write buffer is not aligned. Since we have no control on the
buffer provided by libfuse, just drop O_DIRECT.
Closes: https://github.com/containers/fuse-overlayfs/issues/167
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-14 12:28:54 +01:00
Giuseppe Scrivano
ffc83a4ed6
main: specify FUSE_BUF_FD_RETRY to libfuse
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-14 12:27:17 +01:00
Giuseppe Scrivano
dfea3f9b63
main: fix fallocate for deleted files
...
allow to use fallocate on an unlinked path if there is still a
reference to it.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-13 22:24:34 +01:00
Giuseppe Scrivano
e01ba30da5
Merge pull request #165 from giuseppe/tag-0.7.3
...
configure.ac: tag 0.7.3
v0.7.3
2020-01-09 12:06:17 +01:00
Giuseppe Scrivano
54ad06bafe
configure.ac: tag 0.7.3
...
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-09 11:57:21 +01:00
Daniel J Walsh
a0ba68151a
Merge pull request #164 from giuseppe/fix-160
...
main: force a dir reload after a move
2020-01-08 12:20:29 -05:00
Giuseppe Scrivano
9f27377e13
Merge pull request #163 from saschagrunert/segfault
...
Fix possible segmentation fault in direct_fsync()
2020-01-08 13:25:41 +01:00
Giuseppe Scrivano
a9c49ec18d
main: create_missing_whiteouts uses datastore
...
refactor create_missing_whiteouts to use the datastore API so it works
correctly with plugins.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-08 13:24:00 +01:00
Giuseppe Scrivano
efcfb045b4
main: skip whiteouts file when creating missing ones
...
do not attempt to create a whiteout if the file itself is already a
whiteout.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-08 13:23:16 +01:00
Giuseppe Scrivano
b29a8f1587
main: force a dir reload after a move
...
if the directory was moved, invalidate its cache and force a reload.
Closes: https://github.com/containers/fuse-overlayfs/issues/160
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-01-08 13:22:20 +01:00
Giuseppe Scrivano
a6f9e32639
Merge pull request #161 from saschagrunert/extern
...
Fix build with -fno-common
2020-01-08 10:46:53 +01:00
Giuseppe Scrivano
7a06acbfda
Merge pull request #162 from saschagrunert/fixes
...
Fix dead increment and assignments
2020-01-08 10:46:16 +01:00
Sascha Grunert
0aa0537459
Fix possible segmentation fault in direct_fsync()
...
If the call to `get_upper_layer(lo)` returns `NULL` then the
`node->layer` will be `NULL`, too. If this is the case we pass `NULL` to
`direct_fsync()` which will cause a segmentation fault in:
```c
cfd = openat(l->fd, path, O_NOFOLLOW|O_DIRECTORY);
```
To fix this we now apply an additional check and error in the case of
`get_upper_layer(lo) == NULL`.
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-01-08 09:33:48 +01:00
Sascha Grunert
07627d4ddb
Fix dead assignment in main.c
...
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-01-08 09:23:42 +01:00
Sascha Grunert
8f3a1dde24
Fix dead increment in main.c
...
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-01-08 09:22:22 +01:00
Sascha Grunert
54042dad32
Fix dead increment in utils.c
...
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-01-08 09:19:50 +01:00
Sascha Grunert
ae73314491
Fix build with -fno-common
...
To avoid that the compiler complains when building with `-fno-common`.
Can be reproduced by:
```
> make CFLAGS=-fno-common
...
ld: fuse_overlayfs-direct.o:(.data+0x0): multiple definition of \
`direct_access_ds'; fuse_overlayfs-main.o:(.bss+0x0): \
first defined here
ld: fuse_overlayfs-utils.o:(.bss+0x0): multiple definition of \
`direct_access_ds'; fuse_overlayfs-main.o:(.bss+0x0): \
first defined here
ld: fuse_overlayfs-plugin-manager.o:(.bss+0x0): multiple definition of \
`direct_access_ds'; fuse_overlayfs-main.o:(.bss+0x0): \
first defined here
```
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-01-08 09:08:16 +01:00