Commit Graph
3731 Commits
Author SHA1 Message Date
Sebastiaan van Stijn 6058ba2264 pkg/authorization: use t.Context
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-09-18 18:28:43 +02:00
Sebastiaan van Stijn 9d984a6df2 pkg/ioutils: use t.Context
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-09-18 18:28:43 +02:00
Sebastiaan van Stijn 0669907661 pkg/tailfile: use t.TempDir, t.Cleanup, t.Context
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-09-18 18:28:43 +02:00
Sebastiaan van Stijn 149873ff1d pkg/tailfile: use native Go fuzzing for FuzzTailFile
The fuzz target only requires []byte and uint64 inputs, so
go-fuzz-headers is unnecessary. Use native fuzz parameters instead.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-07-10 21:25:41 +02:00
Sebastiaan van Stijn 49710e3c4b pkg/plugins: fix perfsprint linting
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-07-06 15:36:16 +02:00
Sebastiaan van Stijn c735877246 pkg/sysinfo: add detection for time-namespaces support
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-04-27 14:31:31 +02:00
Sebastiaan van Stijn f3b931bfb2 pkg/sysinfo: TestNew: fix copy/paste mistake
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-04-21 11:11:39 +02:00
Sahana Narasipura Vasudevarao 07a5e924ce Fix typos and misspellings in comments, tests, and docs
Signed-off-by: Sahana Narasipura Vasudevarao <nvsahanarao@gmail.com>
2026-04-02 14:20:22 -07:00
Paweł Gronowski 403d6dc37c Merge pull request #52231 from thaJeztah/gofix
go fix (GOOS=linux and windows)
2026-03-26 16:34:04 +01:00
Sebastiaan van Stijn 5cf47c0d15 pkg/plugins/pluginrpc-gen: go fix, and tidy up
go fix rewrote this with a string writer and more; let's
just slightly simplify it.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-03-25 23:05:52 +01:00
Paweł Gronowski ec76e94183 pkg/authz: Increase body limit to 4 MiB
Some endpoint could potentially use a body request than 1 MiB without
malicious intent.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2026-03-25 12:01:11 +01:00
Paweł Gronowski 7a767b27fd pkg/authz: Reject requests exceeding body size limit
Previously, the authorization system would silently skip body inspection when
request bodies exceeded the maximum size limit (1MiB).

The authorization plugins would receive an empty body for inspection
while the actual large payload would still be processed by the Docker
daemon, allowing malicious requests to circumvent plugin-based security
controls.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2026-03-25 12:01:11 +01:00
Sebastiaan van Stijn 695f158716 pkg/homedir: fix broken links to basedir specs
Also touch up docs, and add doc-links.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-01-22 13:45:55 +01:00
Paweł Gronowski 6c5233e109 modernize: Use strings.CutSuffix
Added in Go 1.20

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:34 +01:00
Paweł Gronowski 71fd582aa2 modernize: Use strings.Builder instead of string concatenation
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:34 +01:00
Paweł Gronowski 62ed24a87c modernize: Use slices.Contains
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:34 +01:00
Paweł Gronowski 3df05205f4 modernize: Use range int
Added in Go 1.22

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:34 +01:00
Paweł Gronowski e548a31d28 modernize: Use min built-in
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:34 +01:00
Paweł Gronowski a25907b485 modernize: Prefer strings.SplitSeq instead of Split
Avoids extra allocations. Added in Go 1.24.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:33 +01:00
Paweł Gronowski c9b0a21bb1 modernize: Use b.Loop (introduced in Go 1.24)
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-15 18:56:33 +01:00
Rob Murray 282868dabf NRI: instantiate and start/stop NRI adaptation
Signed-off-by: Rob Murray <rob.murray@docker.com>
2025-12-08 16:11:59 +00:00
Paweł Gronowski 433023a03d Move namesgenerator to internal
It's frozen and only kept for historical/legacy purposes.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-10-30 19:41:58 +01:00
Austin Vazquez a7edbe8e5f api: remove support for KernelMemoryTCP
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-09-30 10:13:51 +02:00
Austin Vazquez fb2f8115c8 api: deprecate KernelMemoryTCP support
Starting with kernel v6.12, kernel memory TCP accounting is deprecated for cgroups v1.
Note: kernel memory TCP accounting is not supported by cgroups v2.

See https://github.com/torvalds/linux/commit/d046ff46ee3b920ac617564226d2a0494d9af772

Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-09-30 10:13:30 +02:00
Sebastiaan van Stijn c5991341eb remove support for deprecated kernel memory limit
kernel-memory limits are not supported in cgroups v2, and were obsoleted in
[kernel v5.4], producing a `ENOTSUP` in kernel v5.16. Support for this option
was removed in runc and other runtimes, as various LTS kernels contained a
broken implementation, resulting in unpredictable behavior.

We deprecated this option in [moby@b8ca7de], producing a warning when used,
and actively ignore the option since [moby@0798f5f].

Given that setting this option had no effect in most situations, we should
just remove this option instead of continuing to handle it with the expectation
that a runtime may still support it.

Note that we still support RHEL 8 (kernel 4.18) and RHEL 9 (kernel 5.14). We
no longer build packages for Ubuntu 20.04 (kernel 5.4) and Debian Bullseye 11
(kernel 5.10), which still have an LTS / ESM programme, but for those it would
only impact situations where a runtime is used that still supports it, and
an old API version was used.

