Commit graph

43525 commits

Author SHA1 Message Date
Sören Tempel
85eaf23bf4 seccomp: add support for "swapcontext" syscall in default policy
This system call is only available on the 32- and 64-bit PowerPC, it is
used by modern programming language implementations (such as gcc-go) to
implement coroutine features through userspace context switches.

Other container environment, such as Systemd nspawn already whitelist
this system call in their seccomp profile [1] [2]. As such, it would be
nice to also whitelist it in moby.

This issue was encountered on Alpine Linux GitLab CI system, which uses
moby, when attempting to execute gcc-go compiled software on ppc64le.

[1]: https://github.com/systemd/systemd/pull/9487
[2]: https://github.com/systemd/systemd/issues/9485

Signed-off-by: Sören Tempel <soeren+git@soeren-tempel.net>
2021-12-18 14:06:07 +01:00
Sebastiaan van Stijn
088afc99e4
Merge pull request #43087 from tonistiigi/fix-darwin-build-system
system: unbreak build for darwin
2021-12-16 20:06:57 +01:00
Tonis Tiigi
26dafe43a4 system: unbreak build for darwin
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2021-12-15 22:15:07 -08:00
Brian Goff
07cf48ab63
Merge pull request #43078 from thaJeztah/bump_go_1.17.5
Update Go to 1.17.5
2021-12-15 15:48:38 -08:00
Kazuyoshi Kato
f2e458ebc5 daemon/logger: test followLogs' handleDecodeErr case
Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-12-15 15:13:02 -08:00
Kazuyoshi Kato
48d387a757 daemon/logger: read the length header correctly
Before this change, if Decode() couldn't read a log record fully,
the subsequent invocation of Decode() would read the record's non-header part
as a header and cause a huge heap allocation.

This change prevents such a case by having the intermediate buffer in
the decoder struct.

Fixes #42125.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-12-15 15:13:02 -08:00
Sebastiaan van Stijn
d620cb6afc
Update Go to 1.17.5
go1.17.5 (released 2021-12-09) includes security fixes to the syscall and net/http
packages. See the Go 1.17.5 milestone on the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.5+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-12-12 01:13:39 +01:00
Tianon Gravi
8955d8da89
Merge pull request #42981 from frobnicaty/patch-1
Fix grammar for "does not exist"
2021-12-09 13:36:53 -08:00
Brian Goff
d456264580
Merge pull request #43062 from AkihiroSuda/runc-1.0.3
Bump up runc v1.0.3
2021-12-08 10:09:46 -08:00
Tianon Gravi
87521affb0
Merge pull request #43064 from thaJeztah/bump_go_1.17.4
Update Go to 1.17.4
2021-12-07 17:17:58 -08:00
Sebastiaan van Stijn
6bb3891c60
Update Go to 1.17.4
go1.17.4 (released 2021-12-02) includes fixes to the compiler, linker, runtime,
and the go/types, net/http, and time packages. See the Go 1.17.4 milestone on
the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.4+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-12-06 10:13:39 +01:00
Mathieu PATUREL
7c17ad8735 docker-rootless-setuptools.sh: use context after install
Signed-off-by: Mathieu PATUREL <mathieu.paturel@gmail.com>
2021-12-06 17:28:34 +11:00
Akihiro Suda
934f955e3d
vendor: github.com/opencontainers/runc v1.0.3
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-12-06 15:11:57 +09:00
Akihiro Suda
53397ac539
update runc binary to v1.0.3
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2021-12-06 15:10:27 +09:00
frobnicaty
d78b883576 Fix grammar for "does not exist"
as opposed to "does not exists"

Signed-off-by: frobnicaty <92033765+frobnicaty@users.noreply.github.com>
2021-12-03 15:50:13 +00:00
Sebastiaan van Stijn
dd9782fe94
go.mod: golang.org/x/crypto 5770296d904e90f15f38f77dfc2e43fdf5efc083
full diff: 0c34fe9e7d...5770296d90

includes a fix in golang.org/x/crypto/ssh for CVE-2021-43565

- golang/go#49932
- 5770296d90

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-12-03 09:19:28 +01:00
Sebastiaan van Stijn
f6848ae321
Merge pull request #42979 from akerouanton/bump-fluent-logger
vendor: github.com/fluent/fluent-logger-golang v1.8.0
2021-12-02 20:51:04 +01:00
Tianon Gravi
0f92cf2044
Merge pull request #43036 from thaJeztah/bump_hcsshim
vendor: github.com/Microsoft/hcsshim v0.8.23
2021-12-02 11:49:03 -08:00
Sebastiaan van Stijn
787b8fe14f
Merge pull request #42838 from sanjams2/42731-development
Add an option to specify log format for awslogs driver
2021-12-02 20:48:06 +01:00
Brian Goff
b46ab1f579
Merge pull request #43035 from thaJeztah/bump_ttrpc
vendor: github.com/containerd/ttrpc v1.1.0
2021-12-02 11:34:11 -08:00
Tianon Gravi
cf811b1122
Merge pull request #42574 from charlesxsh/fix-deadlock-1
fix potential goroutine leak by making channel non-blocking
2021-12-01 17:35:30 -08:00
Albin Kerouanton
bd61629b6b
fluentd: Turn ForceStopAsyncSend true when async connect is used
The flag ForceStopAsyncSend was added to fluent logger lib in v1.5.0 (at
this time named AsyncStop) to tell fluentd to abort sending logs
asynchronously as soon as possible, when its Close() method is called.
However this flag was broken because of the way the lib was handling it
(basically, the lib could be stucked in retry-connect loop without
checking this flag).

