From 0212f222c74b9f88c5c74d920127e47e942dc376 Mon Sep 17 00:00:00 2001 From: Brian Geffon Date: Fri, 1 Jun 2018 14:58:46 -0700 Subject: Fix refcount bug in rpcinet socketOperations.Accept. PiperOrigin-RevId: 198931222 Change-Id: I69ee12318e87b9a6a4a94b18a9bf0ae4e39d7eaf --- pkg/sentry/socket/rpcinet/socket.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkg/sentry/socket/rpcinet/socket.go b/pkg/sentry/socket/rpcinet/socket.go index bca91ab5f..74cb84927 100644 --- a/pkg/sentry/socket/rpcinet/socket.go +++ b/pkg/sentry/socket/rpcinet/socket.go @@ -277,8 +277,10 @@ func (s *socketOperations) Accept(t *kernel.Task, peerRequested bool, flags int, file := fs.NewFile(t, dirent, fs.FileFlags{Read: true, Write: true, NonBlocking: flags&linux.SOCK_NONBLOCK != 0}, &socketOperations{ wq: &wq, fd: payload.Fd, + rpcConn: s.rpcConn, notifier: s.notifier, }) + defer file.DecRef() fdFlags := kernel.FDFlags{ CloseOnExec: flags&linux.SOCK_CLOEXEC != 0, -- cgit v1.2.3