class DevicePair

Defined at line 321 of file fidling/gen/sdk/fidl/fuchsia.net.tun/fuchsia.net.tun/cpp/fidl/fuchsia.net.tun/cpp/markers.h

Provides control over a pair of network devices.

A `DevicePair` is a simpler version of `Device` that "shorts" two network

device interfaces, named its "left" and "right" ends. The internal state of

a `DevicePair` is not accessible, like it is for `Device` and it provides a

more streamlined (and considerably faster) pair of

[`fuchsia.hardware.network/Device`]s. The transmit side of each port of the

left end is connected to the receive side of the port with the same

identifier on the right end, and vice-versa. A `DevicePair`'s port online

signal is handled internally (online if any of the ends has an active data

session). If MAC addresses are provided on creation, the only supported MAC

filtering mode is `PROMISCUOUS`.

This protocol encodes the underlying object's lifetime in both directions;

the underlying object is alive iff both ends of the protocol are open. That

is:

- Closing the client end causes the object to be destroyed.

- Observing a closure of the server end indicates the object no longer

exists.

Public Members

static Openness kOpenness

Records