642 Commits

Author SHA1 Message Date
Giuseppe Scrivano
bbf631d046
fuse-overlays: fix interaction of unlink(2) with readdir(2)
fix an interesting interaction between unlink(2) and readdir(2) that
can confuse the cache.

If a file is unlinked before the readdir(2) is done, it is not removed
from the list generated when the directory was first opened.  Thus the
result is that readdir(2) will return the file even if it was unlinked
and moved to the work dir until the cache is released.

The fix is to skip dentries that are hidden while iterating the list.

Closes: https://github.com/containers/libpod/issues/2342

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-15 19:19:21 +01:00
Daniel J Walsh
ff65edefc7
Merge pull request #44 from giuseppe/ignore-EINVAL-on-copy-xattr
main: ignore EINVAL when copying xattrs
2019-02-12 06:27:52 -08:00
Giuseppe Scrivano
81e220147a
main: ignore EINVAL when copying xattrs
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-12 11:33:18 +01:00
Giuseppe Scrivano
60eb3bca75
Merge pull request #42 from thiell/ftruncate_mode000
setattr: use fd from fi->fh for ftruncate()
2019-02-08 08:24:51 +01:00
Stephane Thiell
a9091e4bd8 setattr: use fd from fi->fh for ftruncate() whenever possible
When a file is created with restricted permissions (like 000), ftruncate() should
still work as long as the fd is open. If fi->fh is available, use it to fix that
and avoid the call to openat() which failed in that case.
2019-02-07 16:16:45 -08:00
Giuseppe Scrivano
abc4719464
Merge pull request #43 from thiell/create_directory_memleak
create_directory: do not redeclare variable buf
2019-02-05 09:47:05 +01:00
Stephane Thiell
f0cd15ec64 create_directory: do not redeclare variable buf 2019-02-04 14:46:29 -08:00
Giuseppe Scrivano
6d269aa28e
Merge pull request #41 from giuseppe/release-0.3
fuse-overlayfs: tag release 0.3
v0.3
2019-01-15 12:53:32 +01:00
Giuseppe Scrivano
2b6de49eed
configure.ac: release 0.3
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-15 11:09:24 +01:00
Giuseppe Scrivano
ac303e91cf
man: fix man page generation from a VPATH
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-15 11:09:23 +01:00
Giuseppe Scrivano
a80f8e027d
Makefile.am: fix building from a VPATH
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-15 11:09:22 +01:00
Daniel J Walsh
6dbbd3c712
Merge pull request #39 from giuseppe/no-allow-others-when-uid-not-zero
fuse-overlayfs: use allow_other only when running with uid=0
2019-01-12 09:19:30 -05:00
Daniel J Walsh
d909f8de0b
Merge pull request #40 from giuseppe/mkdir-umask
mkdir: honor calling process umask
2019-01-09 10:12:51 -05:00
Giuseppe Scrivano
0a3665a7a0
mkdir: honor calling process umask
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-09 16:01:25 +01:00
Giuseppe Scrivano
830d634b2d
fuse-overlayfs: use allow_other only when running with uid=0
Closes: https://github.com/containers/fuse-overlayfs/issues/35

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-09 11:37:59 +01:00
Daniel J Walsh
5c9742dca9
Merge pull request #38 from giuseppe/umask-mknod
mknod: honor umask from the calling process
2019-01-07 15:37:46 -05:00
Giuseppe Scrivano
2dbd61c52e
mknod: honor umask from the calling process
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-07 15:27:34 +01:00
Daniel J Walsh
de199ddb73
Merge pull request #37 from giuseppe/correct-owner
fuse-overlayfs: create symlinks with the correct owner
2019-01-07 08:12:19 -05:00
Giuseppe Scrivano
8935bb1d8f
fuse-overlayfs: honor process umask
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-07 10:03:45 +01:00
Giuseppe Scrivano
bbc8181f59
fuse-overlayfs: create symlinks with the correct owner
Closes: https://github.com/containers/libpod/issues/2091

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-07 09:57:20 +01:00
Daniel J Walsh
623102c62d
Merge pull request #36 from giuseppe/set-rlimits
fuse-overlays: bump max open files to hard limit
2019-01-04 09:09:18 -05:00
Giuseppe Scrivano
d3729baa93
fuse-overlays: bump max open files to hard limit
Increase the soft limit for the open files to the hard limit.

