diff --git a/containerd.spec b/containerd.spec index 038166dd9cc887a545401280eb29cd8a344c10b2..59097fac5d33d0dfbe13769deb197ae4e9d87fb6 100644 --- a/containerd.spec +++ b/containerd.spec @@ -2,7 +2,7 @@ %global debug_package %{nil} Version: 1.2.0 Name: containerd -Release: 311 +Release: 312 Summary: An industry-standard container runtime License: ASL 2.0 URL: https://containerd.io @@ -63,6 +63,12 @@ install -p -m 755 bin/ctr $RPM_BUILD_ROOT/%{_bindir}/ctr %{_bindir}/ctr %changelog +* Sat Aug 26 2023 chenjiankun - 1.2.0-312 +- Type:bugfix +- CVE:NA +- SUG:NA +- DESC:remove socket file when get file fd failed + * Fri Jun 16 2023 zhongjiawei - 1.2.0-311 - Type:bugfix - ID:NA diff --git a/git-commit b/git-commit index aebef5efad78e83ff18d71e146a7e77c54643467..9e404c59fdeea6a8cf235bfb9044108518744a64 100644 --- a/git-commit +++ b/git-commit @@ -1 +1 @@ -53b2e0a72ac0991f4a07954b90e2f7fd1259ab7f +62513b7d391fc344a71697526b9c11e51b860841 diff --git a/patch/0098-containerd-remove-socket-file-when-get-file-fd-failed.patch b/patch/0098-containerd-remove-socket-file-when-get-file-fd-failed.patch new file mode 100644 index 0000000000000000000000000000000000000000..216c1989758ec54c25cf1e301f55631efb56fa57 --- /dev/null +++ b/patch/0098-containerd-remove-socket-file-when-get-file-fd-failed.patch @@ -0,0 +1,27 @@ +From 5c23af4ebbb9161f776833694270d5c08bd4b8df Mon Sep 17 00:00:00 2001 +From: chenjiankun +Date: Thu, 27 Jul 2023 15:31:32 +0800 +Subject: [PATCH] docker: remove socket file when get file fd failed + +if socket.File() return error, then the socket file will be left over. +--- + runtime/v1/shim/client/client.go | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/runtime/v1/shim/client/client.go b/runtime/v1/shim/client/client.go +index c5a9bba..4c134c2 100644 +--- a/runtime/v1/shim/client/client.go ++++ b/runtime/v1/shim/client/client.go +@@ -71,6 +71,9 @@ func WithStart(binary, address, daemonAddress, cgroup string, debug bool, exitHa + + f, err := socket.File() + if err != nil { ++ if err1 := RemoveSocket(address); err1 != nil { ++ logrus.Warningf("failed to remove socket %s: %w", address, err1) ++ } + return nil, nil, errors.Wrapf(err, "failed to get fd for socket %s", address) + } + defer f.Close() +-- +2.33.0 + diff --git a/series.conf b/series.conf index 5756c8f60ef18bb5fa2d5356f76ffa909b536599..1272d725763e7f5865727a0f8a3ca54f4f72f452 100644 --- a/series.conf +++ b/series.conf @@ -103,4 +103,5 @@ patch/0001-containerd-add-blot-symbol-to-support-loong64.patch patch/0095-oci-fix-additional-GIDs.patch patch/0096-importer-stream-oci-layout-and-manifest.json.patch patch/0097-containerd-fix-journald-stop-container-shim-log-stuc.patch +patch/0098-containerd-remove-socket-file-when-get-file-fd-failed.patch # end