| // Copyright 2018 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 fuchsia.overnet.protocol; |
| |
| /// Identifies a single overnet stream between two processes on the Overnet |
| /// mesh. |
| struct StreamId { |
| uint64 id; |
| }; |
| |
| /// Address of a node on the overlay network. |
| struct NodeId { |
| uint64 id; |
| }; |
| |
| /// Node-local link label. |
| alias LinkId = uint64; |
| |
| /// Length of a transfer key. |
| const uint32 TRANSFER_KEY_LENGTH = 16; |
| |
| /// A transfer key is used when moving a stream endpoint from one node to |
| /// another. It identifies a single transfer, should be unique (so, made from |
| /// random bytes), and should be discarded at the end of the transfer. |
| alias TransferKey = array<uint8>:TRANSFER_KEY_LENGTH; |