summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/socket/unix
diff options
context:
space:
mode:
authorgVisor bot <gvisor-bot@google.com>2021-11-04 19:16:23 +0000
committergVisor bot <gvisor-bot@google.com>2021-11-04 19:16:23 +0000
commitc884dcb8316a261f2af70fd3fbb966b3eab1bfbe (patch)
treed6efd9f683e6ab7aa60d6ff23d707b30c6790a90 /pkg/sentry/socket/unix
parent2de3450f76d675ccbf7617745364893ead475a35 (diff)
parent23a115dae84e7e63c8785c49dfff3e551a0bf97e (diff)
Merge release-20211026.0-33-g23a115dae (automated)
Diffstat (limited to 'pkg/sentry/socket/unix')
-rw-r--r--pkg/sentry/socket/unix/transport/connectioned.go18
-rw-r--r--pkg/sentry/socket/unix/transport/connectionless.go10
-rw-r--r--pkg/sentry/socket/unix/transport/queue.go6
-rw-r--r--pkg/sentry/socket/unix/unix.go16
-rw-r--r--pkg/sentry/socket/unix/unix_vfs2.go6
5 files changed, 28 insertions, 28 deletions
diff --git a/pkg/sentry/socket/unix/transport/connectioned.go b/pkg/sentry/socket/unix/transport/connectioned.go
index b3f0cf563..46fbaac1b 100644
--- a/pkg/sentry/socket/unix/transport/connectioned.go
+++ b/pkg/sentry/socket/unix/transport/connectioned.go
@@ -260,7 +260,7 @@ func (e *connectionedEndpoint) BidirectionalConnect(ctx context.Context, ce Conn
// Check if ce is e to avoid a deadlock.
if ce, ok := ce.(*connectionedEndpoint); ok && ce == e {
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
// Do a dance to safely acquire locks on both endpoints.
@@ -281,7 +281,7 @@ func (e *connectionedEndpoint) BidirectionalConnect(ctx context.Context, ce Conn
if ce.Listening() {
e.Unlock()
ce.Unlock()
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
// Check bound state.
@@ -384,7 +384,7 @@ func (e *connectionedEndpoint) Listen(backlog int) *syserr.Error {
// Adjust the size of the channel iff we can fix existing
// pending connections into the new one.
if len(e.acceptedChan) > backlog {
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
origChan := e.acceptedChan
e.acceptedChan = make(chan *connectionedEndpoint, backlog)
@@ -395,7 +395,7 @@ func (e *connectionedEndpoint) Listen(backlog int) *syserr.Error {
return nil
}
if !e.isBound() {
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
// Normal case.
@@ -409,7 +409,7 @@ func (e *connectionedEndpoint) Accept(peerAddr *tcpip.FullAddress) (Endpoint, *s
if !e.Listening() {
e.Unlock()
- return nil, syserr.ErrInvalidEndpointState
+ return nil, tcpip.SyserrInvalidEndpointState
}
select {
@@ -422,7 +422,7 @@ func (e *connectionedEndpoint) Accept(peerAddr *tcpip.FullAddress) (Endpoint, *s
if c != nil {
addr, err := c.GetLocalAddress()
if err != nil {
- return nil, syserr.TranslateNetstackError(err)
+ return nil, tcpip.TranslateNetstackError(err)
}
*peerAddr = addr
}
@@ -448,11 +448,11 @@ func (e *connectionedEndpoint) Bind(addr tcpip.FullAddress, commit func() *syser
e.Lock()
defer e.Unlock()
if e.isBound() || e.Listening() {
- return syserr.ErrAlreadyBound
+ return tcpip.SyserrAlreadyBound
}
if addr.Addr == "" {
// The empty string is not permitted.
- return syserr.ErrBadLocalAddress
+ return tcpip.SyserrBadLocalAddress
}
if commit != nil {
if err := commit(); err != nil {
@@ -471,7 +471,7 @@ func (e *connectionedEndpoint) SendMsg(ctx context.Context, data [][]byte, c Con
// Stream sockets do not support specifying the endpoint. Seqpacket
// sockets ignore the passed endpoint.
if e.stype == linux.SOCK_STREAM && to != nil {
- return 0, syserr.ErrNotSupported
+ return 0, tcpip.SyserrNotSupported
}
return e.baseEndpoint.SendMsg(ctx, data, c, to)
}
diff --git a/pkg/sentry/socket/unix/transport/connectionless.go b/pkg/sentry/socket/unix/transport/connectionless.go
index 61311718e..6f4d4feb8 100644
--- a/pkg/sentry/socket/unix/transport/connectionless.go
+++ b/pkg/sentry/socket/unix/transport/connectionless.go
@@ -109,7 +109,7 @@ func (e *connectionlessEndpoint) SendMsg(ctx context.Context, data [][]byte, c C
connected, err := to.UnidirectionalConnect(ctx)
if err != nil {
- return 0, syserr.ErrInvalidEndpointState
+ return 0, tcpip.SyserrInvalidEndpointState
}
defer connected.Release(ctx)
@@ -148,12 +148,12 @@ func (e *connectionlessEndpoint) Connect(ctx context.Context, server BoundEndpoi
// Listen starts listening on the connection.
func (*connectionlessEndpoint) Listen(int) *syserr.Error {
- return syserr.ErrNotSupported
+ return tcpip.SyserrNotSupported
}
// Accept accepts a new connection.
func (*connectionlessEndpoint) Accept(*tcpip.FullAddress) (Endpoint, *syserr.Error) {
- return nil, syserr.ErrNotSupported
+ return nil, tcpip.SyserrNotSupported
}
// Bind binds the connection.
@@ -168,11 +168,11 @@ func (e *connectionlessEndpoint) Bind(addr tcpip.FullAddress, commit func() *sys
e.Lock()
defer e.Unlock()
if e.isBound() {
- return syserr.ErrAlreadyBound
+ return tcpip.SyserrAlreadyBound
}
if addr.Addr == "" {
// The empty string is not permitted.
- return syserr.ErrBadLocalAddress
+ return tcpip.SyserrBadLocalAddress
}
if commit != nil {
if err := commit(); err != nil {
diff --git a/pkg/sentry/socket/unix/transport/queue.go b/pkg/sentry/socket/unix/transport/queue.go
index 188ad3bd9..3a57ed0ef 100644
--- a/pkg/sentry/socket/unix/transport/queue.go
+++ b/pkg/sentry/socket/unix/transport/queue.go
@@ -120,7 +120,7 @@ func (q *queue) Enqueue(ctx context.Context, data [][]byte, c ControlMessages, f
if q.closed {
q.mu.Unlock()
- return 0, false, syserr.ErrClosedForSend
+ return 0, false, tcpip.SyserrClosedForSend
}
for _, d := range data {
@@ -188,7 +188,7 @@ func (q *queue) Dequeue() (e *message, notify bool, err *syserr.Error) {
if q.dataList.Front() == nil {
err := syserr.ErrWouldBlock
if q.closed {
- err = syserr.ErrClosedForReceive
+ err = tcpip.SyserrClosedForReceive
if q.unread {
err = syserr.ErrConnectionReset
}
@@ -219,7 +219,7 @@ func (q *queue) Peek() (*message, *syserr.Error) {
if q.dataList.Front() == nil {
err := syserr.ErrWouldBlock
if q.closed {
- if err = syserr.ErrClosedForReceive; q.unread {
+ if err = tcpip.SyserrClosedForReceive; q.unread {
err = syserr.ErrConnectionReset
}
}
diff --git a/pkg/sentry/socket/unix/unix.go b/pkg/sentry/socket/unix/unix.go
index e9e482017..032678032 100644
--- a/pkg/sentry/socket/unix/unix.go
+++ b/pkg/sentry/socket/unix/unix.go
@@ -167,7 +167,7 @@ func extractPath(sockaddr []byte) (string, *syserr.Error) {
func (s *socketOpsCommon) GetPeerName(t *kernel.Task) (linux.SockAddr, uint32, *syserr.Error) {
addr, err := s.ep.GetRemoteAddress()
if err != nil {
- return nil, 0, syserr.TranslateNetstackError(err)
+ return nil, 0, tcpip.TranslateNetstackError(err)
}
a, l := socket.ConvertAddress(linux.AF_UNIX, addr)
@@ -179,7 +179,7 @@ func (s *socketOpsCommon) GetPeerName(t *kernel.Task) (linux.SockAddr, uint32, *
func (s *socketOpsCommon) GetSockName(t *kernel.Task) (linux.SockAddr, uint32, *syserr.Error) {
addr, err := s.ep.GetLocalAddress()
if err != nil {
- return nil, 0, syserr.TranslateNetstackError(err)
+ return nil, 0, tcpip.TranslateNetstackError(err)
}
a, l := socket.ConvertAddress(linux.AF_UNIX, addr)
@@ -288,13 +288,13 @@ func (s *SocketOperations) Bind(t *kernel.Task, sockaddr []byte) *syserr.Error {
// Is it abstract?
if p[0] == 0 {
if t.IsNetworkNamespaced() {
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
asn := t.AbstractSockets()
name := p[1:]
if err := asn.Bind(t, name, bep, s); err != nil {
- // syserr.ErrPortInUse corresponds to EADDRINUSE.
- return syserr.ErrPortInUse
+ // tcpip.SyserrPortInUse corresponds to EADDRINUSE.
+ return tcpip.SyserrPortInUse
}
s.abstractName = name
s.abstractNamespace = asn
@@ -326,7 +326,7 @@ func (s *SocketOperations) Bind(t *kernel.Task, sockaddr []byte) *syserr.Error {
d, err = t.MountNamespace().FindInode(t, root, cwd, subPath, &remainingTraversals)
if err != nil {
// No path available.
- return syserr.ErrNoSuchFile
+ return tcpip.SyserrNoSuchFile
}
defer d.DecRef(t)
name = p[lastSlash+1:]
@@ -340,7 +340,7 @@ func (s *SocketOperations) Bind(t *kernel.Task, sockaddr []byte) *syserr.Error {
// unresolved until VFS2 replaces this code.
childDir, err := d.Bind(t, t.FSContext().RootDirectory(), name, bep, fs.FilePermissions{User: fs.PermMask{Read: true}})
if err != nil {
- return syserr.ErrPortInUse
+ return tcpip.SyserrPortInUse
}
childDir.DecRef(t)
}
@@ -477,7 +477,7 @@ func (s *socketOpsCommon) SendMsg(t *kernel.Task, src usermem.IOSequence, to []b
if s.State() == linux.SS_CONNECTED {
return 0, syserr.ErrAlreadyConnected
}
- return 0, syserr.ErrNotSupported
+ return 0, tcpip.SyserrNotSupported
default:
ep, err := extractEndpoint(t, to)
if err != nil {
diff --git a/pkg/sentry/socket/unix/unix_vfs2.go b/pkg/sentry/socket/unix/unix_vfs2.go
index 8c5075a1c..b05233dfe 100644
--- a/pkg/sentry/socket/unix/unix_vfs2.go
+++ b/pkg/sentry/socket/unix/unix_vfs2.go
@@ -202,13 +202,13 @@ func (s *SocketVFS2) Bind(t *kernel.Task, sockaddr []byte) *syserr.Error {
// Is it abstract?
if p[0] == 0 {
if t.IsNetworkNamespaced() {
- return syserr.ErrInvalidEndpointState
+ return tcpip.SyserrInvalidEndpointState
}
asn := t.AbstractSockets()
name := p[1:]
if err := asn.Bind(t, name, bep, s); err != nil {
- // syserr.ErrPortInUse corresponds to EADDRINUSE.
- return syserr.ErrPortInUse
+ // tcpip.SyserrPortInUse corresponds to EADDRINUSE.
+ return tcpip.SyserrPortInUse
}
s.abstractName = name
s.abstractNamespace = asn