template <>
class WireServer
Defined at line 901 of file fidling/gen/sdk/fidl/fuchsia.hardware.network.driver/fuchsia.hardware.network.driver/cpp/fidl/fuchsia.hardware.network.driver/cpp/driver/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fdf::ClientEnd
<
::fuchsia_hardware_network_driver::NetworkPort>|
and |::fdf::ServerEnd
<
::fuchsia_hardware_network_driver::NetworkPort>|).
Public Methods
void GetInfo (fdf::Arena & arena, GetInfoCompleter::Sync & completer)
Gets information about the port.
Port information must not change over the port's lifetime.
- response `info` port information.
void GetStatus (fdf::Arena & arena, GetStatusCompleter::Sync & completer)
Gets operational status of the port.
Changes to operational status must be reported via
[`NetworkDeviceIfc.StatusChanged`]
- response `status` snapshot of port's operational status.
void SetActive (::fuchsia_hardware_network_driver::wire::NetworkPortSetActiveRequest * request, fdf::Arena & arena, SetActiveCompleter::Sync & completer)
Notifies the port that there are sessions interested in it.
An active port has sessions attached to it. Implementations may employ
power saving or other strategies on disabled ports. Implementations that
do employ such strategies:
- should not report inbound frames for inactive ports;
- must return errors for outbound frames destined to inactive ports.
All ports are inactive on creation.
+ request `active` `true` if port has sessions attached to it, `false`
otherwise.
void GetMac (fdf::Arena & arena, GetMacCompleter::Sync & completer)
Gets an interface to the MAC addressing layer of the port.
Ports that do not support MAC addressing must return an empty interface.
- response `mac_ifc` mac addressing handle.
void Removed (fdf::Arena & arena, RemovedCompleter::Sync & completer)
Notifies this port has been removed from the interface.
Resources associated with the port must only be freed upon receiving the
`Removed` call. Note that Removed will ONLY be called if AddPort has
returned and indicated success. If AddPort fails this will not be called,
check the return status of AddPort instead.
void WireServer ()
Defined at line 904 of file fidling/gen/sdk/fidl/fuchsia.hardware.network.driver/fuchsia.hardware.network.driver/cpp/fidl/fuchsia.hardware.network.driver/cpp/driver/wire_messaging.h
Handler bind_handler (fdf_dispatcher_t * dispatcher)
|bind_handler| returns a handler that binds incoming connections to this
server implementation.
The returned handler borrows the server instance.
The server must outlive the provided |dispatcher|. Only after
the dispatcher is shutdown will it be safe to destroy the servers.
The server should not be moved.
void ~WireServer ()
Defined at line 905 of file fidling/gen/sdk/fidl/fuchsia.hardware.network.driver/fuchsia.hardware.network.driver/cpp/fidl/fuchsia.hardware.network.driver/cpp/driver/wire_messaging.h