| // 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; |
| }); |
| }; |