template <>
class WireSyncClientImpl
Defined at line 2796 of file fidling/gen/sdk/fidl/fuchsia.net.interfaces.admin/fuchsia.net.interfaces.admin/cpp/fidl/fuchsia.net.interfaces.admin/cpp/wire_messaging.h
Methods to make a sync FIDL call directly on an unowned handle or a
const reference to a |::fidl::ClientEnd
<
::fuchsia_net_interfaces_admin::Control>|,
avoiding setting up a client.
Public Methods
::fidl::OneWayStatus AddAddress (const ::fuchsia_net::wire::Subnet & address, ::fuchsia_net_interfaces_admin::wire::AddressParameters parameters, ::fidl::ServerEnd< ::fuchsia_net_interfaces_admin::AddressStateProvider> && address_state_provider)
Assigns an address to the interface.
Errors are communicated via
[`fuchsia.net.interfaces.admin/AddressStateProvider.OnAddressRemoved`].
+ request `address` the address to assign to the interface.
+ request `parameters` additional address-specific options.
+ request `address_state_provider` provides address assignment state
and enables updating address properties.
Allocates 192 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::RemoveAddress> RemoveAddress (const ::fuchsia_net::wire::Subnet & address)
Removes an address from the interface.
+ request `address` the address to remove.
- response `did_remove` `true` iff `address` was removed from the
interface as a consequence of this call.
Allocates 88 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::GetId> GetId ()
Gets the interface identifier.
- response `id` the interface identifier.
Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::SetConfiguration> SetConfiguration (::fuchsia_net_interfaces_admin::wire::Configuration config)
Sets the configuration for the interface.
Only set fields that are supported in the provided [`Configuration`]
will be set; unset fields will be left unmodified. The server will
return a [`Configuration`] which holds the previous configuration for
fields that the interface supports and set, even if the call did not
update the configuration's value.
+ request `config` the configuration fields to update on the interface.
- response `previous_config` a snapshot of the interface's previous
configuration. Only supported fields present in `config` will be set.
Allocates 480 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::GetConfiguration> GetConfiguration ()
Gets a snapshot of the interface's configuration.
The server will populate the returned [`Configuration`] with the
configuration for features/protocols that the interface supports. That
is, fields for unsupported configurations will be unset in the returned
[`Configuration`].
- response `config` a snapshot of the interface's configuration.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::Enable> Enable ()
Enables the interface.
- response `did_enable` `true` iff the interface moved from disabled to
enabled as a consequence of this call.
Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::Disable> Disable ()
Disables the interface.
- response `did_disable` `true` iff the interface moved from enabled to
disabled as a consequence of this call.
Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::OneWayStatus Detach ()
Detaches the client end from the interface's lifetime.
After calling `Detach`, closing this client end no longer causes the
interface to be removed.
Allocates 32 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::GetAuthorizationForInterface> GetAuthorizationForInterface ()
Get an authentication credential for this interface.
The credential contains a [`zx::handle::EVENT`], whose entangled
partner is held by the server. This credential can be converted into a
[`fuchsia.net.resources/ProofOfInterfaceAuthorization`] and then passed
into `fuchsia.net.*` API calls to prove ownership of this interface. The
`EVENT` is stable throughout the lifetime of the interface. Clients may
duplicate this `EVENT` to make multiple API calls, or transfer the
`EVENT` to other clients.
- response `credential` the authorization credential for this interface.
Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_net_interfaces_admin::Control::Remove> Remove ()
Initiates interface removal.
This method returns success once interface removal has started. When the
interface is removed, a `USER` removed reason is issued in
[`OnInterfaceRemoved`] and the server end is closed.
Allocates 48 bytes of message buffer on the stack. No heap allocation necessary.