diff --git a/virtcontainers/kata_agent.go b/virtcontainers/kata_agent.go index 3f0a2916c..6396d4d88 100644 --- a/virtcontainers/kata_agent.go +++ b/virtcontainers/kata_agent.go @@ -569,6 +569,12 @@ func (k *kataAgent) startSandbox(sandbox *Sandbox) error { return err } + defer func() { + if err != nil { + k.proxy.stop(k.state.ProxyPid) + } + }() + hostname := sandbox.config.Hostname if len(hostname) > maxHostnameLen { hostname = hostname[:maxHostnameLen] @@ -586,10 +592,10 @@ func (k *kataAgent) startSandbox(sandbox *Sandbox) error { if err != nil { return err } - if err := k.updateInterfaces(interfaces); err != nil { + if err = k.updateInterfaces(interfaces); err != nil { return err } - if _, err := k.updateRoutes(routes); err != nil { + if _, err = k.updateRoutes(routes); err != nil { return err }