754 Commits

Author SHA1 Message Date
Giuseppe Scrivano
c2dd76c6d7
Merge pull request #412 from giuseppe/fix-variable-leak
main: automatically cleanup newpath
2024-02-06 13:21:34 +01:00
Giuseppe Scrivano
c08211ddd7
main: automatically cleanup newpath
this was already the assumption in the source code.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-02-06 10:21:52 +01:00
Giuseppe Scrivano
18f4d6768a
Merge pull request #410 from giuseppe/propagate-force-mask-on-dir-copyup
main: propagate xattrs permissions with copyup
2023-11-03 10:36:21 +01:00
Giuseppe Scrivano
d9e78eadb7
main: create dir in two steps with xattrs permissions
if xattrs permissions are used, create the directory in two steps and
set the correct ownership before moving it into the target.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-11-02 11:49:16 +01:00
Giuseppe Scrivano
d65ce2a8bb
main: propagate xattrs permissions with copyup
when a directory is copied up, propagate its mode if using xattrs
permissions.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-11-01 21:35:03 +01:00
Giuseppe Scrivano
906513ccba
Merge pull request #409 from giuseppe/create-inodes-with-correct-mode
Create devices and dirs with correct mode with xattrs_permissions
2023-10-31 08:54:38 +01:00
Giuseppe Scrivano
f73fd2db7c
fuse-overlayfs: honor mode for dirs with xattr_permissions
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-10-30 18:10:19 +01:00
Giuseppe Scrivano
2d8613e7f5
fuse-overlayfs: honor mode for devices with xattr_permissions
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-10-30 18:07:11 +01:00
Daniel J Walsh
acfb6a27d1
Merge pull request #408 from giuseppe/honor-umask-xattr-permissions
fuse-overlayfs: honor umask with xattr_permissions
2023-10-30 10:26:32 -04:00
Giuseppe Scrivano
95e12f97f5
fuse-overlayfs: propagate force mode xattr
if the lower dir has a force mode xattr, use it for the upper layer
too.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-10-30 08:40:04 +01:00
Giuseppe Scrivano
40b431e243
fuse-overlayfs: honor umask with xattr_permissions
Closes: https://github.com/containers/fuse-overlayfs/issues/407

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-10-29 21:04:14 +01:00
Daniel J Walsh
e47790da06
Merge pull request #406 from AkihiroSuda/hub-to-gh
release.yaml: migrate from `hub` to `gh`
2023-10-09 16:04:13 -04:00
Akihiro Suda
542b005c67
release.yaml: migrate from hub to gh
`hub` was deprecated and removed from GitHub Actions runners

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-10-09 07:51:19 +09:00
Daniel J Walsh
9aba87b78f
Merge pull request #405 from giuseppe/add-clang-format
code: add clang-format
2023-10-02 15:41:20 -04:00
Giuseppe Scrivano
ba472b58bc
code: add clang-format
add a clang-format definition file and apply it to the code.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-10-02 15:12:42 +02:00
Giuseppe Scrivano
40e0f3c329
Merge pull request #403 from AkihiroSuda/repro
CI: release: enable reproducible builds
2023-09-14 12:11:52 +02:00
Akihiro Suda
5755b22bcb
CI: release: enable reproducible builds
The binaries are now bit-for-bit reproducible (<https://reproducible-builds.org/>):
```bash
docker buildx build \
   -o /tmp/fuse-overlayfs-builds \
   --build-arg SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct) \
   --platform=amd64,arm64,arm,s390x,ppc64le,riscv64 \
   -f Containerfile.cross .
```

This ensures that the binaries are not built from any unpublished source.

- Implementation is similar to <https://github.com/rootless-containers/slirp4netns/compare/v1.2.1...v1.2.2>
- `/etc/apt/sources.list` is modified to use <http://snapshot.ubuntu.com> using
  <https://github.com/reproducible-containers/repro-sources-list.sh>.
- As <http://snapshot.ubuntu.com> is slow, `/var/cache/apt` is cached on GHA using
  <https://github.com/reproducible-containers/buildkit-cache-dance>.
- For testing sake, `.github/workflows/release.yaml` is now executed for every push events.
  The release artifacts are published only on a push event with a `v*` tag.

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2023-09-14 05:48:00 +09:00
Giuseppe Scrivano
ff6b14d0a8
Merge pull request #402 from giuseppe/fix-perf-issue
main: fix performance issue with large dirs
2023-08-29 17:31:41 +02:00
Giuseppe Scrivano
6931a9c088
NEWS: tag 1.13
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v1.13
2023-08-29 16:07:22 +02:00
Giuseppe Scrivano
98206a6a90
main: fix performance issue with large dirs
cache the number of links for a directory instead of calculating it on
every stat.  It makes a huge difference when the directory has a lot
of entries.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-08-29 16:03:50 +02:00
Giuseppe Scrivano
6452d53e83
Merge pull request #398 from giuseppe/fix-check-for-proc
main: fix check for writeable /proc
2023-06-08 14:37:56 +02:00
Giuseppe Scrivano
06f8a69efa
main: fix check for writeable /proc
fix the check for writeable /proc to use statfs instead of statvfs,
and use the unitialized statvfs structure to check for the writeable
bit.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-06-07 21:30:02 +02:00
Giuseppe Scrivano
bcea6c940b
Merge pull request #395 from giuseppe/tag-1.12
NEWS: tag 1.12
2023-05-11 12:13:50 +02:00
Giuseppe Scrivano
2aee61e0ac
configure.ac: switch to -dev
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-05-11 11:05:00 +02:00
Giuseppe Scrivano
560ab7d9de
NEWS: tag 1.12
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v1.12
2023-05-11 11:05:00 +02:00
Daniel J Walsh
746960bdbe
Merge pull request #392 from giuseppe/change-license-gplv2+
fuse-overlays: change license to GPLv2+
2023-04-13 13:58:45 -04:00
Giuseppe Scrivano
d617afcefb
fuse-overlays: change license to GPLv2+
the contributors agreed on the change in the attached issue.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-04-11 18:25:46 +02:00
Giuseppe Scrivano
cc1b0e2d34
lib: update hash library
it was relicensed as LGPLv2+ upstream in gnulib.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-04-11 18:24:22 +02:00
Giuseppe Scrivano
db404d85d4
Revert "Revert "configure.ac: back to -dev""
This reverts commit d9f017b59140ca774bab5cea54159043b573a28c.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-24 19:48:11 +01:00
Giuseppe Scrivano
68c31d14b0
release: use local file
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v1.11
2023-03-24 19:48:05 +01:00
Giuseppe Scrivano
d9f017b591
Revert "configure.ac: back to -dev"
This reverts commit b6efecd3b0a42cd819fd6f6390937f7453b18035.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-24 19:48:04 +01:00
Daniel J Walsh
b622e9a955
Merge pull request #389 from giuseppe/check-for-acl-support
main: check that ACLs are supported in the lower layers
2023-03-24 08:37:56 -04:00
Giuseppe Scrivano
b6efecd3b0
configure.ac: back to -dev
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-23 23:02:31 +01:00
Giuseppe Scrivano
898252e14a
NEWS: release 1.11
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-23 23:02:31 +01:00
Giuseppe Scrivano
2666df2a49
main: check that ACLs are supported in the lower layers
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2180118

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2023-03-23 23:02:18 +01:00
Daniel J Walsh
25db5be78a
Merge pull request #381 from giuseppe/tag-1.10
NEWS: tag 1.10
2022-11-30 10:49:55 -05:00
Giuseppe Scrivano
b4a61def5f
configure.ac: back to dev
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-11-30 16:33:34 +01:00
Giuseppe Scrivano
a1e8466e2c
NEWS: tag 1.10
Closes: https://github.com/containers/fuse-overlayfs/issues/380

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
v1.10
2022-11-30 16:33:29 +01:00
Giuseppe Scrivano
34d47e9a74
main: pick node version that is loaded
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-11-30 16:29:43 +01:00
Giuseppe Scrivano
36b482bf52
main: invalidate inode after unlink
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-11-30 15:49:46 +01:00
Giuseppe Scrivano
0d8c5480d1
main: report the st_ino known so far
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-11-30 15:46:04 +01:00
Giuseppe Scrivano
5b156f97a8
Merge pull request #373 from ltalirz/upload-artifacts
upload builds from CI
2022-09-11 21:09:15 +02:00
Leopold Talirz
c9236a578f chore: upload test builds
Upload fuse-overlayfs as job artifacts.

Signed-off-by: Leopold Talirz <leopold.talirz@gmail.com>
2022-09-02 13:32:07 +02:00
Giuseppe Scrivano
1d4d97c55a
Merge pull request #369 from giuseppe/fix-copy-range-deleted-file
main: fix copy_file_range for deleted files
2022-08-25 22:55:02 +02:00
Giuseppe Scrivano
2d90664f24
main: fix copy_file_range for deleted files
if the file was deleted, access it through the hidden_dirfd.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-08-25 09:28:41 +02:00
Giuseppe Scrivano
43c2a067ee
Merge pull request #370 from giuseppe/inherit-acl
main: inherit ACLs for new files/dirs
2022-08-25 09:27:43 +02:00
Giuseppe Scrivano
9a69652588
Merge pull request #371 from giuseppe/warn-unused-args
main: print a warning if an argument is ignored
2022-08-25 09:27:37 +02:00
Giuseppe Scrivano
9245b63286
Merge pull request #372 from giuseppe/add-check-for-valid-proc-mount
main: add checks for valid /proc mount
2022-08-25 09:27:31 +02:00
Giuseppe Scrivano
0988e9bc39
main: add checks for valid /proc mount
since fuse-overlayfs needs a writeable /proc mount, add some checks to validate it.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-08-24 15:22:52 +02:00
Giuseppe Scrivano
952fa4dc28
main: print a warning if an argument is ignored
Closes: https://github.com/containers/fuse-overlayfs/issues/339

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-08-24 15:10:29 +02:00