moby/daemon
Brian Goff d9e39914a7
Fix npe in exec resize when exec errored
In cases where an exec start failed the exec process will be nil even
though the channel to signal that the exec started was closed.

Ideally ExecConfig would get a nice refactor to handle this case better
(ie. it's not started so don't close that channel).
This is a minimal fix to prevent NPE. Luckilly this would only get
called by a client and only the http request goroutine gets the panic
(http lib recovers the panic).

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit 487ea81316)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-05-28 19:06:35 +02:00
..
cluster daemon/cluster: inline filters 2023-04-25 15:17:44 +02:00
config daemon: deprecate --oom-score-adjust for the daemon 2023-04-13 00:02:39 +02:00
containerd c8d/inspect: Fill Created time if available 2023-05-25 21:28:22 +02:00
events daemon/events: use strings.Cut() 2022-12-21 11:09:01 +01:00
graphdriver [chore] clean up reexec.Init() calls 2023-05-11 16:31:41 +02:00
images fix: docker pull with platform checks wrong image tag 2023-05-18 13:40:07 +01:00
initlayer pkg/containerfs: drop ContainerFS type alias 2022-09-23 16:56:53 -04:00
links daemon/links: use strings.Cut() 2022-12-21 11:09:01 +01:00
listeners Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
logger fix some comments 2023-04-25 13:39:28 +08:00
names Add canonical import comment 2018-02-05 16:51:57 -05:00
network daemon: inline filters in tests 2023-04-25 15:13:26 +02:00
stats migrate pkg/pubsub to github.com/moby/pubsub 2022-09-30 18:40:19 +02:00
testdata Remove libtrust dep from api 2017-09-06 12:05:19 -04:00
apparmor_default.go Revert "apparmor: Check if apparmor_parser is available" 2023-02-16 08:26:25 -07:00
apparmor_default_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
archive.go daemon: refactor isOnlineFSOperationPermitted 2022-10-26 12:06:31 -04:00
archive_tarcopyoptions.go Finish refactor of UID/GID usage to a new struct 2022-03-14 16:28:57 -04:00
archive_tarcopyoptions_unix.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
archive_tarcopyoptions_windows.go Add canonical import comment 2018-02-05 16:51:57 -05:00
archive_unix.go daemon: archive in a dedicated mount namespace 2022-10-27 12:52:14 -04:00
archive_windows.go pkg/system: move CheckSystemDriveAndRemoveDriveLetter to pkg/archive 2022-11-29 17:07:48 +01:00
attach.go Make it explicit raw|multiplexed stream implementation being used 2022-05-12 11:36:31 +02:00
auth.go daemon: use types/registry.AuthConfig 2022-07-29 23:05:18 +02:00
changes.go c8d: add support for docker diff 2023-03-30 10:29:07 +01:00
checkpoint.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
cluster.go Fix libnetwork imports 2021-06-01 21:51:23 +00:00
commit.go daemon: Daemon.CreateImageFromContainer(): remove intermediate vars 2023-04-29 02:59:54 +02:00
configs.go Merge configs/secrets in unix implementation 2018-02-16 11:25:14 -05:00
configs_linux.go Add canonical import comment 2018-02-05 16:51:57 -05:00
configs_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
configs_windows.go Add canonical import comment 2018-02-05 16:51:57 -05:00
container.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
container_linux.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
container_operations.go libnetwork: return concrete-typed *Endpoint 2023-01-13 14:19:06 -05:00
container_operations_unix.go move pkg/system: process to a separate package 2022-11-04 01:50:23 +01:00
container_operations_windows.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_unix_test.go daemon: allow shimv2 runtimes to be configured 2023-02-17 18:08:06 -05:00
container_windows.go daemon: fix capitalization of some functions 2020-04-14 17:22:19 +02:00
containerfs_linux.go daemon: archive in a dedicated mount namespace 2022-10-27 12:52:14 -04:00
content.go update to golang 1.19 2022-09-07 15:27:16 +02:00
create.go Resolve and store manifest when creating container 2023-03-06 15:13:36 +01:00
create_test.go bump gotest.tools v3.0.1 for compatibility with Go 1.14 2020-02-11 00:06:42 +01:00
create_unix.go Fix pruning anon volume created from image config 2023-03-14 11:06:26 +01:00
create_windows.go Fix pruning anon volume created from image config 2023-03-14 11:06:26 +01:00
daemon.go daemon: lock in snapshotter setting at daemon init 2023-05-25 12:47:59 +02:00
daemon_linux.go remove deprecated legacy "overlay" storage-driver 2023-04-19 17:06:45 +02:00
daemon_linux_test.go daemon: remove deprecated AuFS storage driver 2023-04-15 01:27:16 +02:00
daemon_test.go Use hashicorp/go-memdb instead of truncindex 2022-05-20 18:22:21 +02:00
daemon_unix.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
daemon_unix_test.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
daemon_unsupported.go daemon: NewDaemon(): check system requirements early 2022-10-17 15:15:55 +02:00
daemon_windows.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
daemon_windows_test.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
debugtrap_unix.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
debugtrap_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
debugtrap_windows.go pkg/signal: move signal.DumpStacks() to a separate package 2021-07-15 18:09:43 +02:00
delete.go Implement run using the containerd snapshotter 2023-02-06 18:21:50 +01:00
delete_test.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
dependency.go Bump swarmkit to v2 2022-04-21 17:33:07 -04:00
devices_linux.go Add DeviceRequests to HostConfig to support NVIDIA GPUs 2019-03-18 17:19:45 +00:00
disk_usage.go daemon/disk_usage: Use context aware singleflight 2022-11-29 16:46:19 +01:00
errors.go Merge pull request #44003 from vvoland/invalidfilter 2023-02-22 16:24:47 +00:00
events.go daemon: LogDaemonEventWithAttributes: don't call SystemInfo() 2022-06-07 22:01:12 +02:00
events_test.go daemon: rename variables that collide with imported package names 2020-04-14 17:22:23 +02:00
exec.go daemon: translateContainerdStartErr(): rename to setExitCodeFromError() 2022-12-28 09:27:42 +01:00
exec_linux.go c8d: Set the process user on exec 2023-04-07 10:53:25 +02:00
exec_linux_test.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
exec_windows.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
export.go remove GetLayerByID from ImageService interface 2023-03-10 17:54:55 +01:00
health.go Merge pull request #43997 from thaJeztah/healthcheck_capture_logs 2022-09-02 10:48:22 +02:00
health_test.go daemon: suppress logs in unit tests 2019-10-18 00:57:56 +02:00
id.go daemon: remove migrateTrustKeyID() 2022-11-28 20:28:55 +01:00
image_service.go c8d: implement classic builder 2023-05-11 19:13:13 +01:00
info.go Merge pull request #45298 from thaJeztah/pkg_pkatform_cleanup 2023-04-27 02:02:41 +02:00
info_unix.go Merge pull request #45320 from akerouanton/info-no-new-privileges 2023-04-18 14:37:15 +02:00
info_unix_test.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
info_windows.go Add no-new-privileges to SecurityOptions returned by /info 2023-04-18 09:34:08 +02:00
inspect.go c8d: Compute container's layer size 2023-03-08 00:58:02 +01:00
inspect_linux.go c8d: Compute container's layer size 2023-03-08 00:58:02 +01:00
inspect_test.go daemon: skip TestGetInspectData when using containerd snapshotters 2023-04-18 15:02:41 +02:00
inspect_windows.go c8d: Compute container's layer size 2023-03-08 00:58:02 +01:00
keys.go daemon: use strconv instead of fmt.Sprintf() 2022-10-08 17:41:39 +02:00
keys_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
kill.go fix some comments 2023-04-25 13:39:28 +08:00
licensing.go Expose license status in Info (#37612) 2018-08-17 17:05:21 -07:00
licensing_test.go bump gotest.tools v3.0.1 for compatibility with Go 1.14 2020-02-11 00:06:42 +01:00
links.go Add canonical import comment 2018-02-05 16:51:57 -05:00
list.go images/Children: Return error 2023-04-13 16:20:02 +02:00
list_test.go daemon: inline filters in tests 2023-04-25 15:13:26 +02:00
list_unix.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
list_windows.go pkg/containerfs: alias ContainerFS to string 2022-09-23 16:56:52 -04:00
logdrivers_linux.go Support configuration of log cacher. 2020-02-19 17:02:34 -05:00
logdrivers_windows.go Support configuration of log cacher. 2020-02-19 17:02:34 -05:00
logs.go fix some comments 2023-04-25 13:39:28 +08:00
logs_test.go Add canonical import comment 2018-02-05 16:51:57 -05:00
metrics.go health: Start probe timeout after exec starts 2022-04-28 17:21:03 -04:00
metrics_unix.go set ReadHeaderTimeout to address G112: Potential Slowloris Attack (gosec) 2022-09-22 12:13:28 +02:00
metrics_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
monitor.go daemon: handleContainerExit(): add execDuration in attributes 2023-05-08 13:45:01 +02:00
mounts.go Extract volume interaction to a volumes service 2018-05-25 14:21:07 -04:00
names.go container: ViewDB: return typed system errors 2022-12-08 14:33:57 +01:00
network.go Make default options for newly created networks configurable 2023-03-01 07:58:26 +01:00
network_windows.go libnetwork: return concrete-typed *Endpoint 2023-01-13 14:19:06 -05:00
nvidia_linux.go goimports: fix imports 2019-09-18 12:56:54 +02:00
oci_linux.go Prefer loading docker-init from an appropriate "libexec" directory 2023-03-24 14:25:12 -07:00
oci_linux_test.go daemon: setupFakeDaemon(): add fakeImageService 2023-04-18 15:02:41 +02:00
oci_opts.go daemon/linux: Set console size on creation 2022-05-19 07:57:27 +02:00
oci_utils.go goimports: fix imports 2019-09-18 12:56:54 +02:00
oci_windows.go daemon: add annotations to container HostConfig 2023-02-23 18:59:00 -05:00
oci_windows_test.go daemon: use strings.Cut() and cleanup error messages 2022-12-21 11:09:03 +01:00
pause.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
prune.go daemon/prune: Use errdefs for invalid "until" value 2023-04-21 10:25:57 +02:00
reload.go reorder load funcs to match newServiceConfig()'s order 2023-05-18 23:03:47 +02:00
reload_test.go add mirror to daemon reload test for insecure registries 2023-05-18 23:03:44 +02:00
reload_unix.go daemon: use strconv instead of fmt.Sprintf() 2022-10-08 17:41:39 +02:00
reload_windows.go Add canonical import comment 2018-02-05 16:51:57 -05:00
rename.go libnetwork: return concrete-typed *Sandbox 2023-01-13 14:19:06 -05:00
resize.go Fix npe in exec resize when exec errored 2023-05-28 19:06:35 +02:00
resize_test.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
restart.go imageservice: Add context to various methods 2022-11-03 12:22:40 +01:00
runtime_unix.go daemon: allow shimv2 runtimes to be configured 2023-02-17 18:08:06 -05:00
runtime_unix_test.go daemon: allow shimv2 runtimes to be configured 2023-02-17 18:08:06 -05:00
runtime_windows.go daemon: allow shimv2 runtimes to be configured 2023-02-17 18:08:06 -05:00
seccomp_linux.go Remove "seccomp" build tag 2022-05-12 14:48:35 -07:00
seccomp_linux_test.go container: split security options to a SecurityOptions struct 2023-04-29 00:03:37 +02:00
seccomp_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
secrets.go Add canonical import comment 2018-02-05 16:51:57 -05:00
secrets_linux.go Add canonical import comment 2018-02-05 16:51:57 -05:00
secrets_unsupported.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
secrets_windows.go Add canonical import comment 2018-02-05 16:51:57 -05:00
start.go Implement run using the containerd snapshotter 2023-02-06 18:21:50 +01:00
start_unix.go daemon: allow shimv2 runtimes to be configured 2023-02-17 18:08:06 -05:00
start_windows.go Windows CI: Add support for testing with containerd 2021-08-17 07:09:40 -07:00
stats.go Merge pull request #40478 from cpuguy83/dont-prime-the-stats 2020-04-16 20:57:06 +02:00
stats_collector.go pkg/sysinfo: move MemInfo and ReadMemInfo to a separate package 2023-03-15 17:52:45 +01:00
stats_unix.go daemon: move code related to stats together 2023-04-08 19:00:01 +02:00
stats_windows.go daemon: move code related to stats together 2023-04-08 19:00:01 +02:00
stop.go container: StopSignal(): return syscall.Signal 2022-05-05 00:53:53 +02:00
top_unix.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
top_unix_test.go Update to Go 1.17.0, and gofmt with Go 1.17 2021-08-24 23:33:27 +02:00
top_windows.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
unpause.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
update.go Refactor libcontainerd to minimize c8d RPCs 2022-08-24 14:59:08 -04:00
update_linux.go goimports: fix imports 2019-09-18 12:56:54 +02:00
update_windows.go Windows: Experimental: Allow containerd for runtime 2019-03-12 18:41:55 -07:00
volumes.go daemon: replace ErrVolumeReadonly with errdefs 2022-09-27 22:24:29 +02:00
volumes_linux.go Fix the several typos detected by github.com/client9/misspell 2018-08-09 00:45:00 +09:00
volumes_linux_test.go daemon: rename variables that collide with imported package names 2020-04-14 17:22:23 +02:00
volumes_unit_test.go volume/mounts: remove "containerOS" argument from NewParser (LCOW code) 2021-07-02 13:51:55 +02:00
volumes_unix.go daemon: archive in a dedicated mount namespace 2022-10-27 12:52:14 -04:00
volumes_windows.go Add ADD/COPY --chown flag support to Windows 2018-08-13 21:59:11 -07:00
wait.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
workdir.go Add ADD/COPY --chown flag support to Windows 2018-08-13 21:59:11 -07:00