Closes: https://github.com/containers/fuse-overlayfs/issues/34

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-04 13:22:06 +01:00
Giuseppe Scrivano
b27d7ebc2c
fuse-overlayfs: print diagnostics to stderr
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-01-04 09:14:12 +01:00
Daniel J Walsh
91bb4019eb
Merge pull request #32 from giuseppe/suid
fuse-overlayfs: set suid when running in a user namespace
2018-12-20 04:54:51 -08:00
Giuseppe Scrivano
d3e36f332e
fuse-overlayfs: set suid when running in a user namespace
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-20 12:44:31 +01:00
Daniel J Walsh
3e8132d7ae
Merge pull request #31 from giuseppe/fix-dead-assignments
main: fix some dead assignments
2018-12-19 08:11:39 -08:00
Giuseppe Scrivano
b31d6d50fb
main: fix some dead assignments
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-19 11:20:46 +01:00
Daniel J Walsh
f48e1eff7a
Merge pull request #30 from giuseppe/fix-copyup-file-not-accessible
copyup: fix error if lower file cannot be opened
2018-12-17 14:01:09 -05:00
Giuseppe Scrivano
63a6dae075
copyup: fix error if lower file cannot be opened
propagate the error code to the caller if the lower file cannot be
opened.

Signed-off-by: Giuseppe Scrivano <giuseppe@scrivano.org>
2018-12-14 22:42:54 +01:00
Daniel J Walsh
e23a1e194f
Merge pull request #29 from giuseppe/umask
fuse-overlayfs: set umask to 0
2018-12-13 05:32:09 -08:00
Giuseppe Scrivano
d49ce33689
fuse-overlayfs: set umask to 0
be sure we are able to set all the bits on created files/directories.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-11 22:08:20 +01:00
Giuseppe Scrivano
1e2b65baa2
Merge pull request #28 from giuseppe/tag-v0.2
fuse-overlayfs: tag version 0.2
v0.2
2018-12-11 17:30:43 +01:00
Giuseppe Scrivano
b79c433c1c
configure.ac: bump version to 0.2
Closes: https://github.com/containers/fuse-overlayfs/issues/27

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-11 12:09:34 +01:00
Giuseppe Scrivano
d5be66901f
main: print fuse-overlayfs version
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-11 12:09:02 +01:00
Giuseppe Scrivano
05843eb2af
fuse-overlayfs: honor --help and --version
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-12-11 12:07:52 +01:00
Giuseppe Scrivano
3d48bf9a82
Merge pull request #25 from giuseppe/fix-wh-variant
fuse-overlayfs: fix a couple of issues with the .wh. variant and enable tests
2018-11-07 14:02:46 +01:00
Giuseppe Scrivano
99d6b6c458
tests: enable tests for the .wh. whiteout variant
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 12:03:37 +01:00
Giuseppe Scrivano
55b068e823
lookup: check for a .wh. file in the same layer
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 11:59:55 +01:00
Giuseppe Scrivano
4007f8b65f
readdir: check if there is a .wh. file in the same directory
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 11:59:55 +01:00
Giuseppe Scrivano
4d7ac8d50a
tests: add way to test out .wh. whiteout variant
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 11:36:35 +01:00
Giuseppe Scrivano
a4f88df17c
Merge pull request #24 from giuseppe/read-dangling-symlinks
fuse-overlayfs: read correctly inode for dangling symlinks
2018-11-07 11:12:08 +01:00
Giuseppe Scrivano
b54426b6c3
fuse-overlayfs: honor .wh. whiteout files
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 09:20:34 +01:00
Giuseppe Scrivano
a147df9b11
fuse-overlayfs: reset times struct before using it
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-07 09:02:13 +01:00
Giuseppe Scrivano
a289a24acc
fuse-overlayfs: read correctly inode for dangling symlinks
do not follow symlinks when stat'ing a path, so that we read the inode
of the symlink itself.

Closes: https://github.com/containers/fuse-overlayfs/issues/23

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-11-06 18:37:02 +01:00
Giuseppe Scrivano
50c7a50240
Merge pull request #22 from giuseppe/no-block-on-fifo
fuse-overlayfs: use O_NONBLOCK for opening files
2018-10-17 17:21:51 +02:00
Giuseppe Scrivano
aa23169fec
fuse-overlayfs: use O_NONBLOCK for opening files
avoid blocking on opening a fifo:

Closes: https://github.com/containers/fuse-overlayfs/issues/21

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-17 16:26:07 +02:00
Giuseppe Scrivano
5e0b422934
Merge pull request #19 from giuseppe/whiteout-enotsup
fuse-overlayfs: try alternative whiteout on ENOTSUP
2018-10-16 13:35:17 +02:00
Giuseppe Scrivano
c33f7d4121
Merge pull request #20 from mskarbek/dependency-fix
adding missing dependency
2018-10-16 09:49:55 +02:00
Marcin Skarbek
b5a0d391f2
adding missing dependency 2018-10-15 21:11:22 +02:00
Giuseppe Scrivano
36099f41fd
travis: install python3-setuptools
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-06 22:20:39 +02:00