summaryrefslogtreecommitdiffhomepage
path: root/pkg/tcpip/transport/unix/connectionless.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/tcpip/transport/unix/connectionless.go')
-rw-r--r--pkg/tcpip/transport/unix/connectionless.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/pkg/tcpip/transport/unix/connectionless.go b/pkg/tcpip/transport/unix/connectionless.go
index 2a6ec8b4b..ebd4802b0 100644
--- a/pkg/tcpip/transport/unix/connectionless.go
+++ b/pkg/tcpip/transport/unix/connectionless.go
@@ -77,9 +77,15 @@ func (e *connectionlessEndpoint) BidirectionalConnect(ce ConnectingEndpoint, ret
// UnidirectionalConnect implements BoundEndpoint.UnidirectionalConnect.
func (e *connectionlessEndpoint) UnidirectionalConnect() (ConnectedEndpoint, *tcpip.Error) {
+ e.Lock()
+ r := e.receiver
+ e.Unlock()
+ if r == nil {
+ return nil, tcpip.ErrConnectionRefused
+ }
return &connectedEndpoint{
endpoint: e,
- writeQueue: e.receiver.(*queueReceiver).readQueue,
+ writeQueue: r.(*queueReceiver).readQueue,
}, nil
}