[kernel v5.4]: https://github.com/torvalds/linux/commit/0158115f702b0ba208ab0
[moby@b8ca7de]: https://github.com/moby/moby/commit/b8ca7de823acf572cad9becb74fd5cdac1748057
[moby@0798f5f]: https://github.com/moby/moby/commit/0798f5f5cf6908593472b21179360168cd9f4691

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-09-16 13:08:36 +02:00
Matthieu MOREL 96f8c6395e chore: enable use-any rule from revive
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-08-08 17:07:07 +02:00
Sebastiaan van Stijn 78ccee32b3 update various "doc" links in code
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-08-05 20:49:57 +02:00
Sebastiaan van Stijn c98e5cb60b update github links to moby/moby
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-08-01 01:48:55 +02:00
Derek McGowan f74e5d48b3 Create github.com/moby/moby/v2 module
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-07-31 10:13:29 -07:00
Derek McGowan 0d8ca8eefe Move pkg/jsonmessage to client/pkg/jsonmessage
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 14:22:31 +02:00
Derek McGowan d00ecdc479 Move pkg/streamformatter to api/pkg/streamformatter
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 14:22:31 +02:00
Derek McGowan 66862e14d1 Move pkg/progress to api/pkg/progress
Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 14:22:31 +02:00
Derek McGowan ebef4a44fd Split streamformatter from jsonmessage
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-07-30 14:22:30 +02:00
Sebastiaan van Stijn 5a144c40e2 pkg/streamformatter: reduce jsonmessage.JSONMessage dependency
This package depends on jsonformatter.JSONProgress and jsonmessage.JSONMessage,
and it looks like it requires some of those for their stringer interface.

Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 14:22:30 +02:00
Sebastiaan van Stijn f4127d76c5 pkg/jsonmessage: move JSONProgress to api/types/jsonstream
Move the type to the API, but embed it, so that we keep the
methods on the struct in this package.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 14:22:30 +02:00
Sebastiaan van Stijn 0515e1c991 pkg/jsonmessage: move JSONError to api/types/jsonstream
Also rename api type JSONError to Error

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Derek McGowan <derek@mcg.dev>
2025-07-30 14:22:27 +02:00
Sebastiaan van Stijn 9a52e474a3 pkg/jsonmessage: suppress unhandled errors
Keep the linters happy.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 12:48:02 +02:00
Sebastiaan van Stijn e257027903 pkg/jsonmessage: remove github.com/morikuni/aec dependency
We can probably use [aec.EmptyBuilder] for managing the output, but
currently we're doing it all manually, so defining some consts for
the basics we use.

[aec.EmptyBuilder]: https://pkg.go.dev/github.com/morikuni/aec#EmptyBuilder

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-30 12:34:45 +02:00
Sebastiaan van Stijn 1be59a838d Merge pull request #50558 from thaJeztah/cleanup_fileutils
remove pkg/fileutils, and move its functionality where used
2025-07-29 13:49:52 +02:00
Sebastiaan van Stijn 5535e81a79 pkg/system: move to daemon/internal
It has no external users, and this package still has too many different
responsibilities, some of which may be available elsewhere, so moving it
internal so that we can decide to dismantle it further.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:48:57 +02:00
Sebastiaan van Stijn d94171bfaa pkg/system: make XattrError linux-only
It's only produced in Linux code, so put it in a Linux-only file.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:23 +02:00
Sebastiaan van Stijn aa9de914ca pkg/system: remove unused ErrNotSupportedPlatform
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:23 +02:00
Sebastiaan van Stijn 28b822d5b3 pkg/system: remove Lgetxattr, Lsetxattr stubs for non-Linux
It's only used in Linux code. Remove the stubs, which are not carried
forward into the module.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:23 +02:00
Sebastiaan van Stijn 450ac30e4a pkg/system: LUtimesNano: remove stub for non-Linux
It's not used, and is not carried in the new module.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:23 +02:00
Sebastiaan van Stijn 03f44e6d14 pkg/system: MkdirAllWithACL: remove stubs and unused os.FileMode arg
Remove the stub implementation for non-Windows platforms, and remove the
os.FileMode argument, which is ignored on Windows.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:23 +02:00
Sebastiaan van Stijn 6f9e099fd3 pkg/system: remove deprecated IsAbs
It was deprecated in f8a2550a22, but won't
be carried to the new modules.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:22 +02:00
Sebastiaan van Stijn 53a3085256 pkg/system: remove deprecated EscapeArgs
It was deprecated in 63bada41e5, but won't
be carried to the new modules.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:36:20 +02:00
Sebastiaan van Stijn 1313b8caff pkg/fileutils: move ReadSymlinkedDirectory to daemon
It has no external consumers, is written with specific behavior, making
it not a good candidate to carry in the module.

This moves it to the daemon as a non-exported `resolveSymlinkedDirectory`
utility, so that it's only accessible where it's currently used.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:17:32 +02:00
Sebastiaan van Stijn ae0a3d6918 pkg/fileutils: move ReadSymlinkedDirectory internal to daemon
It has no external consumers, is written with specific behavior (including
some potentially surprising behavior), making it not a good candidate to
carry in the module.

This moves it internal to the daemon as a non-exported utility, so that
it's only accessible where it's currently used.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 11:16:25 +02:00
Sebastiaan van Stijn bae46854c5 pkg/fileutils: remove unused CopyFile utility
It's not used, and has no external consumers; we don't have to carry it
in the new module.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-29 10:47:35 +02:00