template <>

class WireWeakSyncClientImpl

Defined at line 4598 of file fidling/gen/sdk/fidl/fuchsia.net.interfaces.admin/fuchsia.net.interfaces.admin/cpp/fidl/fuchsia.net.interfaces.admin/cpp/wire_messaging.h

Public Methods

::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::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.