template <>
class Server
Defined at line 602 of file fidling/gen/sdk/fidl/fuchsia.hardware.network/fuchsia.hardware.network/cpp/fidl/fuchsia.hardware.network/cpp/natural_messaging.h
Public Methods
void GetUnicastAddress (GetUnicastAddressCompleter::Sync & completer)
Gets the Device's current unicast MAC address.
Implementers of this API do not need to return a uniquely identifiable
MAC; the unicast address returned is the one that is *currently* in use
to filter unicast frames, or that identifies the device on a link it's
*currently* on. Users of this API must not rely on the stability or
uniqueness of the returned value to identify or disambiguate device
instances.
- response `address` device's unicast MAC address.
void Server ()
Defined at line 605 of file fidling/gen/sdk/fidl/fuchsia.hardware.network/fuchsia.hardware.network/cpp/fidl/fuchsia.hardware.network/cpp/natural_messaging.h
void SetMode (SetModeRequest & request, SetModeCompleter::Sync & completer)
Sets requested operating mode of this device to `mode`.
The requested mode is attached to the current client connection to the
device. Because multiple clients can be attached to the same device at
once, the mode with the least restrictions is the one actively put into
effect into the underlying device implementation.
If the device does not support the requested mode, but supports a mode
that is more open than the requested one, `SetMode` succeeds regardless.
Otherwise, if the device only supports *more restrictive* modes than the
one requested, `SetMode` returns `ZX_ERR_NOT_SUPPORTED`.
Clients must be aware that the resource being accessed is shared, and
that the device may be effectively operating at a more open level than
the one that was requested (although never at one more restrictive).
+ request `mode` request mode to attach to.
- response `status` `ZX_ERR_NOT_SUPPORTED` it the device only supports
mode more restrictive than the one requested.
void AddMulticastAddress (AddMulticastAddressRequest & request, AddMulticastAddressCompleter::Sync & completer)
Adds multicast address to the list of multicast groups.
The list of multicast addresses kept is untouched by calls to `SetMode`.
If the device's mode is not `MULTICAST_FILTER`, the list of multicast
addresses is ignored.
+ request `address` multicast address to add to the list.
- response `status` `ZX_ERR_INVALID_ARGS` if `address` is not a
multicast address.
- response `status` `ZX_ERR_NO_RESOURCES` if there are more than
`MAX_MAC_FILTER` addresses installed.
void RemoveMulticastAddress (RemoveMulticastAddressRequest & request, RemoveMulticastAddressCompleter::Sync & completer)
Removes multicast address from the list of multicast groups.
+ request `address` multicast address to remove from the list.
- response `status` `ZX_ERR_INVALID_ARGS` if `address` is not a
multicast address.
Handler bind_handler (async_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 ~Server ()
Defined at line 606 of file fidling/gen/sdk/fidl/fuchsia.hardware.network/fuchsia.hardware.network/cpp/fidl/fuchsia.hardware.network/cpp/natural_messaging.h