blob: cbec5d4039afd2ea046eb74895de24a5f3ca8d29 [file] [log] [blame]
// Copyright 2023 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library test.wlan.testcontroller;
using fuchsia.wlan.fullmac;
using zx;
alias FullmacId = uint32;
closed protocol TestController {
/// Create and bind Fullmac driver that forwards all incoming calls
/// to the |bridge_client|. The Fullmac driver will also create an instance
/// of SME on binding.
///
/// The user should expect to receive a call to
/// WlanFullmacImpl::Start shortly after calling this.
///
/// Returns an |id| that uniquely identifies the new instance of the Fullmac driver,
/// which can be used to delete the driver instance later.
strict CreateFullmac(resource struct {
bridge_client client_end:fuchsia.wlan.fullmac.WlanFullmacImpl;
}) -> (resource struct {
id FullmacId;
}) error zx.Status;
/// Deletes the Fullmac driver with the given |id|.
strict DeleteFullmac(resource struct {
id FullmacId;
}) -> () error zx.Status;
};