Since fluent logger lib v1.7.0, calling Close() (when ForceStopAsyncSend
is true) will really stop all ongoing send/connect procedure,
wherever it's stucked.

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
2021-12-02 01:15:28 +01:00
Albin Kerouanton
e24d61b7ef
vendor: github.com/fluent/fluent-logger-golang v1.8.0
Updates the fluent logger library to v1.8.0. Following PRs/commits were
merged since last bump:

* [Add callback for error handling when using
  async](https://github.com/fluent/fluent-logger-golang/pull/97)
* [Fix panic when accessing unexported struct
  field](https://github.com/fluent/fluent-logger-golang/pull/99)
* [Properly stop logger during (re)connect
  failure](https://github.com/fluent/fluent-logger-golang/pull/82)
* [Support a TLS-enabled connection](e5d6aa13b7)

See https://github.com/fluent/fluent-logger-golang/compare/v1.6.1..v1.8.0

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
2021-12-02 01:11:33 +01:00
Sebastiaan van Stijn
17b9e4ec92
Merge pull request #43047 from aaronlehmann/pattern-matcher-parent-results-fix
Fix missing parent info case in MatchesUsingParentResults
2021-12-01 21:15:19 +01:00
Sebastiaan van Stijn
9d9b8e0cf3
daemon.WithDevices(): use containerd's HostDevices()
Trying to reduce the use of libcontainer/devices, as it's considered
to be an "internal" package by runc.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-12-01 15:42:18 +01:00
Aaron Lehmann
55da5245de Fix missing parent info case in MatchesUsingParentResults
Unfortunately, this check was missing in the original version. It could
cause a positive match to be overwritten by checking parent dirs.

Signed-off-by: Aaron Lehmann <alehmann@netflix.com>
2021-11-26 10:22:19 -08:00
Sebastiaan van Stijn
93d560d5b3
Merge pull request #43037 from aaronlehmann/pattern-matcher-parent-results
pkg/fileutils: Track incremental pattern match results against each pattern
2021-11-24 18:38:51 +01:00
Aaron Lehmann
0f1b68df16 Adjust deprecation comments
Signed-off-by: Aaron Lehmann <alehmann@netflix.com>
2021-11-24 07:53:10 -08:00
Samuel Karp
d44ccafefa
Merge pull request #43045 from samuelkarp/distribution-validate-blob-type 2021-11-23 18:54:11 -08:00
Samuel Karp
7c216bcabe
distribution: validate blob type
Signed-off-by: Samuel Karp <skarp@amazon.com>
2021-11-23 17:19:01 -08:00
Sebastiaan van Stijn
00d8a3bb51
Merge pull request #43042 from jelipo/fix_image_spec
fix image spec JSON example
2021-11-23 11:00:11 +01:00
haining.cao
715e78631d fix image spec JSON example
Signed-off-by: haining.cao <haining.cao@daocloud.io>
2021-11-22 23:37:23 +08:00
Aaron Lehmann
4555d3aa54 pkg/fileutils: Track incremental pattern match results against each pattern
The existing code does not correctly handle the case where a file
matches one of the patterns, but should not match overall because of an
exclude pattern that applied to a parent directory (see
https://github.com/docker/buildx/issues/850).

Fix this by independently tracking the results of matching against each
pattern. A file should be considered to match any pattern that matched a
parent dir.

Signed-off-by: Aaron Lehmann <alehmann@netflix.com>
2021-11-19 15:58:13 -08:00
Sebastiaan van Stijn
a715bfb857
vendor: github.com/Microsoft/hcsshim v0.8.23
full diff: https://github.com/Microsoft/hcsshim/compare/v0.8.22...v0.8.23

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-19 13:50:13 +01:00
Sebastiaan van Stijn
cbb4aed0b4
vendor: github.com/containerd/ttrpc v1.1.0
full diff: https://github.com/containerd/ttrpc/compare/v1.0.2...v1.1.0

- client: Handle sending/receiving in separate goroutines
- Return Unimplemented when services or methods are not implemented
- go.mod: sirupsen/logrus v1.7.0
- go.mod: update dependencies
  - go.mod: github.com/gogo/protobuf v1.3.2
  - go.mod: google.golang.org/grpc v1.27.1
  - go.mod: google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63
  - go.mod: github.com/prometheus/procfs v0.6.0
- replace pkg/errors
- Rename branch from master to main
- Use GitHub Actions for CI
- Make "go test" and "go build" work on macOS
- Add protoc-gen-go-ttrpc

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-19 13:48:43 +01:00
Sebastiaan van Stijn
ea0f3dc8f4
Merge pull request #43031 from thaJeztah/fix_TestConntrackFlowsLeak_v1
TestConntrackFlowsLeak: use busybox "nc"
2021-11-19 13:39:01 +01:00
Sebastiaan van Stijn
f06314fa84
Merge pull request #42980 from thaJeztah/bump_sys
vendor: github.com/moby/sys/mount v0.3.0, mountinfo v0.5.0, signal v0.6.0, symlink v0.2.0
2021-11-19 13:23:51 +01:00
Sebastiaan van Stijn
ce25968008
vendor: github.com/moby/sys/mount v0.3.0, mountinfo v0.5.0, signal v0.6.0, symlink v0.2.0
full diff: https://github.com/moby/sys/compare/signal/v0.5.0...signal/v0.6.0

Modules:

- github.com/moby/sys/mount v0.3.0
- github.com/moby/sys/mountinfo v0.5.0
- github.com/moby/sys/signal v0.6.0
- github.com/moby/sys/symlink v0.2.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-19 09:56:37 +01:00
Sebastiaan van Stijn
875969251b
vendor: golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359
full diff: 63515b42dc...69cdffdb93

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-19 09:53:57 +01:00
Sebastiaan van Stijn
6d92d2c7c4
TestConntrackFlowsLeak: use busybox "nc"
The appropriate/nc image was last built over 6 years ago, and uses the
deprecated v2 schema 1 format.
https://github.com/appropriate/docker-nc/tree/master/latest

The image is just a plain "apk install" of netbsd-netcat, but was added
in 1c4286bcff, because at the time the
busybox nc had some bugs.

These appear to be resolved, so we can use the busybox nc, from the
frozen images.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-19 09:27:12 +01:00
Sebastiaan van Stijn
4fafb27799
Merge pull request #43017 from akerouanton/fix-42468
Fix flaky TestPortMappingV6Config
2021-11-19 09:20:14 +01:00
Tianon Gravi
7ae9ca749b
Merge pull request #43032 from thaJeztah/windows_containerd_1.5.8
Dockerfile.windows: update containerd binary to v1.5.8
2021-11-18 16:55:01 -08:00
Sebastiaan van Stijn
c0f93c746e
Merge pull request #43029 from thaJeztah/remove_v1_push_tests
integration-cli: remove manifest v2 schema 1 push tests
2021-11-18 21:52:21 +01:00
Sebastiaan van Stijn
c3537ec24c
Dockerfile.windows: update containerd binary to v1.5.8
This was accidentally forgotten in aef782f348

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-18 21:48:30 +01:00
Brian Goff
78fd4d3f2f
Merge pull request #42993 from thaJeztah/bump_hcsshim
vendor: github.com/Microsoft/hcsshim v0.8.22
2021-11-18 11:31:25 -08:00
Sebastiaan van Stijn
238180d292
integration-cli: remove manifest v2 schema 1 push tests
Pushing manifest v2, schema 1 images has been deprecated in commit
6302dbbf46 (docker 20.10). It's still used in
some tests to provision a legacy registry to test _pulling_ legacy images
(which is still "supported"), but we should no longer have to validate pushing
for other scenarios.

This patch removes the schema 1 push tests, and inlines the code that was
extracted in non-exported functions (for them to be shared between schema 2 and
schema 1 tests).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-18 12:26:13 +01:00
Sebastiaan van Stijn
a17f288e65
Merge pull request #43026 from thaJeztah/update_image_spec
vendor: github.com/opencontainers/image-spec v1.0.2
2021-11-18 01:09:55 +01:00
Sebastiaan van Stijn
cef0a7c14e
vendor: github.com/opencontainers/image-spec v1.0.2
- Bring mediaType out of reserved status
- specs-go: adding mediaType to the index and manifest structures

full diff: https://github.com/opencontainers/image-spec/compare/v1.0.1...v1.0.2

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-18 00:00:05 +01:00
Sebastiaan van Stijn
40e6c2ad34
Merge pull request #43025 from thaJeztah/containerd_1.5.8
Update containerd binary and vendor to v1.5.8
2021-11-17 23:50:13 +01:00
Sebastiaan van Stijn
458b4aae19
vendor: github.com/containerd/containerd v1.5.8
contains a mitigation for CVE-2021-41190 as well as several fixes and updates.

full diff: https://github.com/containerd/containerd/compare/v1.5.7...v1.5.8

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-17 21:40:04 +01:00