class ControllerAllowlistPassthrough

Defined at line 23 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.h

The ControllerAllowlistPassthrough enables the individual allowlisting of all of the

functions of the fuchsia.device/Controller protocol. It also serves as a switching mechanism,

as the Controller interface is currently either handled by the Node class for DFv2

drivers, or by the compat::Device class for drivers wrapped in the compatibility shim.

If the optional |controller_connector| is passed into the Create function, this passthrough

will forward Controller interface calls to that channel. Otherwise, it will directly

call the functions of the |node| class.

Public Methods

void ConnectToDeviceFidl (ConnectToDeviceFidlRequestView request, ConnectToDeviceFidlCompleter::Sync & completer)

fidl::WireServer

<fuchsia

_device::Controller>

Defined at line 101 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void ConnectToController (ConnectToControllerRequestView request, ConnectToControllerCompleter::Sync & completer)

Defined at line 119 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void Bind (BindRequestView request, BindCompleter::Sync & completer)

Defined at line 126 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void Rebind (RebindRequestView request, RebindCompleter::Sync & completer)

Defined at line 146 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void UnbindChildren (UnbindChildrenCompleter::Sync & completer)

Defined at line 169 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void ScheduleUnbind (ScheduleUnbindCompleter::Sync & completer)

Defined at line 189 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

void GetTopologicalPath (GetTopologicalPathCompleter::Sync & completer)

Defined at line 209 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

std::unique_ptr<ControllerAllowlistPassthrough> Create (std::optional<fidl::ClientEnd<fuchsia_device_fs::Connector>> controller_connector, std::weak_ptr<fidl::WireServer<fuchsia_device::Controller>> node, async_dispatcher_t * dispatcher, const std::string & class_name)

Defined at line 231 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc

zx_status_t Connect (fidl::ServerEnd<fuchsia_device::Controller> server_end)

Defined at line 224 of file ../../src/devices/bin/driver_manager/controller_allowlist_passthrough.cc