spiegel_podman/pkg
Paul Holzinger 0007c98ddb
Fix race conditions in rootless cni setup
There was an race condition when calling `GetRootlessCNINetNs()`. It
created the rootless cni directory before it got locked. Therefore
another process could have called cleanup and removed this directory
before it was used resulting in errors. The lockfile got moved into the
XDG_RUNTIME_DIR directory to prevent a panic when the parent dir was
removed by cleanup.

Fixes #10930
Fixes #10922

To make this even more robust `GetRootlessCNINetNs()` will now return
locked. This guarantees that we can run `Do()` after `GetRootlessCNINetNs()`
before another process could have called `Cleanup()` in between.

[NO TESTS NEEDED] CI is flaking, hopefully this will fix it.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-07-15 14:33:56 +02:00
..
annotations Spelling 2020-12-22 13:34:31 -05:00
api Return macvlan object in /network REST API response 2021-07-14 12:24:03 -07:00
auth Enable whitespace linter 2021-02-11 23:01:56 +01:00
autoupdate auto-update: make output more user friendly 2021-07-14 16:23:51 +02:00
bindings Merge pull request #10916 from mheon/fix_7360 2021-07-14 13:39:58 -04:00
cgroups Fix panic condition in cgroups.getAvailableControllers 2021-06-15 09:22:37 +08:00
channel channel: simplify implementation 2021-05-06 11:51:15 +02:00
checkpoint Allow changing of port forward rules on restore 2021-06-04 13:29:02 +02:00
copy podman cp: support copying on tmpfs mounts 2021-03-04 15:43:12 +01:00
criu Add helper function to read out CRIU version 2018-10-23 12:52:03 +02:00
ctime Re-add int64 casts for ctime 2019-07-23 15:43:40 -04:00
domain Fix race conditions in rootless cni setup 2021-07-15 14:33:56 +02:00
env Ensure DefaultEnvVariables is used in Specgen 2020-08-18 15:17:46 -04:00
errorhandling create: support images with invalid platform 2021-06-23 15:42:13 +02:00
hooks bump go module to v3 2021-02-22 09:03:51 +01:00
inspect bump go module to v3 2021-02-22 09:03:51 +01:00
kubeutils prune remotecommand dependency 2021-02-25 10:02:41 -06:00
lookup Enable whitespace linter 2021-02-11 23:01:56 +01:00
machine Create podman temp dir on machine start 2021-07-02 12:41:51 -05:00
namespaces [NO TESTS NEEDED] Shrink the size of podman-remote 2021-03-29 09:49:45 -04:00
netns rootless cni without infra container 2021-04-01 17:27:03 +02:00
network Split libpod/network package 2021-03-15 14:01:52 +01:00
parallel bump go module to v3 2021-02-22 09:03:51 +01:00
ps reset: remove external containers on podman system reset 2021-06-30 09:04:08 +05:30
resolvconf bump go module to v3 2021-02-22 09:03:51 +01:00
rootless podman: ignore ESRCH from kill 2021-07-01 17:01:54 +02:00
rootlessport Enable whitespace linter 2021-02-11 23:01:56 +01:00
seccomp Spelling 2020-12-22 13:34:31 -05:00
selinux Fix SELinux functions names to not be repetitive 2020-04-23 15:57:34 -04:00
servicereaper podman service reaper 2021-07-02 19:00:36 +02:00
signal Fix build for mips architecture follow-up 2021-01-07 15:04:22 +01:00
specgen Handle advanced --network options in podman play kube 2021-06-30 13:32:27 -04:00
systemd Remove GetStore function from Libpod 2021-07-08 14:22:33 -04:00
terminal pkg/terminal: use c/storage/pkg/homedir 2021-03-08 09:21:13 +01:00
timetype make lint: enable gocritic 2020-01-13 14:27:02 +01:00
trust Enable whitespace linter 2021-02-11 23:01:56 +01:00
util migrate Podman to containers/common/libimage 2021-05-05 11:30:12 +02:00