From eb638ee583ba29a879202451692fadfed7c3fdd0 Mon Sep 17 00:00:00 2001 From: "Zyad A. Ali" Date: Mon, 21 Jun 2021 13:48:25 +0200 Subject: Implement stubs for msgsnd(2) and msgrcv(2). Add support for msgsnd and msgrcv and enable syscall tests. Updates #135 --- pkg/sentry/kernel/msgqueue/msgqueue.go | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'pkg/sentry/kernel/msgqueue') diff --git a/pkg/sentry/kernel/msgqueue/msgqueue.go b/pkg/sentry/kernel/msgqueue/msgqueue.go index 21025797d..28520b19a 100644 --- a/pkg/sentry/kernel/msgqueue/msgqueue.go +++ b/pkg/sentry/kernel/msgqueue/msgqueue.go @@ -386,6 +386,15 @@ func (q *Queue) pop(ctx context.Context, creds *auth.Credentials, mType int64, m return msg, nil } +// Copy copies a message from the queue without deleting it. See +// msgrcv(MSG_COPY). +func (q *Queue) Copy() (*Message, error) { + q.mu.Lock() + defer q.mu.Unlock() + + return nil, linuxerr.ENOSYS +} + // msgOfType returns the first message with the specified type, nil if no // message is found. If except is true, the first message of a type not equal // to mType will be returned. -- cgit v1.2.3