blob: 5d3be0548ab42c34383e5fa5e0f2419ef1e5eb82 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library llcpptest.handlerights.test;
using zx;
closed protocol HandleRights {
strict SyncGetHandleWithTooFewRights() -> (resource struct {
h zx.Handle:<EVENT, zx.Rights.TRANSFER | zx.Rights.SIGNAL>;
});
strict AsyncGetHandleWithTooFewRights() -> (resource struct {
h zx.Handle:<EVENT, zx.Rights.TRANSFER | zx.Rights.SIGNAL>;
});
strict SyncGetHandleWithTooManyRights() -> (resource struct {
h zx.Handle:<EVENT, zx.Rights.TRANSFER | zx.Rights.SIGNAL>;
});
strict AsyncGetHandleWithTooManyRights() -> (resource struct {
h zx.Handle:<EVENT, zx.Rights.TRANSFER | zx.Rights.SIGNAL>;
});
strict SyncGetHandleWithWrongType() -> (resource struct {
h zx.Handle:CHANNEL;
});
strict AsyncGetHandleWithWrongType() -> (resource struct {
h zx.Handle:CHANNEL;
});
strict SendEventWithTransferAndSignal(resource struct {
h zx.Handle:<EVENT, zx.Rights.TRANSFER | zx.Rights.SIGNAL>;
});
strict SendChannel(resource struct {
h zx.Handle:CHANNEL;
});
};