diff --git a/alpine/packages/proxy/proxy.go b/alpine/packages/proxy/proxy.go index aea703761..3c38b5ceb 100644 --- a/alpine/packages/proxy/proxy.go +++ b/alpine/packages/proxy/proxy.go @@ -67,6 +67,8 @@ func handleStopSignals(p libproxy.Proxy) { signal.Notify(s, os.Interrupt, syscall.SIGTERM, syscall.SIGSTOP) for range s { - p.Close() + os.Exit(0) + // The vsock proxy cannot be shutdown the same way as the TCP one: + //p.Close() } } diff --git a/alpine/packages/proxy/vendor/vsock/vsock.go b/alpine/packages/proxy/vendor/vsock/vsock.go index b0f734b99..dc7217874 100644 --- a/alpine/packages/proxy/vendor/vsock/vsock.go +++ b/alpine/packages/proxy/vendor/vsock/vsock.go @@ -81,6 +81,7 @@ func (v *vsockListener) Accept() (net.Conn, error) { } func (v *vsockListener) Close() error { + // Note this won't cause the Accept to unblock. return syscall.Close(v.accept_fd) }