1#![warn(clippy::all)]
4#![allow(unused_parens, unused_mut, unused_imports, nonstandard_style)]
5
6use bitflags::bitflags;
7use fidl::client::QueryResponseFut;
8use fidl::encoding::{MessageBufFor, ProxyChannelBox, ResourceDialect};
9use fidl::endpoints::{ControlHandle as _, Responder as _};
10pub use fidl_fuchsia_wlan_mlme_common::*;
11use futures::future::{self, MaybeDone, TryFutureExt};
12use zx_status;
13
14#[derive(Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
15pub struct ConnectorConnectRequest {
16 pub request: fidl::endpoints::ServerEnd<MlmeMarker>,
17}
18
19impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for ConnectorConnectRequest {}
20
21#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
22pub struct ConnectorMarker;
23
24impl fidl::endpoints::ProtocolMarker for ConnectorMarker {
25 type Proxy = ConnectorProxy;
26 type RequestStream = ConnectorRequestStream;
27 #[cfg(target_os = "fuchsia")]
28 type SynchronousProxy = ConnectorSynchronousProxy;
29
30 const DEBUG_NAME: &'static str = "(anonymous) Connector";
31}
32
33pub trait ConnectorProxyInterface: Send + Sync {
34 fn r#connect(&self, request: fidl::endpoints::ServerEnd<MlmeMarker>)
35 -> Result<(), fidl::Error>;
36}
37#[derive(Debug)]
38#[cfg(target_os = "fuchsia")]
39pub struct ConnectorSynchronousProxy {
40 client: fidl::client::sync::Client,
41}
42
43#[cfg(target_os = "fuchsia")]
44impl fidl::endpoints::SynchronousProxy for ConnectorSynchronousProxy {
45 type Proxy = ConnectorProxy;
46 type Protocol = ConnectorMarker;
47
48 fn from_channel(inner: fidl::Channel) -> Self {
49 Self::new(inner)
50 }
51
52 fn into_channel(self) -> fidl::Channel {
53 self.client.into_channel()
54 }
55
56 fn as_channel(&self) -> &fidl::Channel {
57 self.client.as_channel()
58 }
59}
60
61#[cfg(target_os = "fuchsia")]
62impl ConnectorSynchronousProxy {
63 pub fn new(channel: fidl::Channel) -> Self {
64 Self { client: fidl::client::sync::Client::new(channel) }
65 }
66
67 pub fn into_channel(self) -> fidl::Channel {
68 self.client.into_channel()
69 }
70
71 pub fn wait_for_event(
74 &self,
75 deadline: zx::MonotonicInstant,
76 ) -> Result<ConnectorEvent, fidl::Error> {
77 ConnectorEvent::decode(self.client.wait_for_event::<ConnectorMarker>(deadline)?)
78 }
79
80 pub fn r#connect(
81 &self,
82 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
83 ) -> Result<(), fidl::Error> {
84 self.client.send::<ConnectorConnectRequest>(
85 (request,),
86 0x42131859717af962,
87 fidl::encoding::DynamicFlags::empty(),
88 )
89 }
90}
91
92#[cfg(target_os = "fuchsia")]
93impl From<ConnectorSynchronousProxy> for zx::NullableHandle {
94 fn from(value: ConnectorSynchronousProxy) -> Self {
95 value.into_channel().into()
96 }
97}
98
99#[cfg(target_os = "fuchsia")]
100impl From<fidl::Channel> for ConnectorSynchronousProxy {
101 fn from(value: fidl::Channel) -> Self {
102 Self::new(value)
103 }
104}
105
106#[cfg(target_os = "fuchsia")]
107impl fidl::endpoints::FromClient for ConnectorSynchronousProxy {
108 type Protocol = ConnectorMarker;
109
110 fn from_client(value: fidl::endpoints::ClientEnd<ConnectorMarker>) -> Self {
111 Self::new(value.into_channel())
112 }
113}
114
115#[derive(Debug, Clone)]
116pub struct ConnectorProxy {
117 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
118}
119
120impl fidl::endpoints::Proxy for ConnectorProxy {
121 type Protocol = ConnectorMarker;
122
123 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
124 Self::new(inner)
125 }
126
127 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
128 self.client.into_channel().map_err(|client| Self { client })
129 }
130
131 fn as_channel(&self) -> &::fidl::AsyncChannel {
132 self.client.as_channel()
133 }
134}
135
136impl ConnectorProxy {
137 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
139 let protocol_name = <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
140 Self { client: fidl::client::Client::new(channel, protocol_name) }
141 }
142
143 pub fn take_event_stream(&self) -> ConnectorEventStream {
149 ConnectorEventStream { event_receiver: self.client.take_event_receiver() }
150 }
151
152 pub fn r#connect(
153 &self,
154 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
155 ) -> Result<(), fidl::Error> {
156 ConnectorProxyInterface::r#connect(self, request)
157 }
158}
159
160impl ConnectorProxyInterface for ConnectorProxy {
161 fn r#connect(
162 &self,
163 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
164 ) -> Result<(), fidl::Error> {
165 self.client.send::<ConnectorConnectRequest>(
166 (request,),
167 0x42131859717af962,
168 fidl::encoding::DynamicFlags::empty(),
169 )
170 }
171}
172
173pub struct ConnectorEventStream {
174 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
175}
176
177impl std::marker::Unpin for ConnectorEventStream {}
178
179impl futures::stream::FusedStream for ConnectorEventStream {
180 fn is_terminated(&self) -> bool {
181 self.event_receiver.is_terminated()
182 }
183}
184
185impl futures::Stream for ConnectorEventStream {
186 type Item = Result<ConnectorEvent, fidl::Error>;
187
188 fn poll_next(
189 mut self: std::pin::Pin<&mut Self>,
190 cx: &mut std::task::Context<'_>,
191 ) -> std::task::Poll<Option<Self::Item>> {
192 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
193 &mut self.event_receiver,
194 cx
195 )?) {
196 Some(buf) => std::task::Poll::Ready(Some(ConnectorEvent::decode(buf))),
197 None => std::task::Poll::Ready(None),
198 }
199 }
200}
201
202#[derive(Debug)]
203pub enum ConnectorEvent {}
204
205impl ConnectorEvent {
206 fn decode(
208 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
209 ) -> Result<ConnectorEvent, fidl::Error> {
210 let (bytes, _handles) = buf.split_mut();
211 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
212 debug_assert_eq!(tx_header.tx_id, 0);
213 match tx_header.ordinal {
214 _ => Err(fidl::Error::UnknownOrdinal {
215 ordinal: tx_header.ordinal,
216 protocol_name: <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
217 }),
218 }
219 }
220}
221
222pub struct ConnectorRequestStream {
224 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
225 is_terminated: bool,
226}
227
228impl std::marker::Unpin for ConnectorRequestStream {}
229
230impl futures::stream::FusedStream for ConnectorRequestStream {
231 fn is_terminated(&self) -> bool {
232 self.is_terminated
233 }
234}
235
236impl fidl::endpoints::RequestStream for ConnectorRequestStream {
237 type Protocol = ConnectorMarker;
238 type ControlHandle = ConnectorControlHandle;
239
240 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
241 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
242 }
243
244 fn control_handle(&self) -> Self::ControlHandle {
245 ConnectorControlHandle { inner: self.inner.clone() }
246 }
247
248 fn into_inner(
249 self,
250 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
251 {
252 (self.inner, self.is_terminated)
253 }
254
255 fn from_inner(
256 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
257 is_terminated: bool,
258 ) -> Self {
259 Self { inner, is_terminated }
260 }
261}
262
263impl futures::Stream for ConnectorRequestStream {
264 type Item = Result<ConnectorRequest, fidl::Error>;
265
266 fn poll_next(
267 mut self: std::pin::Pin<&mut Self>,
268 cx: &mut std::task::Context<'_>,
269 ) -> std::task::Poll<Option<Self::Item>> {
270 let this = &mut *self;
271 if this.inner.check_shutdown(cx) {
272 this.is_terminated = true;
273 return std::task::Poll::Ready(None);
274 }
275 if this.is_terminated {
276 panic!("polled ConnectorRequestStream after completion");
277 }
278 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
279 |bytes, handles| {
280 match this.inner.channel().read_etc(cx, bytes, handles) {
281 std::task::Poll::Ready(Ok(())) => {}
282 std::task::Poll::Pending => return std::task::Poll::Pending,
283 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
284 this.is_terminated = true;
285 return std::task::Poll::Ready(None);
286 }
287 std::task::Poll::Ready(Err(e)) => {
288 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
289 e.into(),
290 ))));
291 }
292 }
293
294 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
296
297 std::task::Poll::Ready(Some(match header.ordinal {
298 0x42131859717af962 => {
299 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
300 let mut req = fidl::new_empty!(
301 ConnectorConnectRequest,
302 fidl::encoding::DefaultFuchsiaResourceDialect
303 );
304 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ConnectorConnectRequest>(&header, _body_bytes, handles, &mut req)?;
305 let control_handle = ConnectorControlHandle { inner: this.inner.clone() };
306 Ok(ConnectorRequest::Connect { request: req.request, control_handle })
307 }
308 _ => Err(fidl::Error::UnknownOrdinal {
309 ordinal: header.ordinal,
310 protocol_name:
311 <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
312 }),
313 }))
314 },
315 )
316 }
317}
318
319#[derive(Debug)]
321pub enum ConnectorRequest {
322 Connect {
323 request: fidl::endpoints::ServerEnd<MlmeMarker>,
324 control_handle: ConnectorControlHandle,
325 },
326}
327
328impl ConnectorRequest {
329 #[allow(irrefutable_let_patterns)]
330 pub fn into_connect(
331 self,
332 ) -> Option<(fidl::endpoints::ServerEnd<MlmeMarker>, ConnectorControlHandle)> {
333 if let ConnectorRequest::Connect { request, control_handle } = self {
334 Some((request, control_handle))
335 } else {
336 None
337 }
338 }
339
340 pub fn method_name(&self) -> &'static str {
342 match *self {
343 ConnectorRequest::Connect { .. } => "connect",
344 }
345 }
346}
347
348#[derive(Debug, Clone)]
349pub struct ConnectorControlHandle {
350 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
351}
352
353impl ConnectorControlHandle {
354 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
355 self.inner.shutdown_with_epitaph(status.into())
356 }
357}
358
359impl fidl::endpoints::ControlHandle for ConnectorControlHandle {
360 fn shutdown(&self) {
361 self.inner.shutdown()
362 }
363
364 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
365 self.inner.shutdown_with_epitaph(status)
366 }
367
368 fn is_closed(&self) -> bool {
369 self.inner.channel().is_closed()
370 }
371 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
372 self.inner.channel().on_closed()
373 }
374
375 #[cfg(target_os = "fuchsia")]
376 fn signal_peer(
377 &self,
378 clear_mask: zx::Signals,
379 set_mask: zx::Signals,
380 ) -> Result<(), zx_status::Status> {
381 use fidl::Peered;
382 self.inner.channel().signal_peer(clear_mask, set_mask)
383 }
384}
385
386impl ConnectorControlHandle {}
387
388#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
389pub struct MlmeMarker;
390
391impl fidl::endpoints::ProtocolMarker for MlmeMarker {
392 type Proxy = MlmeProxy;
393 type RequestStream = MlmeRequestStream;
394 #[cfg(target_os = "fuchsia")]
395 type SynchronousProxy = MlmeSynchronousProxy;
396
397 const DEBUG_NAME: &'static str = "(anonymous) Mlme";
398}
399pub type MlmeStartScheduledScanResult = Result<(), i32>;
400pub type MlmeStopScheduledScanResult = Result<(), i32>;
401pub type MlmeGetScheduledScanEnabledResult = Result<Vec<u64>, i32>;
402pub type MlmeQueryTelemetrySupportResult = Result<fidl_fuchsia_wlan_stats::TelemetrySupport, i32>;
403pub type MlmeGetSignalReportResult = Result<fidl_fuchsia_wlan_stats::SignalReport, i32>;
404pub type MlmeSetMacAddressResult = Result<(), i32>;
405pub type MlmeInstallApfPacketFilterResult = Result<(), i32>;
406pub type MlmeReadApfPacketFilterDataResult = Result<Vec<u8>, i32>;
407pub type MlmeSetApfPacketFilterEnabledResult = Result<(), i32>;
408pub type MlmeGetApfPacketFilterEnabledResult = Result<bool, i32>;
409pub type MlmeStartRssiMonitorResult = Result<(), i32>;
410
411pub trait MlmeProxyInterface: Send + Sync {
412 fn r#start_scan(&self, req: &ScanRequest) -> Result<(), fidl::Error>;
413 type StartScheduledScanResponseFut: std::future::Future<Output = Result<MlmeStartScheduledScanResult, fidl::Error>>
414 + Send;
415 fn r#start_scheduled_scan(
416 &self,
417 txn_id: u64,
418 req: &fidl_fuchsia_wlan_common::ScheduledScanRequest,
419 ) -> Self::StartScheduledScanResponseFut;
420 type StopScheduledScanResponseFut: std::future::Future<Output = Result<MlmeStopScheduledScanResult, fidl::Error>>
421 + Send;
422 fn r#stop_scheduled_scan(&self, txn_id: u64) -> Self::StopScheduledScanResponseFut;
423 type GetScheduledScanEnabledResponseFut: std::future::Future<Output = Result<MlmeGetScheduledScanEnabledResult, fidl::Error>>
424 + Send;
425 fn r#get_scheduled_scan_enabled(&self) -> Self::GetScheduledScanEnabledResponseFut;
426 fn r#connect_req(&self, req: &ConnectRequest) -> Result<(), fidl::Error>;
427 fn r#reconnect_req(&self, req: &ReconnectRequest) -> Result<(), fidl::Error>;
428 fn r#roam_req(&self, req: &RoamRequest) -> Result<(), fidl::Error>;
429 fn r#authenticate_resp(&self, resp: &AuthenticateResponse) -> Result<(), fidl::Error>;
430 fn r#deauthenticate_req(&self, req: &DeauthenticateRequest) -> Result<(), fidl::Error>;
431 fn r#associate_resp(&self, resp: &AssociateResponse) -> Result<(), fidl::Error>;
432 fn r#disassociate_req(&self, req: &DisassociateRequest) -> Result<(), fidl::Error>;
433 fn r#reset_req(&self, req: &ResetRequest) -> Result<(), fidl::Error>;
434 fn r#start_req(&self, req: &StartRequest) -> Result<(), fidl::Error>;
435 fn r#stop_req(&self, req: &StopRequest) -> Result<(), fidl::Error>;
436 fn r#set_keys_req(&self, req: &SetKeysRequest) -> Result<(), fidl::Error>;
437 fn r#delete_keys_req(&self, req: &DeleteKeysRequest) -> Result<(), fidl::Error>;
438 fn r#eapol_req(&self, req: &EapolRequest) -> Result<(), fidl::Error>;
439 fn r#set_controlled_port(&self, req: &SetControlledPortRequest) -> Result<(), fidl::Error>;
440 type QueryDeviceInfoResponseFut: std::future::Future<Output = Result<DeviceInfo, fidl::Error>>
441 + Send;
442 fn r#query_device_info(&self) -> Self::QueryDeviceInfoResponseFut;
443 type QueryTelemetrySupportResponseFut: std::future::Future<Output = Result<MlmeQueryTelemetrySupportResult, fidl::Error>>
444 + Send;
445 fn r#query_telemetry_support(&self) -> Self::QueryTelemetrySupportResponseFut;
446 type GetIfaceStatsResponseFut: std::future::Future<Output = Result<GetIfaceStatsResponse, fidl::Error>>
447 + Send;
448 fn r#get_iface_stats(&self) -> Self::GetIfaceStatsResponseFut;
449 type GetIfaceHistogramStatsResponseFut: std::future::Future<Output = Result<GetIfaceHistogramStatsResponse, fidl::Error>>
450 + Send;
451 fn r#get_iface_histogram_stats(&self) -> Self::GetIfaceHistogramStatsResponseFut;
452 type GetSignalReportResponseFut: std::future::Future<Output = Result<MlmeGetSignalReportResult, fidl::Error>>
453 + Send;
454 fn r#get_signal_report(&self) -> Self::GetSignalReportResponseFut;
455 type ListMinstrelPeersResponseFut: std::future::Future<Output = Result<MinstrelListResponse, fidl::Error>>
456 + Send;
457 fn r#list_minstrel_peers(&self) -> Self::ListMinstrelPeersResponseFut;
458 type GetMinstrelStatsResponseFut: std::future::Future<Output = Result<MinstrelStatsResponse, fidl::Error>>
459 + Send;
460 fn r#get_minstrel_stats(&self, req: &MinstrelStatsRequest)
461 -> Self::GetMinstrelStatsResponseFut;
462 type StartCaptureFramesResponseFut: std::future::Future<Output = Result<StartCaptureFramesResponse, fidl::Error>>
463 + Send;
464 fn r#start_capture_frames(
465 &self,
466 req: &StartCaptureFramesRequest,
467 ) -> Self::StartCaptureFramesResponseFut;
468 fn r#stop_capture_frames(&self) -> Result<(), fidl::Error>;
469 fn r#sae_handshake_resp(&self, resp: &SaeHandshakeResponse) -> Result<(), fidl::Error>;
470 fn r#sae_frame_tx(&self, frame: &SaeFrame) -> Result<(), fidl::Error>;
471 fn r#wmm_status_req(&self) -> Result<(), fidl::Error>;
472 fn r#finalize_association_req(
473 &self,
474 negotiated_capabilities: &NegotiatedCapabilities,
475 ) -> Result<(), fidl::Error>;
476 type SetMacAddressResponseFut: std::future::Future<Output = Result<MlmeSetMacAddressResult, fidl::Error>>
477 + Send;
478 fn r#set_mac_address(&self, mac_addr: &[u8; 6]) -> Self::SetMacAddressResponseFut;
479 type InstallApfPacketFilterResponseFut: std::future::Future<Output = Result<MlmeInstallApfPacketFilterResult, fidl::Error>>
480 + Send;
481 fn r#install_apf_packet_filter(
482 &self,
483 program: &[u8],
484 ) -> Self::InstallApfPacketFilterResponseFut;
485 type ReadApfPacketFilterDataResponseFut: std::future::Future<Output = Result<MlmeReadApfPacketFilterDataResult, fidl::Error>>
486 + Send;
487 fn r#read_apf_packet_filter_data(&self) -> Self::ReadApfPacketFilterDataResponseFut;
488 type SetApfPacketFilterEnabledResponseFut: std::future::Future<Output = Result<MlmeSetApfPacketFilterEnabledResult, fidl::Error>>
489 + Send;
490 fn r#set_apf_packet_filter_enabled(
491 &self,
492 enabled: bool,
493 ) -> Self::SetApfPacketFilterEnabledResponseFut;
494 type GetApfPacketFilterEnabledResponseFut: std::future::Future<Output = Result<MlmeGetApfPacketFilterEnabledResult, fidl::Error>>
495 + Send;
496 fn r#get_apf_packet_filter_enabled(&self) -> Self::GetApfPacketFilterEnabledResponseFut;
497 type StartRssiMonitorResponseFut: std::future::Future<Output = Result<MlmeStartRssiMonitorResult, fidl::Error>>
498 + Send;
499 fn r#start_rssi_monitor(
500 &self,
501 min_rssi_dbm: i8,
502 max_rssi_dbm: i8,
503 ) -> Self::StartRssiMonitorResponseFut;
504}
505#[derive(Debug)]
506#[cfg(target_os = "fuchsia")]
507pub struct MlmeSynchronousProxy {
508 client: fidl::client::sync::Client,
509}
510
511#[cfg(target_os = "fuchsia")]
512impl fidl::endpoints::SynchronousProxy for MlmeSynchronousProxy {
513 type Proxy = MlmeProxy;
514 type Protocol = MlmeMarker;
515
516 fn from_channel(inner: fidl::Channel) -> Self {
517 Self::new(inner)
518 }
519
520 fn into_channel(self) -> fidl::Channel {
521 self.client.into_channel()
522 }
523
524 fn as_channel(&self) -> &fidl::Channel {
525 self.client.as_channel()
526 }
527}
528
529#[cfg(target_os = "fuchsia")]
530impl MlmeSynchronousProxy {
531 pub fn new(channel: fidl::Channel) -> Self {
532 Self { client: fidl::client::sync::Client::new(channel) }
533 }
534
535 pub fn into_channel(self) -> fidl::Channel {
536 self.client.into_channel()
537 }
538
539 pub fn wait_for_event(&self, deadline: zx::MonotonicInstant) -> Result<MlmeEvent, fidl::Error> {
542 MlmeEvent::decode(self.client.wait_for_event::<MlmeMarker>(deadline)?)
543 }
544
545 pub fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
546 self.client.send::<MlmeStartScanRequest>(
547 (req,),
548 0x342cc5ec6a957479,
549 fidl::encoding::DynamicFlags::empty(),
550 )
551 }
552
553 pub fn r#start_scheduled_scan(
555 &self,
556 mut txn_id: u64,
557 mut req: &fidl_fuchsia_wlan_common::ScheduledScanRequest,
558 ___deadline: zx::MonotonicInstant,
559 ) -> Result<MlmeStartScheduledScanResult, fidl::Error> {
560 let _response = self.client.send_query::<
561 MlmeStartScheduledScanRequest,
562 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
563 MlmeMarker,
564 >(
565 (txn_id, req,),
566 0x7fff163af4620212,
567 fidl::encoding::DynamicFlags::empty(),
568 ___deadline,
569 )?;
570 Ok(_response.map(|x| x))
571 }
572
573 pub fn r#stop_scheduled_scan(
575 &self,
576 mut txn_id: u64,
577 ___deadline: zx::MonotonicInstant,
578 ) -> Result<MlmeStopScheduledScanResult, fidl::Error> {
579 let _response = self.client.send_query::<
580 MlmeStopScheduledScanRequest,
581 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
582 MlmeMarker,
583 >(
584 (txn_id,),
585 0x5fbc466f3daa4dd9,
586 fidl::encoding::DynamicFlags::empty(),
587 ___deadline,
588 )?;
589 Ok(_response.map(|x| x))
590 }
591
592 pub fn r#get_scheduled_scan_enabled(
594 &self,
595 ___deadline: zx::MonotonicInstant,
596 ) -> Result<MlmeGetScheduledScanEnabledResult, fidl::Error> {
597 let _response = self.client.send_query::<
598 fidl::encoding::EmptyPayload,
599 fidl::encoding::ResultType<MlmeGetScheduledScanEnabledResponse, i32>,
600 MlmeMarker,
601 >(
602 (),
603 0x1ecc6a7fe7f9fcff,
604 fidl::encoding::DynamicFlags::empty(),
605 ___deadline,
606 )?;
607 Ok(_response.map(|x| x.active_txn_ids))
608 }
609
610 pub fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
611 self.client.send::<MlmeConnectReqRequest>(
612 (req,),
613 0x31153dc85f8f64c,
614 fidl::encoding::DynamicFlags::empty(),
615 )
616 }
617
618 pub fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
619 self.client.send::<MlmeReconnectReqRequest>(
620 (req,),
621 0x74e0f1bd758b6b78,
622 fidl::encoding::DynamicFlags::empty(),
623 )
624 }
625
626 pub fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
628 self.client.send::<MlmeRoamReqRequest>(
629 (req,),
630 0x3ba163eadf7dba45,
631 fidl::encoding::DynamicFlags::empty(),
632 )
633 }
634
635 pub fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
636 self.client.send::<MlmeAuthenticateRespRequest>(
637 (resp,),
638 0x26108aade2fdd2f4,
639 fidl::encoding::DynamicFlags::empty(),
640 )
641 }
642
643 pub fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
644 self.client.send::<MlmeDeauthenticateReqRequest>(
645 (req,),
646 0x228983b200de5d12,
647 fidl::encoding::DynamicFlags::empty(),
648 )
649 }
650
651 pub fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
652 self.client.send::<MlmeAssociateRespRequest>(
653 (resp,),
654 0x70244dbd652ed6d9,
655 fidl::encoding::DynamicFlags::empty(),
656 )
657 }
658
659 pub fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
660 self.client.send::<MlmeDisassociateReqRequest>(
661 (req,),
662 0x5765807f1387d764,
663 fidl::encoding::DynamicFlags::empty(),
664 )
665 }
666
667 pub fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
668 self.client.send::<MlmeResetReqRequest>(
669 (req,),
670 0x780b98c58a286b9f,
671 fidl::encoding::DynamicFlags::empty(),
672 )
673 }
674
675 pub fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
676 self.client.send::<MlmeStartReqRequest>(
677 (req,),
678 0x5d95885f8053654,
679 fidl::encoding::DynamicFlags::empty(),
680 )
681 }
682
683 pub fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
684 self.client.send::<MlmeStopReqRequest>(
685 (req,),
686 0x27b9a2ab04a2c79f,
687 fidl::encoding::DynamicFlags::empty(),
688 )
689 }
690
691 pub fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
692 self.client.send::<MlmeSetKeysReqRequest>(
693 (req,),
694 0x6b30a07fd3a11a79,
695 fidl::encoding::DynamicFlags::empty(),
696 )
697 }
698
699 pub fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
700 self.client.send::<MlmeDeleteKeysReqRequest>(
701 (req,),
702 0x1e3524d20d190c8f,
703 fidl::encoding::DynamicFlags::empty(),
704 )
705 }
706
707 pub fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
708 self.client.send::<MlmeEapolReqRequest>(
709 (req,),
710 0xc3c096924704d4,
711 fidl::encoding::DynamicFlags::empty(),
712 )
713 }
714
715 pub fn r#set_controlled_port(
716 &self,
717 mut req: &SetControlledPortRequest,
718 ) -> Result<(), fidl::Error> {
719 self.client.send::<MlmeSetControlledPortRequest>(
720 (req,),
721 0x4e47065668890c8d,
722 fidl::encoding::DynamicFlags::empty(),
723 )
724 }
725
726 pub fn r#query_device_info(
727 &self,
728 ___deadline: zx::MonotonicInstant,
729 ) -> Result<DeviceInfo, fidl::Error> {
730 let _response = self
731 .client
732 .send_query::<fidl::encoding::EmptyPayload, MlmeQueryDeviceInfoResponse, MlmeMarker>(
733 (),
734 0x6ee3e7f63f2b7bc0,
735 fidl::encoding::DynamicFlags::empty(),
736 ___deadline,
737 )?;
738 Ok(_response.info)
739 }
740
741 pub fn r#query_telemetry_support(
742 &self,
743 ___deadline: zx::MonotonicInstant,
744 ) -> Result<MlmeQueryTelemetrySupportResult, fidl::Error> {
745 let _response = self.client.send_query::<
746 fidl::encoding::EmptyPayload,
747 fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>,
748 MlmeMarker,
749 >(
750 (),
751 0x1598879b70332c99,
752 fidl::encoding::DynamicFlags::empty(),
753 ___deadline,
754 )?;
755 Ok(_response.map(|x| x.resp))
756 }
757
758 pub fn r#get_iface_stats(
759 &self,
760 ___deadline: zx::MonotonicInstant,
761 ) -> Result<GetIfaceStatsResponse, fidl::Error> {
762 let _response = self
763 .client
764 .send_query::<fidl::encoding::EmptyPayload, MlmeGetIfaceStatsResponse, MlmeMarker>(
765 (),
766 0xede1a8342d1b211,
767 fidl::encoding::DynamicFlags::empty(),
768 ___deadline,
769 )?;
770 Ok(_response.resp)
771 }
772
773 pub fn r#get_iface_histogram_stats(
774 &self,
775 ___deadline: zx::MonotonicInstant,
776 ) -> Result<GetIfaceHistogramStatsResponse, fidl::Error> {
777 let _response = self.client.send_query::<
778 fidl::encoding::EmptyPayload,
779 MlmeGetIfaceHistogramStatsResponse,
780 MlmeMarker,
781 >(
782 (),
783 0x1979c9d3449f8675,
784 fidl::encoding::DynamicFlags::empty(),
785 ___deadline,
786 )?;
787 Ok(_response.resp)
788 }
789
790 pub fn r#get_signal_report(
791 &self,
792 ___deadline: zx::MonotonicInstant,
793 ) -> Result<MlmeGetSignalReportResult, fidl::Error> {
794 let _response = self.client.send_query::<
795 fidl::encoding::EmptyPayload,
796 fidl::encoding::ResultType<MlmeGetSignalReportResponse, i32>,
797 MlmeMarker,
798 >(
799 (),
800 0x7e47e7ebe92acec9,
801 fidl::encoding::DynamicFlags::empty(),
802 ___deadline,
803 )?;
804 Ok(_response.map(|x| x.resp))
805 }
806
807 pub fn r#list_minstrel_peers(
808 &self,
809 ___deadline: zx::MonotonicInstant,
810 ) -> Result<MinstrelListResponse, fidl::Error> {
811 let _response = self
812 .client
813 .send_query::<fidl::encoding::EmptyPayload, MlmeListMinstrelPeersResponse, MlmeMarker>(
814 (),
815 0x4ac5d1e66fe1ffd5,
816 fidl::encoding::DynamicFlags::empty(),
817 ___deadline,
818 )?;
819 Ok(_response.resp)
820 }
821
822 pub fn r#get_minstrel_stats(
823 &self,
824 mut req: &MinstrelStatsRequest,
825 ___deadline: zx::MonotonicInstant,
826 ) -> Result<MinstrelStatsResponse, fidl::Error> {
827 let _response = self
828 .client
829 .send_query::<MlmeGetMinstrelStatsRequest, MlmeGetMinstrelStatsResponse, MlmeMarker>(
830 (req,),
831 0x2f688b1245323f4b,
832 fidl::encoding::DynamicFlags::empty(),
833 ___deadline,
834 )?;
835 Ok(_response.resp)
836 }
837
838 pub fn r#start_capture_frames(
839 &self,
840 mut req: &StartCaptureFramesRequest,
841 ___deadline: zx::MonotonicInstant,
842 ) -> Result<StartCaptureFramesResponse, fidl::Error> {
843 let _response = self.client.send_query::<
844 MlmeStartCaptureFramesRequest,
845 MlmeStartCaptureFramesResponse,
846 MlmeMarker,
847 >(
848 (req,),
849 0x23b369ed5749ee69,
850 fidl::encoding::DynamicFlags::empty(),
851 ___deadline,
852 )?;
853 Ok(_response.resp)
854 }
855
856 pub fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
857 self.client.send::<fidl::encoding::EmptyPayload>(
858 (),
859 0x2f1aebbc68bf7c54,
860 fidl::encoding::DynamicFlags::empty(),
861 )
862 }
863
864 pub fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
866 self.client.send::<MlmeSaeHandshakeRespRequest>(
867 (resp,),
868 0x28477bd2f7a5ab0c,
869 fidl::encoding::DynamicFlags::empty(),
870 )
871 }
872
873 pub fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
875 self.client.send::<MlmeSaeFrameTxRequest>(
876 (frame,),
877 0x7700c0d536733d8c,
878 fidl::encoding::DynamicFlags::empty(),
879 )
880 }
881
882 pub fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
883 self.client.send::<fidl::encoding::EmptyPayload>(
884 (),
885 0xef4851f6088fede,
886 fidl::encoding::DynamicFlags::empty(),
887 )
888 }
889
890 pub fn r#finalize_association_req(
891 &self,
892 mut negotiated_capabilities: &NegotiatedCapabilities,
893 ) -> Result<(), fidl::Error> {
894 self.client.send::<MlmeFinalizeAssociationReqRequest>(
895 (negotiated_capabilities,),
896 0x7aea59787cfd385a,
897 fidl::encoding::DynamicFlags::empty(),
898 )
899 }
900
901 pub fn r#set_mac_address(
902 &self,
903 mut mac_addr: &[u8; 6],
904 ___deadline: zx::MonotonicInstant,
905 ) -> Result<MlmeSetMacAddressResult, fidl::Error> {
906 let _response = self.client.send_query::<
907 MlmeSetMacAddressRequest,
908 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
909 MlmeMarker,
910 >(
911 (mac_addr,),
912 0x476999f9bb27afe1,
913 fidl::encoding::DynamicFlags::empty(),
914 ___deadline,
915 )?;
916 Ok(_response.map(|x| x))
917 }
918
919 pub fn r#install_apf_packet_filter(
920 &self,
921 mut program: &[u8],
922 ___deadline: zx::MonotonicInstant,
923 ) -> Result<MlmeInstallApfPacketFilterResult, fidl::Error> {
924 let _response = self.client.send_query::<
925 MlmeInstallApfPacketFilterRequest,
926 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
927 MlmeMarker,
928 >(
929 (program,),
930 0x267565b4916c825b,
931 fidl::encoding::DynamicFlags::empty(),
932 ___deadline,
933 )?;
934 Ok(_response.map(|x| x))
935 }
936
937 pub fn r#read_apf_packet_filter_data(
938 &self,
939 ___deadline: zx::MonotonicInstant,
940 ) -> Result<MlmeReadApfPacketFilterDataResult, fidl::Error> {
941 let _response = self.client.send_query::<
942 fidl::encoding::EmptyPayload,
943 fidl::encoding::ResultType<MlmeReadApfPacketFilterDataResponse, i32>,
944 MlmeMarker,
945 >(
946 (),
947 0x6040d744f1b2cb61,
948 fidl::encoding::DynamicFlags::empty(),
949 ___deadline,
950 )?;
951 Ok(_response.map(|x| x.memory))
952 }
953
954 pub fn r#set_apf_packet_filter_enabled(
955 &self,
956 mut enabled: bool,
957 ___deadline: zx::MonotonicInstant,
958 ) -> Result<MlmeSetApfPacketFilterEnabledResult, fidl::Error> {
959 let _response = self.client.send_query::<
960 MlmeSetApfPacketFilterEnabledRequest,
961 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
962 MlmeMarker,
963 >(
964 (enabled,),
965 0x6d99bdca77076aea,
966 fidl::encoding::DynamicFlags::empty(),
967 ___deadline,
968 )?;
969 Ok(_response.map(|x| x))
970 }
971
972 pub fn r#get_apf_packet_filter_enabled(
973 &self,
974 ___deadline: zx::MonotonicInstant,
975 ) -> Result<MlmeGetApfPacketFilterEnabledResult, fidl::Error> {
976 let _response = self.client.send_query::<
977 fidl::encoding::EmptyPayload,
978 fidl::encoding::ResultType<MlmeGetApfPacketFilterEnabledResponse, i32>,
979 MlmeMarker,
980 >(
981 (),
982 0x1df408bc154be1e4,
983 fidl::encoding::DynamicFlags::empty(),
984 ___deadline,
985 )?;
986 Ok(_response.map(|x| x.enabled))
987 }
988
989 pub fn r#start_rssi_monitor(
990 &self,
991 mut min_rssi_dbm: i8,
992 mut max_rssi_dbm: i8,
993 ___deadline: zx::MonotonicInstant,
994 ) -> Result<MlmeStartRssiMonitorResult, fidl::Error> {
995 let _response = self.client.send_query::<
996 MlmeStartRssiMonitorRequest,
997 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
998 MlmeMarker,
999 >(
1000 (min_rssi_dbm, max_rssi_dbm,),
1001 0x542a970415b1d912,
1002 fidl::encoding::DynamicFlags::empty(),
1003 ___deadline,
1004 )?;
1005 Ok(_response.map(|x| x))
1006 }
1007}
1008
1009#[cfg(target_os = "fuchsia")]
1010impl From<MlmeSynchronousProxy> for zx::NullableHandle {
1011 fn from(value: MlmeSynchronousProxy) -> Self {
1012 value.into_channel().into()
1013 }
1014}
1015
1016#[cfg(target_os = "fuchsia")]
1017impl From<fidl::Channel> for MlmeSynchronousProxy {
1018 fn from(value: fidl::Channel) -> Self {
1019 Self::new(value)
1020 }
1021}
1022
1023#[cfg(target_os = "fuchsia")]
1024impl fidl::endpoints::FromClient for MlmeSynchronousProxy {
1025 type Protocol = MlmeMarker;
1026
1027 fn from_client(value: fidl::endpoints::ClientEnd<MlmeMarker>) -> Self {
1028 Self::new(value.into_channel())
1029 }
1030}
1031
1032#[derive(Debug, Clone)]
1033pub struct MlmeProxy {
1034 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1035}
1036
1037impl fidl::endpoints::Proxy for MlmeProxy {
1038 type Protocol = MlmeMarker;
1039
1040 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1041 Self::new(inner)
1042 }
1043
1044 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1045 self.client.into_channel().map_err(|client| Self { client })
1046 }
1047
1048 fn as_channel(&self) -> &::fidl::AsyncChannel {
1049 self.client.as_channel()
1050 }
1051}
1052
1053impl MlmeProxy {
1054 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1056 let protocol_name = <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1057 Self { client: fidl::client::Client::new(channel, protocol_name) }
1058 }
1059
1060 pub fn take_event_stream(&self) -> MlmeEventStream {
1066 MlmeEventStream { event_receiver: self.client.take_event_receiver() }
1067 }
1068
1069 pub fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
1070 MlmeProxyInterface::r#start_scan(self, req)
1071 }
1072
1073 pub fn r#start_scheduled_scan(
1075 &self,
1076 mut txn_id: u64,
1077 mut req: &fidl_fuchsia_wlan_common::ScheduledScanRequest,
1078 ) -> fidl::client::QueryResponseFut<
1079 MlmeStartScheduledScanResult,
1080 fidl::encoding::DefaultFuchsiaResourceDialect,
1081 > {
1082 MlmeProxyInterface::r#start_scheduled_scan(self, txn_id, req)
1083 }
1084
1085 pub fn r#stop_scheduled_scan(
1087 &self,
1088 mut txn_id: u64,
1089 ) -> fidl::client::QueryResponseFut<
1090 MlmeStopScheduledScanResult,
1091 fidl::encoding::DefaultFuchsiaResourceDialect,
1092 > {
1093 MlmeProxyInterface::r#stop_scheduled_scan(self, txn_id)
1094 }
1095
1096 pub fn r#get_scheduled_scan_enabled(
1098 &self,
1099 ) -> fidl::client::QueryResponseFut<
1100 MlmeGetScheduledScanEnabledResult,
1101 fidl::encoding::DefaultFuchsiaResourceDialect,
1102 > {
1103 MlmeProxyInterface::r#get_scheduled_scan_enabled(self)
1104 }
1105
1106 pub fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
1107 MlmeProxyInterface::r#connect_req(self, req)
1108 }
1109
1110 pub fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
1111 MlmeProxyInterface::r#reconnect_req(self, req)
1112 }
1113
1114 pub fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
1116 MlmeProxyInterface::r#roam_req(self, req)
1117 }
1118
1119 pub fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
1120 MlmeProxyInterface::r#authenticate_resp(self, resp)
1121 }
1122
1123 pub fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
1124 MlmeProxyInterface::r#deauthenticate_req(self, req)
1125 }
1126
1127 pub fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
1128 MlmeProxyInterface::r#associate_resp(self, resp)
1129 }
1130
1131 pub fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
1132 MlmeProxyInterface::r#disassociate_req(self, req)
1133 }
1134
1135 pub fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
1136 MlmeProxyInterface::r#reset_req(self, req)
1137 }
1138
1139 pub fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
1140 MlmeProxyInterface::r#start_req(self, req)
1141 }
1142
1143 pub fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
1144 MlmeProxyInterface::r#stop_req(self, req)
1145 }
1146
1147 pub fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
1148 MlmeProxyInterface::r#set_keys_req(self, req)
1149 }
1150
1151 pub fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
1152 MlmeProxyInterface::r#delete_keys_req(self, req)
1153 }
1154
1155 pub fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
1156 MlmeProxyInterface::r#eapol_req(self, req)
1157 }
1158
1159 pub fn r#set_controlled_port(
1160 &self,
1161 mut req: &SetControlledPortRequest,
1162 ) -> Result<(), fidl::Error> {
1163 MlmeProxyInterface::r#set_controlled_port(self, req)
1164 }
1165
1166 pub fn r#query_device_info(
1167 &self,
1168 ) -> fidl::client::QueryResponseFut<DeviceInfo, fidl::encoding::DefaultFuchsiaResourceDialect>
1169 {
1170 MlmeProxyInterface::r#query_device_info(self)
1171 }
1172
1173 pub fn r#query_telemetry_support(
1174 &self,
1175 ) -> fidl::client::QueryResponseFut<
1176 MlmeQueryTelemetrySupportResult,
1177 fidl::encoding::DefaultFuchsiaResourceDialect,
1178 > {
1179 MlmeProxyInterface::r#query_telemetry_support(self)
1180 }
1181
1182 pub fn r#get_iface_stats(
1183 &self,
1184 ) -> fidl::client::QueryResponseFut<
1185 GetIfaceStatsResponse,
1186 fidl::encoding::DefaultFuchsiaResourceDialect,
1187 > {
1188 MlmeProxyInterface::r#get_iface_stats(self)
1189 }
1190
1191 pub fn r#get_iface_histogram_stats(
1192 &self,
1193 ) -> fidl::client::QueryResponseFut<
1194 GetIfaceHistogramStatsResponse,
1195 fidl::encoding::DefaultFuchsiaResourceDialect,
1196 > {
1197 MlmeProxyInterface::r#get_iface_histogram_stats(self)
1198 }
1199
1200 pub fn r#get_signal_report(
1201 &self,
1202 ) -> fidl::client::QueryResponseFut<
1203 MlmeGetSignalReportResult,
1204 fidl::encoding::DefaultFuchsiaResourceDialect,
1205 > {
1206 MlmeProxyInterface::r#get_signal_report(self)
1207 }
1208
1209 pub fn r#list_minstrel_peers(
1210 &self,
1211 ) -> fidl::client::QueryResponseFut<
1212 MinstrelListResponse,
1213 fidl::encoding::DefaultFuchsiaResourceDialect,
1214 > {
1215 MlmeProxyInterface::r#list_minstrel_peers(self)
1216 }
1217
1218 pub fn r#get_minstrel_stats(
1219 &self,
1220 mut req: &MinstrelStatsRequest,
1221 ) -> fidl::client::QueryResponseFut<
1222 MinstrelStatsResponse,
1223 fidl::encoding::DefaultFuchsiaResourceDialect,
1224 > {
1225 MlmeProxyInterface::r#get_minstrel_stats(self, req)
1226 }
1227
1228 pub fn r#start_capture_frames(
1229 &self,
1230 mut req: &StartCaptureFramesRequest,
1231 ) -> fidl::client::QueryResponseFut<
1232 StartCaptureFramesResponse,
1233 fidl::encoding::DefaultFuchsiaResourceDialect,
1234 > {
1235 MlmeProxyInterface::r#start_capture_frames(self, req)
1236 }
1237
1238 pub fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
1239 MlmeProxyInterface::r#stop_capture_frames(self)
1240 }
1241
1242 pub fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
1244 MlmeProxyInterface::r#sae_handshake_resp(self, resp)
1245 }
1246
1247 pub fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
1249 MlmeProxyInterface::r#sae_frame_tx(self, frame)
1250 }
1251
1252 pub fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
1253 MlmeProxyInterface::r#wmm_status_req(self)
1254 }
1255
1256 pub fn r#finalize_association_req(
1257 &self,
1258 mut negotiated_capabilities: &NegotiatedCapabilities,
1259 ) -> Result<(), fidl::Error> {
1260 MlmeProxyInterface::r#finalize_association_req(self, negotiated_capabilities)
1261 }
1262
1263 pub fn r#set_mac_address(
1264 &self,
1265 mut mac_addr: &[u8; 6],
1266 ) -> fidl::client::QueryResponseFut<
1267 MlmeSetMacAddressResult,
1268 fidl::encoding::DefaultFuchsiaResourceDialect,
1269 > {
1270 MlmeProxyInterface::r#set_mac_address(self, mac_addr)
1271 }
1272
1273 pub fn r#install_apf_packet_filter(
1274 &self,
1275 mut program: &[u8],
1276 ) -> fidl::client::QueryResponseFut<
1277 MlmeInstallApfPacketFilterResult,
1278 fidl::encoding::DefaultFuchsiaResourceDialect,
1279 > {
1280 MlmeProxyInterface::r#install_apf_packet_filter(self, program)
1281 }
1282
1283 pub fn r#read_apf_packet_filter_data(
1284 &self,
1285 ) -> fidl::client::QueryResponseFut<
1286 MlmeReadApfPacketFilterDataResult,
1287 fidl::encoding::DefaultFuchsiaResourceDialect,
1288 > {
1289 MlmeProxyInterface::r#read_apf_packet_filter_data(self)
1290 }
1291
1292 pub fn r#set_apf_packet_filter_enabled(
1293 &self,
1294 mut enabled: bool,
1295 ) -> fidl::client::QueryResponseFut<
1296 MlmeSetApfPacketFilterEnabledResult,
1297 fidl::encoding::DefaultFuchsiaResourceDialect,
1298 > {
1299 MlmeProxyInterface::r#set_apf_packet_filter_enabled(self, enabled)
1300 }
1301
1302 pub fn r#get_apf_packet_filter_enabled(
1303 &self,
1304 ) -> fidl::client::QueryResponseFut<
1305 MlmeGetApfPacketFilterEnabledResult,
1306 fidl::encoding::DefaultFuchsiaResourceDialect,
1307 > {
1308 MlmeProxyInterface::r#get_apf_packet_filter_enabled(self)
1309 }
1310
1311 pub fn r#start_rssi_monitor(
1312 &self,
1313 mut min_rssi_dbm: i8,
1314 mut max_rssi_dbm: i8,
1315 ) -> fidl::client::QueryResponseFut<
1316 MlmeStartRssiMonitorResult,
1317 fidl::encoding::DefaultFuchsiaResourceDialect,
1318 > {
1319 MlmeProxyInterface::r#start_rssi_monitor(self, min_rssi_dbm, max_rssi_dbm)
1320 }
1321}
1322
1323impl MlmeProxyInterface for MlmeProxy {
1324 fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
1325 self.client.send::<MlmeStartScanRequest>(
1326 (req,),
1327 0x342cc5ec6a957479,
1328 fidl::encoding::DynamicFlags::empty(),
1329 )
1330 }
1331
1332 type StartScheduledScanResponseFut = fidl::client::QueryResponseFut<
1333 MlmeStartScheduledScanResult,
1334 fidl::encoding::DefaultFuchsiaResourceDialect,
1335 >;
1336 fn r#start_scheduled_scan(
1337 &self,
1338 mut txn_id: u64,
1339 mut req: &fidl_fuchsia_wlan_common::ScheduledScanRequest,
1340 ) -> Self::StartScheduledScanResponseFut {
1341 fn _decode(
1342 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1343 ) -> Result<MlmeStartScheduledScanResult, fidl::Error> {
1344 let _response = fidl::client::decode_transaction_body::<
1345 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1346 fidl::encoding::DefaultFuchsiaResourceDialect,
1347 0x7fff163af4620212,
1348 >(_buf?)?;
1349 Ok(_response.map(|x| x))
1350 }
1351 self.client
1352 .send_query_and_decode::<MlmeStartScheduledScanRequest, MlmeStartScheduledScanResult>(
1353 (txn_id, req),
1354 0x7fff163af4620212,
1355 fidl::encoding::DynamicFlags::empty(),
1356 _decode,
1357 )
1358 }
1359
1360 type StopScheduledScanResponseFut = fidl::client::QueryResponseFut<
1361 MlmeStopScheduledScanResult,
1362 fidl::encoding::DefaultFuchsiaResourceDialect,
1363 >;
1364 fn r#stop_scheduled_scan(&self, mut txn_id: u64) -> Self::StopScheduledScanResponseFut {
1365 fn _decode(
1366 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1367 ) -> Result<MlmeStopScheduledScanResult, fidl::Error> {
1368 let _response = fidl::client::decode_transaction_body::<
1369 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1370 fidl::encoding::DefaultFuchsiaResourceDialect,
1371 0x5fbc466f3daa4dd9,
1372 >(_buf?)?;
1373 Ok(_response.map(|x| x))
1374 }
1375 self.client
1376 .send_query_and_decode::<MlmeStopScheduledScanRequest, MlmeStopScheduledScanResult>(
1377 (txn_id,),
1378 0x5fbc466f3daa4dd9,
1379 fidl::encoding::DynamicFlags::empty(),
1380 _decode,
1381 )
1382 }
1383
1384 type GetScheduledScanEnabledResponseFut = fidl::client::QueryResponseFut<
1385 MlmeGetScheduledScanEnabledResult,
1386 fidl::encoding::DefaultFuchsiaResourceDialect,
1387 >;
1388 fn r#get_scheduled_scan_enabled(&self) -> Self::GetScheduledScanEnabledResponseFut {
1389 fn _decode(
1390 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1391 ) -> Result<MlmeGetScheduledScanEnabledResult, fidl::Error> {
1392 let _response = fidl::client::decode_transaction_body::<
1393 fidl::encoding::ResultType<MlmeGetScheduledScanEnabledResponse, i32>,
1394 fidl::encoding::DefaultFuchsiaResourceDialect,
1395 0x1ecc6a7fe7f9fcff,
1396 >(_buf?)?;
1397 Ok(_response.map(|x| x.active_txn_ids))
1398 }
1399 self.client.send_query_and_decode::<
1400 fidl::encoding::EmptyPayload,
1401 MlmeGetScheduledScanEnabledResult,
1402 >(
1403 (),
1404 0x1ecc6a7fe7f9fcff,
1405 fidl::encoding::DynamicFlags::empty(),
1406 _decode,
1407 )
1408 }
1409
1410 fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
1411 self.client.send::<MlmeConnectReqRequest>(
1412 (req,),
1413 0x31153dc85f8f64c,
1414 fidl::encoding::DynamicFlags::empty(),
1415 )
1416 }
1417
1418 fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
1419 self.client.send::<MlmeReconnectReqRequest>(
1420 (req,),
1421 0x74e0f1bd758b6b78,
1422 fidl::encoding::DynamicFlags::empty(),
1423 )
1424 }
1425
1426 fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
1427 self.client.send::<MlmeRoamReqRequest>(
1428 (req,),
1429 0x3ba163eadf7dba45,
1430 fidl::encoding::DynamicFlags::empty(),
1431 )
1432 }
1433
1434 fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
1435 self.client.send::<MlmeAuthenticateRespRequest>(
1436 (resp,),
1437 0x26108aade2fdd2f4,
1438 fidl::encoding::DynamicFlags::empty(),
1439 )
1440 }
1441
1442 fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
1443 self.client.send::<MlmeDeauthenticateReqRequest>(
1444 (req,),
1445 0x228983b200de5d12,
1446 fidl::encoding::DynamicFlags::empty(),
1447 )
1448 }
1449
1450 fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
1451 self.client.send::<MlmeAssociateRespRequest>(
1452 (resp,),
1453 0x70244dbd652ed6d9,
1454 fidl::encoding::DynamicFlags::empty(),
1455 )
1456 }
1457
1458 fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
1459 self.client.send::<MlmeDisassociateReqRequest>(
1460 (req,),
1461 0x5765807f1387d764,
1462 fidl::encoding::DynamicFlags::empty(),
1463 )
1464 }
1465
1466 fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
1467 self.client.send::<MlmeResetReqRequest>(
1468 (req,),
1469 0x780b98c58a286b9f,
1470 fidl::encoding::DynamicFlags::empty(),
1471 )
1472 }
1473
1474 fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
1475 self.client.send::<MlmeStartReqRequest>(
1476 (req,),
1477 0x5d95885f8053654,
1478 fidl::encoding::DynamicFlags::empty(),
1479 )
1480 }
1481
1482 fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
1483 self.client.send::<MlmeStopReqRequest>(
1484 (req,),
1485 0x27b9a2ab04a2c79f,
1486 fidl::encoding::DynamicFlags::empty(),
1487 )
1488 }
1489
1490 fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
1491 self.client.send::<MlmeSetKeysReqRequest>(
1492 (req,),
1493 0x6b30a07fd3a11a79,
1494 fidl::encoding::DynamicFlags::empty(),
1495 )
1496 }
1497
1498 fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
1499 self.client.send::<MlmeDeleteKeysReqRequest>(
1500 (req,),
1501 0x1e3524d20d190c8f,
1502 fidl::encoding::DynamicFlags::empty(),
1503 )
1504 }
1505
1506 fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
1507 self.client.send::<MlmeEapolReqRequest>(
1508 (req,),
1509 0xc3c096924704d4,
1510 fidl::encoding::DynamicFlags::empty(),
1511 )
1512 }
1513
1514 fn r#set_controlled_port(&self, mut req: &SetControlledPortRequest) -> Result<(), fidl::Error> {
1515 self.client.send::<MlmeSetControlledPortRequest>(
1516 (req,),
1517 0x4e47065668890c8d,
1518 fidl::encoding::DynamicFlags::empty(),
1519 )
1520 }
1521
1522 type QueryDeviceInfoResponseFut =
1523 fidl::client::QueryResponseFut<DeviceInfo, fidl::encoding::DefaultFuchsiaResourceDialect>;
1524 fn r#query_device_info(&self) -> Self::QueryDeviceInfoResponseFut {
1525 fn _decode(
1526 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1527 ) -> Result<DeviceInfo, fidl::Error> {
1528 let _response = fidl::client::decode_transaction_body::<
1529 MlmeQueryDeviceInfoResponse,
1530 fidl::encoding::DefaultFuchsiaResourceDialect,
1531 0x6ee3e7f63f2b7bc0,
1532 >(_buf?)?;
1533 Ok(_response.info)
1534 }
1535 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, DeviceInfo>(
1536 (),
1537 0x6ee3e7f63f2b7bc0,
1538 fidl::encoding::DynamicFlags::empty(),
1539 _decode,
1540 )
1541 }
1542
1543 type QueryTelemetrySupportResponseFut = fidl::client::QueryResponseFut<
1544 MlmeQueryTelemetrySupportResult,
1545 fidl::encoding::DefaultFuchsiaResourceDialect,
1546 >;
1547 fn r#query_telemetry_support(&self) -> Self::QueryTelemetrySupportResponseFut {
1548 fn _decode(
1549 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1550 ) -> Result<MlmeQueryTelemetrySupportResult, fidl::Error> {
1551 let _response = fidl::client::decode_transaction_body::<
1552 fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>,
1553 fidl::encoding::DefaultFuchsiaResourceDialect,
1554 0x1598879b70332c99,
1555 >(_buf?)?;
1556 Ok(_response.map(|x| x.resp))
1557 }
1558 self.client
1559 .send_query_and_decode::<fidl::encoding::EmptyPayload, MlmeQueryTelemetrySupportResult>(
1560 (),
1561 0x1598879b70332c99,
1562 fidl::encoding::DynamicFlags::empty(),
1563 _decode,
1564 )
1565 }
1566
1567 type GetIfaceStatsResponseFut = fidl::client::QueryResponseFut<
1568 GetIfaceStatsResponse,
1569 fidl::encoding::DefaultFuchsiaResourceDialect,
1570 >;
1571 fn r#get_iface_stats(&self) -> Self::GetIfaceStatsResponseFut {
1572 fn _decode(
1573 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1574 ) -> Result<GetIfaceStatsResponse, fidl::Error> {
1575 let _response = fidl::client::decode_transaction_body::<
1576 MlmeGetIfaceStatsResponse,
1577 fidl::encoding::DefaultFuchsiaResourceDialect,
1578 0xede1a8342d1b211,
1579 >(_buf?)?;
1580 Ok(_response.resp)
1581 }
1582 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, GetIfaceStatsResponse>(
1583 (),
1584 0xede1a8342d1b211,
1585 fidl::encoding::DynamicFlags::empty(),
1586 _decode,
1587 )
1588 }
1589
1590 type GetIfaceHistogramStatsResponseFut = fidl::client::QueryResponseFut<
1591 GetIfaceHistogramStatsResponse,
1592 fidl::encoding::DefaultFuchsiaResourceDialect,
1593 >;
1594 fn r#get_iface_histogram_stats(&self) -> Self::GetIfaceHistogramStatsResponseFut {
1595 fn _decode(
1596 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1597 ) -> Result<GetIfaceHistogramStatsResponse, fidl::Error> {
1598 let _response = fidl::client::decode_transaction_body::<
1599 MlmeGetIfaceHistogramStatsResponse,
1600 fidl::encoding::DefaultFuchsiaResourceDialect,
1601 0x1979c9d3449f8675,
1602 >(_buf?)?;
1603 Ok(_response.resp)
1604 }
1605 self.client
1606 .send_query_and_decode::<fidl::encoding::EmptyPayload, GetIfaceHistogramStatsResponse>(
1607 (),
1608 0x1979c9d3449f8675,
1609 fidl::encoding::DynamicFlags::empty(),
1610 _decode,
1611 )
1612 }
1613
1614 type GetSignalReportResponseFut = fidl::client::QueryResponseFut<
1615 MlmeGetSignalReportResult,
1616 fidl::encoding::DefaultFuchsiaResourceDialect,
1617 >;
1618 fn r#get_signal_report(&self) -> Self::GetSignalReportResponseFut {
1619 fn _decode(
1620 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1621 ) -> Result<MlmeGetSignalReportResult, fidl::Error> {
1622 let _response = fidl::client::decode_transaction_body::<
1623 fidl::encoding::ResultType<MlmeGetSignalReportResponse, i32>,
1624 fidl::encoding::DefaultFuchsiaResourceDialect,
1625 0x7e47e7ebe92acec9,
1626 >(_buf?)?;
1627 Ok(_response.map(|x| x.resp))
1628 }
1629 self.client
1630 .send_query_and_decode::<fidl::encoding::EmptyPayload, MlmeGetSignalReportResult>(
1631 (),
1632 0x7e47e7ebe92acec9,
1633 fidl::encoding::DynamicFlags::empty(),
1634 _decode,
1635 )
1636 }
1637
1638 type ListMinstrelPeersResponseFut = fidl::client::QueryResponseFut<
1639 MinstrelListResponse,
1640 fidl::encoding::DefaultFuchsiaResourceDialect,
1641 >;
1642 fn r#list_minstrel_peers(&self) -> Self::ListMinstrelPeersResponseFut {
1643 fn _decode(
1644 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1645 ) -> Result<MinstrelListResponse, fidl::Error> {
1646 let _response = fidl::client::decode_transaction_body::<
1647 MlmeListMinstrelPeersResponse,
1648 fidl::encoding::DefaultFuchsiaResourceDialect,
1649 0x4ac5d1e66fe1ffd5,
1650 >(_buf?)?;
1651 Ok(_response.resp)
1652 }
1653 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, MinstrelListResponse>(
1654 (),
1655 0x4ac5d1e66fe1ffd5,
1656 fidl::encoding::DynamicFlags::empty(),
1657 _decode,
1658 )
1659 }
1660
1661 type GetMinstrelStatsResponseFut = fidl::client::QueryResponseFut<
1662 MinstrelStatsResponse,
1663 fidl::encoding::DefaultFuchsiaResourceDialect,
1664 >;
1665 fn r#get_minstrel_stats(
1666 &self,
1667 mut req: &MinstrelStatsRequest,
1668 ) -> Self::GetMinstrelStatsResponseFut {
1669 fn _decode(
1670 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1671 ) -> Result<MinstrelStatsResponse, fidl::Error> {
1672 let _response = fidl::client::decode_transaction_body::<
1673 MlmeGetMinstrelStatsResponse,
1674 fidl::encoding::DefaultFuchsiaResourceDialect,
1675 0x2f688b1245323f4b,
1676 >(_buf?)?;
1677 Ok(_response.resp)
1678 }
1679 self.client.send_query_and_decode::<MlmeGetMinstrelStatsRequest, MinstrelStatsResponse>(
1680 (req,),
1681 0x2f688b1245323f4b,
1682 fidl::encoding::DynamicFlags::empty(),
1683 _decode,
1684 )
1685 }
1686
1687 type StartCaptureFramesResponseFut = fidl::client::QueryResponseFut<
1688 StartCaptureFramesResponse,
1689 fidl::encoding::DefaultFuchsiaResourceDialect,
1690 >;
1691 fn r#start_capture_frames(
1692 &self,
1693 mut req: &StartCaptureFramesRequest,
1694 ) -> Self::StartCaptureFramesResponseFut {
1695 fn _decode(
1696 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1697 ) -> Result<StartCaptureFramesResponse, fidl::Error> {
1698 let _response = fidl::client::decode_transaction_body::<
1699 MlmeStartCaptureFramesResponse,
1700 fidl::encoding::DefaultFuchsiaResourceDialect,
1701 0x23b369ed5749ee69,
1702 >(_buf?)?;
1703 Ok(_response.resp)
1704 }
1705 self.client
1706 .send_query_and_decode::<MlmeStartCaptureFramesRequest, StartCaptureFramesResponse>(
1707 (req,),
1708 0x23b369ed5749ee69,
1709 fidl::encoding::DynamicFlags::empty(),
1710 _decode,
1711 )
1712 }
1713
1714 fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
1715 self.client.send::<fidl::encoding::EmptyPayload>(
1716 (),
1717 0x2f1aebbc68bf7c54,
1718 fidl::encoding::DynamicFlags::empty(),
1719 )
1720 }
1721
1722 fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
1723 self.client.send::<MlmeSaeHandshakeRespRequest>(
1724 (resp,),
1725 0x28477bd2f7a5ab0c,
1726 fidl::encoding::DynamicFlags::empty(),
1727 )
1728 }
1729
1730 fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
1731 self.client.send::<MlmeSaeFrameTxRequest>(
1732 (frame,),
1733 0x7700c0d536733d8c,
1734 fidl::encoding::DynamicFlags::empty(),
1735 )
1736 }
1737
1738 fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
1739 self.client.send::<fidl::encoding::EmptyPayload>(
1740 (),
1741 0xef4851f6088fede,
1742 fidl::encoding::DynamicFlags::empty(),
1743 )
1744 }
1745
1746 fn r#finalize_association_req(
1747 &self,
1748 mut negotiated_capabilities: &NegotiatedCapabilities,
1749 ) -> Result<(), fidl::Error> {
1750 self.client.send::<MlmeFinalizeAssociationReqRequest>(
1751 (negotiated_capabilities,),
1752 0x7aea59787cfd385a,
1753 fidl::encoding::DynamicFlags::empty(),
1754 )
1755 }
1756
1757 type SetMacAddressResponseFut = fidl::client::QueryResponseFut<
1758 MlmeSetMacAddressResult,
1759 fidl::encoding::DefaultFuchsiaResourceDialect,
1760 >;
1761 fn r#set_mac_address(&self, mut mac_addr: &[u8; 6]) -> Self::SetMacAddressResponseFut {
1762 fn _decode(
1763 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1764 ) -> Result<MlmeSetMacAddressResult, fidl::Error> {
1765 let _response = fidl::client::decode_transaction_body::<
1766 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1767 fidl::encoding::DefaultFuchsiaResourceDialect,
1768 0x476999f9bb27afe1,
1769 >(_buf?)?;
1770 Ok(_response.map(|x| x))
1771 }
1772 self.client.send_query_and_decode::<MlmeSetMacAddressRequest, MlmeSetMacAddressResult>(
1773 (mac_addr,),
1774 0x476999f9bb27afe1,
1775 fidl::encoding::DynamicFlags::empty(),
1776 _decode,
1777 )
1778 }
1779
1780 type InstallApfPacketFilterResponseFut = fidl::client::QueryResponseFut<
1781 MlmeInstallApfPacketFilterResult,
1782 fidl::encoding::DefaultFuchsiaResourceDialect,
1783 >;
1784 fn r#install_apf_packet_filter(
1785 &self,
1786 mut program: &[u8],
1787 ) -> Self::InstallApfPacketFilterResponseFut {
1788 fn _decode(
1789 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1790 ) -> Result<MlmeInstallApfPacketFilterResult, fidl::Error> {
1791 let _response = fidl::client::decode_transaction_body::<
1792 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1793 fidl::encoding::DefaultFuchsiaResourceDialect,
1794 0x267565b4916c825b,
1795 >(_buf?)?;
1796 Ok(_response.map(|x| x))
1797 }
1798 self.client.send_query_and_decode::<
1799 MlmeInstallApfPacketFilterRequest,
1800 MlmeInstallApfPacketFilterResult,
1801 >(
1802 (program,),
1803 0x267565b4916c825b,
1804 fidl::encoding::DynamicFlags::empty(),
1805 _decode,
1806 )
1807 }
1808
1809 type ReadApfPacketFilterDataResponseFut = fidl::client::QueryResponseFut<
1810 MlmeReadApfPacketFilterDataResult,
1811 fidl::encoding::DefaultFuchsiaResourceDialect,
1812 >;
1813 fn r#read_apf_packet_filter_data(&self) -> Self::ReadApfPacketFilterDataResponseFut {
1814 fn _decode(
1815 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1816 ) -> Result<MlmeReadApfPacketFilterDataResult, fidl::Error> {
1817 let _response = fidl::client::decode_transaction_body::<
1818 fidl::encoding::ResultType<MlmeReadApfPacketFilterDataResponse, i32>,
1819 fidl::encoding::DefaultFuchsiaResourceDialect,
1820 0x6040d744f1b2cb61,
1821 >(_buf?)?;
1822 Ok(_response.map(|x| x.memory))
1823 }
1824 self.client.send_query_and_decode::<
1825 fidl::encoding::EmptyPayload,
1826 MlmeReadApfPacketFilterDataResult,
1827 >(
1828 (),
1829 0x6040d744f1b2cb61,
1830 fidl::encoding::DynamicFlags::empty(),
1831 _decode,
1832 )
1833 }
1834
1835 type SetApfPacketFilterEnabledResponseFut = fidl::client::QueryResponseFut<
1836 MlmeSetApfPacketFilterEnabledResult,
1837 fidl::encoding::DefaultFuchsiaResourceDialect,
1838 >;
1839 fn r#set_apf_packet_filter_enabled(
1840 &self,
1841 mut enabled: bool,
1842 ) -> Self::SetApfPacketFilterEnabledResponseFut {
1843 fn _decode(
1844 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1845 ) -> Result<MlmeSetApfPacketFilterEnabledResult, fidl::Error> {
1846 let _response = fidl::client::decode_transaction_body::<
1847 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1848 fidl::encoding::DefaultFuchsiaResourceDialect,
1849 0x6d99bdca77076aea,
1850 >(_buf?)?;
1851 Ok(_response.map(|x| x))
1852 }
1853 self.client.send_query_and_decode::<
1854 MlmeSetApfPacketFilterEnabledRequest,
1855 MlmeSetApfPacketFilterEnabledResult,
1856 >(
1857 (enabled,),
1858 0x6d99bdca77076aea,
1859 fidl::encoding::DynamicFlags::empty(),
1860 _decode,
1861 )
1862 }
1863
1864 type GetApfPacketFilterEnabledResponseFut = fidl::client::QueryResponseFut<
1865 MlmeGetApfPacketFilterEnabledResult,
1866 fidl::encoding::DefaultFuchsiaResourceDialect,
1867 >;
1868 fn r#get_apf_packet_filter_enabled(&self) -> Self::GetApfPacketFilterEnabledResponseFut {
1869 fn _decode(
1870 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1871 ) -> Result<MlmeGetApfPacketFilterEnabledResult, fidl::Error> {
1872 let _response = fidl::client::decode_transaction_body::<
1873 fidl::encoding::ResultType<MlmeGetApfPacketFilterEnabledResponse, i32>,
1874 fidl::encoding::DefaultFuchsiaResourceDialect,
1875 0x1df408bc154be1e4,
1876 >(_buf?)?;
1877 Ok(_response.map(|x| x.enabled))
1878 }
1879 self.client.send_query_and_decode::<
1880 fidl::encoding::EmptyPayload,
1881 MlmeGetApfPacketFilterEnabledResult,
1882 >(
1883 (),
1884 0x1df408bc154be1e4,
1885 fidl::encoding::DynamicFlags::empty(),
1886 _decode,
1887 )
1888 }
1889
1890 type StartRssiMonitorResponseFut = fidl::client::QueryResponseFut<
1891 MlmeStartRssiMonitorResult,
1892 fidl::encoding::DefaultFuchsiaResourceDialect,
1893 >;
1894 fn r#start_rssi_monitor(
1895 &self,
1896 mut min_rssi_dbm: i8,
1897 mut max_rssi_dbm: i8,
1898 ) -> Self::StartRssiMonitorResponseFut {
1899 fn _decode(
1900 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1901 ) -> Result<MlmeStartRssiMonitorResult, fidl::Error> {
1902 let _response = fidl::client::decode_transaction_body::<
1903 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>,
1904 fidl::encoding::DefaultFuchsiaResourceDialect,
1905 0x542a970415b1d912,
1906 >(_buf?)?;
1907 Ok(_response.map(|x| x))
1908 }
1909 self.client
1910 .send_query_and_decode::<MlmeStartRssiMonitorRequest, MlmeStartRssiMonitorResult>(
1911 (min_rssi_dbm, max_rssi_dbm),
1912 0x542a970415b1d912,
1913 fidl::encoding::DynamicFlags::empty(),
1914 _decode,
1915 )
1916 }
1917}
1918
1919pub struct MlmeEventStream {
1920 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
1921}
1922
1923impl std::marker::Unpin for MlmeEventStream {}
1924
1925impl futures::stream::FusedStream for MlmeEventStream {
1926 fn is_terminated(&self) -> bool {
1927 self.event_receiver.is_terminated()
1928 }
1929}
1930
1931impl futures::Stream for MlmeEventStream {
1932 type Item = Result<MlmeEvent, fidl::Error>;
1933
1934 fn poll_next(
1935 mut self: std::pin::Pin<&mut Self>,
1936 cx: &mut std::task::Context<'_>,
1937 ) -> std::task::Poll<Option<Self::Item>> {
1938 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
1939 &mut self.event_receiver,
1940 cx
1941 )?) {
1942 Some(buf) => std::task::Poll::Ready(Some(MlmeEvent::decode(buf))),
1943 None => std::task::Poll::Ready(None),
1944 }
1945 }
1946}
1947
1948#[derive(Debug)]
1949pub enum MlmeEvent {
1950 OnScanResult { result: ScanResult },
1951 OnScanEnd { end: ScanEnd },
1952 OnScheduledScanMatchesAvailable { txn_id: u64 },
1953 OnScheduledScanStoppedByFirmware { txn_id: u64 },
1954 ConnectConf { resp: ConnectConfirm },
1955 RoamConf { conf: RoamConfirm },
1956 RoamStartInd { ind: RoamStartIndication },
1957 RoamResultInd { ind: RoamResultIndication },
1958 AuthenticateInd { ind: AuthenticateIndication },
1959 DeauthenticateConf { resp: DeauthenticateConfirm },
1960 DeauthenticateInd { ind: DeauthenticateIndication },
1961 AssociateInd { ind: AssociateIndication },
1962 DisassociateConf { resp: DisassociateConfirm },
1963 DisassociateInd { ind: DisassociateIndication },
1964 StartConf { resp: StartConfirm },
1965 StopConf { resp: StopConfirm },
1966 SetKeysConf { conf: SetKeysConfirm },
1967 EapolConf { resp: EapolConfirm },
1968 SignalReport { ind: fidl_fuchsia_wlan_internal::SignalReportIndication },
1969 OnRssiThresholdBreached { cur_rssi_dbm: i8 },
1970 EapolInd { ind: EapolIndication },
1971 RelayCapturedFrame { result: CapturedFrameResult },
1972 OnChannelSwitched { info: fidl_fuchsia_wlan_internal::ChannelSwitchInfo },
1973 OnPmkAvailable { info: PmkInfo },
1974 OnSaeHandshakeInd { ind: SaeHandshakeIndication },
1975 OnSaeFrameRx { frame: SaeFrame },
1976 OnWmmStatusResp { status: i32, resp: fidl_fuchsia_wlan_internal::WmmStatusResponse },
1977}
1978
1979impl MlmeEvent {
1980 #[allow(irrefutable_let_patterns)]
1981 pub fn into_on_scan_result(self) -> Option<ScanResult> {
1982 if let MlmeEvent::OnScanResult { result } = self { Some((result)) } else { None }
1983 }
1984 #[allow(irrefutable_let_patterns)]
1985 pub fn into_on_scan_end(self) -> Option<ScanEnd> {
1986 if let MlmeEvent::OnScanEnd { end } = self { Some((end)) } else { None }
1987 }
1988 #[allow(irrefutable_let_patterns)]
1989 pub fn into_on_scheduled_scan_matches_available(self) -> Option<u64> {
1990 if let MlmeEvent::OnScheduledScanMatchesAvailable { txn_id } = self {
1991 Some((txn_id))
1992 } else {
1993 None
1994 }
1995 }
1996 #[allow(irrefutable_let_patterns)]
1997 pub fn into_on_scheduled_scan_stopped_by_firmware(self) -> Option<u64> {
1998 if let MlmeEvent::OnScheduledScanStoppedByFirmware { txn_id } = self {
1999 Some((txn_id))
2000 } else {
2001 None
2002 }
2003 }
2004 #[allow(irrefutable_let_patterns)]
2005 pub fn into_connect_conf(self) -> Option<ConnectConfirm> {
2006 if let MlmeEvent::ConnectConf { resp } = self { Some((resp)) } else { None }
2007 }
2008 #[allow(irrefutable_let_patterns)]
2009 pub fn into_roam_conf(self) -> Option<RoamConfirm> {
2010 if let MlmeEvent::RoamConf { conf } = self { Some((conf)) } else { None }
2011 }
2012 #[allow(irrefutable_let_patterns)]
2013 pub fn into_roam_start_ind(self) -> Option<RoamStartIndication> {
2014 if let MlmeEvent::RoamStartInd { ind } = self { Some((ind)) } else { None }
2015 }
2016 #[allow(irrefutable_let_patterns)]
2017 pub fn into_roam_result_ind(self) -> Option<RoamResultIndication> {
2018 if let MlmeEvent::RoamResultInd { ind } = self { Some((ind)) } else { None }
2019 }
2020 #[allow(irrefutable_let_patterns)]
2021 pub fn into_authenticate_ind(self) -> Option<AuthenticateIndication> {
2022 if let MlmeEvent::AuthenticateInd { ind } = self { Some((ind)) } else { None }
2023 }
2024 #[allow(irrefutable_let_patterns)]
2025 pub fn into_deauthenticate_conf(self) -> Option<DeauthenticateConfirm> {
2026 if let MlmeEvent::DeauthenticateConf { resp } = self { Some((resp)) } else { None }
2027 }
2028 #[allow(irrefutable_let_patterns)]
2029 pub fn into_deauthenticate_ind(self) -> Option<DeauthenticateIndication> {
2030 if let MlmeEvent::DeauthenticateInd { ind } = self { Some((ind)) } else { None }
2031 }
2032 #[allow(irrefutable_let_patterns)]
2033 pub fn into_associate_ind(self) -> Option<AssociateIndication> {
2034 if let MlmeEvent::AssociateInd { ind } = self { Some((ind)) } else { None }
2035 }
2036 #[allow(irrefutable_let_patterns)]
2037 pub fn into_disassociate_conf(self) -> Option<DisassociateConfirm> {
2038 if let MlmeEvent::DisassociateConf { resp } = self { Some((resp)) } else { None }
2039 }
2040 #[allow(irrefutable_let_patterns)]
2041 pub fn into_disassociate_ind(self) -> Option<DisassociateIndication> {
2042 if let MlmeEvent::DisassociateInd { ind } = self { Some((ind)) } else { None }
2043 }
2044 #[allow(irrefutable_let_patterns)]
2045 pub fn into_start_conf(self) -> Option<StartConfirm> {
2046 if let MlmeEvent::StartConf { resp } = self { Some((resp)) } else { None }
2047 }
2048 #[allow(irrefutable_let_patterns)]
2049 pub fn into_stop_conf(self) -> Option<StopConfirm> {
2050 if let MlmeEvent::StopConf { resp } = self { Some((resp)) } else { None }
2051 }
2052 #[allow(irrefutable_let_patterns)]
2053 pub fn into_set_keys_conf(self) -> Option<SetKeysConfirm> {
2054 if let MlmeEvent::SetKeysConf { conf } = self { Some((conf)) } else { None }
2055 }
2056 #[allow(irrefutable_let_patterns)]
2057 pub fn into_eapol_conf(self) -> Option<EapolConfirm> {
2058 if let MlmeEvent::EapolConf { resp } = self { Some((resp)) } else { None }
2059 }
2060 #[allow(irrefutable_let_patterns)]
2061 pub fn into_signal_report(self) -> Option<fidl_fuchsia_wlan_internal::SignalReportIndication> {
2062 if let MlmeEvent::SignalReport { ind } = self { Some((ind)) } else { None }
2063 }
2064 #[allow(irrefutable_let_patterns)]
2065 pub fn into_on_rssi_threshold_breached(self) -> Option<i8> {
2066 if let MlmeEvent::OnRssiThresholdBreached { cur_rssi_dbm } = self {
2067 Some((cur_rssi_dbm))
2068 } else {
2069 None
2070 }
2071 }
2072 #[allow(irrefutable_let_patterns)]
2073 pub fn into_eapol_ind(self) -> Option<EapolIndication> {
2074 if let MlmeEvent::EapolInd { ind } = self { Some((ind)) } else { None }
2075 }
2076 #[allow(irrefutable_let_patterns)]
2077 pub fn into_relay_captured_frame(self) -> Option<CapturedFrameResult> {
2078 if let MlmeEvent::RelayCapturedFrame { result } = self { Some((result)) } else { None }
2079 }
2080 #[allow(irrefutable_let_patterns)]
2081 pub fn into_on_channel_switched(self) -> Option<fidl_fuchsia_wlan_internal::ChannelSwitchInfo> {
2082 if let MlmeEvent::OnChannelSwitched { info } = self { Some((info)) } else { None }
2083 }
2084 #[allow(irrefutable_let_patterns)]
2085 pub fn into_on_pmk_available(self) -> Option<PmkInfo> {
2086 if let MlmeEvent::OnPmkAvailable { info } = self { Some((info)) } else { None }
2087 }
2088 #[allow(irrefutable_let_patterns)]
2089 pub fn into_on_sae_handshake_ind(self) -> Option<SaeHandshakeIndication> {
2090 if let MlmeEvent::OnSaeHandshakeInd { ind } = self { Some((ind)) } else { None }
2091 }
2092 #[allow(irrefutable_let_patterns)]
2093 pub fn into_on_sae_frame_rx(self) -> Option<SaeFrame> {
2094 if let MlmeEvent::OnSaeFrameRx { frame } = self { Some((frame)) } else { None }
2095 }
2096 #[allow(irrefutable_let_patterns)]
2097 pub fn into_on_wmm_status_resp(
2098 self,
2099 ) -> Option<(i32, fidl_fuchsia_wlan_internal::WmmStatusResponse)> {
2100 if let MlmeEvent::OnWmmStatusResp { status, resp } = self {
2101 Some((status, resp))
2102 } else {
2103 None
2104 }
2105 }
2106
2107 fn decode(
2109 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2110 ) -> Result<MlmeEvent, fidl::Error> {
2111 let (bytes, _handles) = buf.split_mut();
2112 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2113 debug_assert_eq!(tx_header.tx_id, 0);
2114 match tx_header.ordinal {
2115 0x681af7466a75074d => {
2116 let mut out = fidl::new_empty!(
2117 MlmeOnScanResultRequest,
2118 fidl::encoding::DefaultFuchsiaResourceDialect
2119 );
2120 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScanResultRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2121 Ok((MlmeEvent::OnScanResult { result: out.result }))
2122 }
2123 0x7f2702d253e7ca59 => {
2124 let mut out = fidl::new_empty!(
2125 MlmeOnScanEndRequest,
2126 fidl::encoding::DefaultFuchsiaResourceDialect
2127 );
2128 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScanEndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2129 Ok((MlmeEvent::OnScanEnd { end: out.end }))
2130 }
2131 0x3d915df5108ec4e1 => {
2132 let mut out = fidl::new_empty!(
2133 MlmeOnScheduledScanMatchesAvailableRequest,
2134 fidl::encoding::DefaultFuchsiaResourceDialect
2135 );
2136 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScheduledScanMatchesAvailableRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2137 Ok((MlmeEvent::OnScheduledScanMatchesAvailable { txn_id: out.txn_id }))
2138 }
2139 0x4c2cb4b145163fd0 => {
2140 let mut out = fidl::new_empty!(
2141 MlmeOnScheduledScanStoppedByFirmwareRequest,
2142 fidl::encoding::DefaultFuchsiaResourceDialect
2143 );
2144 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScheduledScanStoppedByFirmwareRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2145 Ok((MlmeEvent::OnScheduledScanStoppedByFirmware { txn_id: out.txn_id }))
2146 }
2147 0x77b27623279b981e => {
2148 let mut out = fidl::new_empty!(
2149 MlmeConnectConfRequest,
2150 fidl::encoding::DefaultFuchsiaResourceDialect
2151 );
2152 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeConnectConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2153 Ok((MlmeEvent::ConnectConf { resp: out.resp }))
2154 }
2155 0x3f608034faa054bc => {
2156 let mut out = fidl::new_empty!(
2157 MlmeRoamConfRequest,
2158 fidl::encoding::DefaultFuchsiaResourceDialect
2159 );
2160 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2161 Ok((MlmeEvent::RoamConf { conf: out.conf }))
2162 }
2163 0x270a1ec78672d094 => {
2164 let mut out = fidl::new_empty!(
2165 MlmeRoamStartIndRequest,
2166 fidl::encoding::DefaultFuchsiaResourceDialect
2167 );
2168 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamStartIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2169 Ok((MlmeEvent::RoamStartInd { ind: out.ind }))
2170 }
2171 0x26d074364fc84865 => {
2172 let mut out = fidl::new_empty!(
2173 MlmeRoamResultIndRequest,
2174 fidl::encoding::DefaultFuchsiaResourceDialect
2175 );
2176 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamResultIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2177 Ok((MlmeEvent::RoamResultInd { ind: out.ind }))
2178 }
2179 0x460f49ae891adbe9 => {
2180 let mut out = fidl::new_empty!(
2181 MlmeAuthenticateIndRequest,
2182 fidl::encoding::DefaultFuchsiaResourceDialect
2183 );
2184 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAuthenticateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2185 Ok((MlmeEvent::AuthenticateInd { ind: out.ind }))
2186 }
2187 0x3b44debc21b88c8c => {
2188 let mut out = fidl::new_empty!(
2189 MlmeDeauthenticateConfRequest,
2190 fidl::encoding::DefaultFuchsiaResourceDialect
2191 );
2192 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2193 Ok((MlmeEvent::DeauthenticateConf { resp: out.resp }))
2194 }
2195 0x7ee0889b326da1d7 => {
2196 let mut out = fidl::new_empty!(
2197 MlmeDeauthenticateIndRequest,
2198 fidl::encoding::DefaultFuchsiaResourceDialect
2199 );
2200 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2201 Ok((MlmeEvent::DeauthenticateInd { ind: out.ind }))
2202 }
2203 0x6a86f20e3063dd63 => {
2204 let mut out = fidl::new_empty!(
2205 MlmeAssociateIndRequest,
2206 fidl::encoding::DefaultFuchsiaResourceDialect
2207 );
2208 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAssociateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2209 Ok((MlmeEvent::AssociateInd { ind: out.ind }))
2210 }
2211 0x61345fbce732a28d => {
2212 let mut out = fidl::new_empty!(
2213 MlmeDisassociateConfRequest,
2214 fidl::encoding::DefaultFuchsiaResourceDialect
2215 );
2216 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2217 Ok((MlmeEvent::DisassociateConf { resp: out.resp }))
2218 }
2219 0x77ac0ebf387c1f35 => {
2220 let mut out = fidl::new_empty!(
2221 MlmeDisassociateIndRequest,
2222 fidl::encoding::DefaultFuchsiaResourceDialect
2223 );
2224 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2225 Ok((MlmeEvent::DisassociateInd { ind: out.ind }))
2226 }
2227 0x15ea6cdf3b8382b3 => {
2228 let mut out = fidl::new_empty!(
2229 MlmeStartConfRequest,
2230 fidl::encoding::DefaultFuchsiaResourceDialect
2231 );
2232 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2233 Ok((MlmeEvent::StartConf { resp: out.resp }))
2234 }
2235 0x50b426ef4a84a2df => {
2236 let mut out = fidl::new_empty!(
2237 MlmeStopConfRequest,
2238 fidl::encoding::DefaultFuchsiaResourceDialect
2239 );
2240 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStopConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2241 Ok((MlmeEvent::StopConf { resp: out.resp }))
2242 }
2243 0x5bafb3a8d4039380 => {
2244 let mut out = fidl::new_empty!(
2245 MlmeSetKeysConfRequest,
2246 fidl::encoding::DefaultFuchsiaResourceDialect
2247 );
2248 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetKeysConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2249 Ok((MlmeEvent::SetKeysConf { conf: out.conf }))
2250 }
2251 0x6ffa21f4ee73ce64 => {
2252 let mut out = fidl::new_empty!(
2253 MlmeEapolConfRequest,
2254 fidl::encoding::DefaultFuchsiaResourceDialect
2255 );
2256 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2257 Ok((MlmeEvent::EapolConf { resp: out.resp }))
2258 }
2259 0x48f32a876aa53d8f => {
2260 let mut out = fidl::new_empty!(
2261 MlmeSignalReportRequest,
2262 fidl::encoding::DefaultFuchsiaResourceDialect
2263 );
2264 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSignalReportRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2265 Ok((MlmeEvent::SignalReport { ind: out.ind }))
2266 }
2267 0x5803e9572d8c8f => {
2268 let mut out = fidl::new_empty!(
2269 MlmeOnRssiThresholdBreachedRequest,
2270 fidl::encoding::DefaultFuchsiaResourceDialect
2271 );
2272 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnRssiThresholdBreachedRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2273 Ok((MlmeEvent::OnRssiThresholdBreached { cur_rssi_dbm: out.cur_rssi_dbm }))
2274 }
2275 0x7038dca46a3142fc => {
2276 let mut out = fidl::new_empty!(
2277 MlmeEapolIndRequest,
2278 fidl::encoding::DefaultFuchsiaResourceDialect
2279 );
2280 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2281 Ok((MlmeEvent::EapolInd { ind: out.ind }))
2282 }
2283 0x6f00a6f3cff9b1f5 => {
2284 let mut out = fidl::new_empty!(
2285 MlmeRelayCapturedFrameRequest,
2286 fidl::encoding::DefaultFuchsiaResourceDialect
2287 );
2288 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRelayCapturedFrameRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2289 Ok((MlmeEvent::RelayCapturedFrame { result: out.result }))
2290 }
2291 0x581750594e4c0c1 => {
2292 let mut out = fidl::new_empty!(
2293 MlmeOnChannelSwitchedRequest,
2294 fidl::encoding::DefaultFuchsiaResourceDialect
2295 );
2296 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnChannelSwitchedRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2297 Ok((MlmeEvent::OnChannelSwitched { info: out.info }))
2298 }
2299 0x1314fc2c79643f90 => {
2300 let mut out = fidl::new_empty!(
2301 MlmeOnPmkAvailableRequest,
2302 fidl::encoding::DefaultFuchsiaResourceDialect
2303 );
2304 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnPmkAvailableRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2305 Ok((MlmeEvent::OnPmkAvailable { info: out.info }))
2306 }
2307 0x6308b10e18986d7e => {
2308 let mut out = fidl::new_empty!(
2309 MlmeOnSaeHandshakeIndRequest,
2310 fidl::encoding::DefaultFuchsiaResourceDialect
2311 );
2312 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnSaeHandshakeIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2313 Ok((MlmeEvent::OnSaeHandshakeInd { ind: out.ind }))
2314 }
2315 0x4ebf51c86ef5f3cd => {
2316 let mut out = fidl::new_empty!(
2317 MlmeOnSaeFrameRxRequest,
2318 fidl::encoding::DefaultFuchsiaResourceDialect
2319 );
2320 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnSaeFrameRxRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2321 Ok((MlmeEvent::OnSaeFrameRx { frame: out.frame }))
2322 }
2323 0x53f056b432e7b5cb => {
2324 let mut out = fidl::new_empty!(
2325 MlmeOnWmmStatusRespRequest,
2326 fidl::encoding::DefaultFuchsiaResourceDialect
2327 );
2328 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnWmmStatusRespRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2329 Ok((MlmeEvent::OnWmmStatusResp { status: out.status, resp: out.resp }))
2330 }
2331 _ => Err(fidl::Error::UnknownOrdinal {
2332 ordinal: tx_header.ordinal,
2333 protocol_name: <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2334 }),
2335 }
2336 }
2337}
2338
2339pub struct MlmeRequestStream {
2341 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2342 is_terminated: bool,
2343}
2344
2345impl std::marker::Unpin for MlmeRequestStream {}
2346
2347impl futures::stream::FusedStream for MlmeRequestStream {
2348 fn is_terminated(&self) -> bool {
2349 self.is_terminated
2350 }
2351}
2352
2353impl fidl::endpoints::RequestStream for MlmeRequestStream {
2354 type Protocol = MlmeMarker;
2355 type ControlHandle = MlmeControlHandle;
2356
2357 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2358 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2359 }
2360
2361 fn control_handle(&self) -> Self::ControlHandle {
2362 MlmeControlHandle { inner: self.inner.clone() }
2363 }
2364
2365 fn into_inner(
2366 self,
2367 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2368 {
2369 (self.inner, self.is_terminated)
2370 }
2371
2372 fn from_inner(
2373 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2374 is_terminated: bool,
2375 ) -> Self {
2376 Self { inner, is_terminated }
2377 }
2378}
2379
2380impl futures::Stream for MlmeRequestStream {
2381 type Item = Result<MlmeRequest, fidl::Error>;
2382
2383 fn poll_next(
2384 mut self: std::pin::Pin<&mut Self>,
2385 cx: &mut std::task::Context<'_>,
2386 ) -> std::task::Poll<Option<Self::Item>> {
2387 let this = &mut *self;
2388 if this.inner.check_shutdown(cx) {
2389 this.is_terminated = true;
2390 return std::task::Poll::Ready(None);
2391 }
2392 if this.is_terminated {
2393 panic!("polled MlmeRequestStream after completion");
2394 }
2395 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2396 |bytes, handles| {
2397 match this.inner.channel().read_etc(cx, bytes, handles) {
2398 std::task::Poll::Ready(Ok(())) => {}
2399 std::task::Poll::Pending => return std::task::Poll::Pending,
2400 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2401 this.is_terminated = true;
2402 return std::task::Poll::Ready(None);
2403 }
2404 std::task::Poll::Ready(Err(e)) => {
2405 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2406 e.into(),
2407 ))));
2408 }
2409 }
2410
2411 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2413
2414 std::task::Poll::Ready(Some(match header.ordinal {
2415 0x342cc5ec6a957479 => {
2416 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2417 let mut req = fidl::new_empty!(
2418 MlmeStartScanRequest,
2419 fidl::encoding::DefaultFuchsiaResourceDialect
2420 );
2421 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartScanRequest>(&header, _body_bytes, handles, &mut req)?;
2422 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2423 Ok(MlmeRequest::StartScan { req: req.req, control_handle })
2424 }
2425 0x7fff163af4620212 => {
2426 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2427 let mut req = fidl::new_empty!(
2428 MlmeStartScheduledScanRequest,
2429 fidl::encoding::DefaultFuchsiaResourceDialect
2430 );
2431 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartScheduledScanRequest>(&header, _body_bytes, handles, &mut req)?;
2432 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2433 Ok(MlmeRequest::StartScheduledScan {
2434 txn_id: req.txn_id,
2435 req: req.req,
2436
2437 responder: MlmeStartScheduledScanResponder {
2438 control_handle: std::mem::ManuallyDrop::new(control_handle),
2439 tx_id: header.tx_id,
2440 },
2441 })
2442 }
2443 0x5fbc466f3daa4dd9 => {
2444 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2445 let mut req = fidl::new_empty!(
2446 MlmeStopScheduledScanRequest,
2447 fidl::encoding::DefaultFuchsiaResourceDialect
2448 );
2449 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStopScheduledScanRequest>(&header, _body_bytes, handles, &mut req)?;
2450 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2451 Ok(MlmeRequest::StopScheduledScan {
2452 txn_id: req.txn_id,
2453
2454 responder: MlmeStopScheduledScanResponder {
2455 control_handle: std::mem::ManuallyDrop::new(control_handle),
2456 tx_id: header.tx_id,
2457 },
2458 })
2459 }
2460 0x1ecc6a7fe7f9fcff => {
2461 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2462 let mut req = fidl::new_empty!(
2463 fidl::encoding::EmptyPayload,
2464 fidl::encoding::DefaultFuchsiaResourceDialect
2465 );
2466 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2467 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2468 Ok(MlmeRequest::GetScheduledScanEnabled {
2469 responder: MlmeGetScheduledScanEnabledResponder {
2470 control_handle: std::mem::ManuallyDrop::new(control_handle),
2471 tx_id: header.tx_id,
2472 },
2473 })
2474 }
2475 0x31153dc85f8f64c => {
2476 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2477 let mut req = fidl::new_empty!(
2478 MlmeConnectReqRequest,
2479 fidl::encoding::DefaultFuchsiaResourceDialect
2480 );
2481 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeConnectReqRequest>(&header, _body_bytes, handles, &mut req)?;
2482 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2483 Ok(MlmeRequest::ConnectReq { req: req.req, control_handle })
2484 }
2485 0x74e0f1bd758b6b78 => {
2486 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2487 let mut req = fidl::new_empty!(
2488 MlmeReconnectReqRequest,
2489 fidl::encoding::DefaultFuchsiaResourceDialect
2490 );
2491 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeReconnectReqRequest>(&header, _body_bytes, handles, &mut req)?;
2492 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2493 Ok(MlmeRequest::ReconnectReq { req: req.req, control_handle })
2494 }
2495 0x3ba163eadf7dba45 => {
2496 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2497 let mut req = fidl::new_empty!(
2498 MlmeRoamReqRequest,
2499 fidl::encoding::DefaultFuchsiaResourceDialect
2500 );
2501 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamReqRequest>(&header, _body_bytes, handles, &mut req)?;
2502 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2503 Ok(MlmeRequest::RoamReq { req: req.req, control_handle })
2504 }
2505 0x26108aade2fdd2f4 => {
2506 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2507 let mut req = fidl::new_empty!(
2508 MlmeAuthenticateRespRequest,
2509 fidl::encoding::DefaultFuchsiaResourceDialect
2510 );
2511 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAuthenticateRespRequest>(&header, _body_bytes, handles, &mut req)?;
2512 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2513 Ok(MlmeRequest::AuthenticateResp { resp: req.resp, control_handle })
2514 }
2515 0x228983b200de5d12 => {
2516 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2517 let mut req = fidl::new_empty!(
2518 MlmeDeauthenticateReqRequest,
2519 fidl::encoding::DefaultFuchsiaResourceDialect
2520 );
2521 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateReqRequest>(&header, _body_bytes, handles, &mut req)?;
2522 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2523 Ok(MlmeRequest::DeauthenticateReq { req: req.req, control_handle })
2524 }
2525 0x70244dbd652ed6d9 => {
2526 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2527 let mut req = fidl::new_empty!(
2528 MlmeAssociateRespRequest,
2529 fidl::encoding::DefaultFuchsiaResourceDialect
2530 );
2531 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAssociateRespRequest>(&header, _body_bytes, handles, &mut req)?;
2532 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2533 Ok(MlmeRequest::AssociateResp { resp: req.resp, control_handle })
2534 }
2535 0x5765807f1387d764 => {
2536 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2537 let mut req = fidl::new_empty!(
2538 MlmeDisassociateReqRequest,
2539 fidl::encoding::DefaultFuchsiaResourceDialect
2540 );
2541 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateReqRequest>(&header, _body_bytes, handles, &mut req)?;
2542 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2543 Ok(MlmeRequest::DisassociateReq { req: req.req, control_handle })
2544 }
2545 0x780b98c58a286b9f => {
2546 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2547 let mut req = fidl::new_empty!(
2548 MlmeResetReqRequest,
2549 fidl::encoding::DefaultFuchsiaResourceDialect
2550 );
2551 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeResetReqRequest>(&header, _body_bytes, handles, &mut req)?;
2552 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2553 Ok(MlmeRequest::ResetReq { req: req.req, control_handle })
2554 }
2555 0x5d95885f8053654 => {
2556 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2557 let mut req = fidl::new_empty!(
2558 MlmeStartReqRequest,
2559 fidl::encoding::DefaultFuchsiaResourceDialect
2560 );
2561 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartReqRequest>(&header, _body_bytes, handles, &mut req)?;
2562 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2563 Ok(MlmeRequest::StartReq { req: req.req, control_handle })
2564 }
2565 0x27b9a2ab04a2c79f => {
2566 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2567 let mut req = fidl::new_empty!(
2568 MlmeStopReqRequest,
2569 fidl::encoding::DefaultFuchsiaResourceDialect
2570 );
2571 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStopReqRequest>(&header, _body_bytes, handles, &mut req)?;
2572 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2573 Ok(MlmeRequest::StopReq { req: req.req, control_handle })
2574 }
2575 0x6b30a07fd3a11a79 => {
2576 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2577 let mut req = fidl::new_empty!(
2578 MlmeSetKeysReqRequest,
2579 fidl::encoding::DefaultFuchsiaResourceDialect
2580 );
2581 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetKeysReqRequest>(&header, _body_bytes, handles, &mut req)?;
2582 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2583 Ok(MlmeRequest::SetKeysReq { req: req.req, control_handle })
2584 }
2585 0x1e3524d20d190c8f => {
2586 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2587 let mut req = fidl::new_empty!(
2588 MlmeDeleteKeysReqRequest,
2589 fidl::encoding::DefaultFuchsiaResourceDialect
2590 );
2591 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeleteKeysReqRequest>(&header, _body_bytes, handles, &mut req)?;
2592 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2593 Ok(MlmeRequest::DeleteKeysReq { req: req.req, control_handle })
2594 }
2595 0xc3c096924704d4 => {
2596 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2597 let mut req = fidl::new_empty!(
2598 MlmeEapolReqRequest,
2599 fidl::encoding::DefaultFuchsiaResourceDialect
2600 );
2601 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolReqRequest>(&header, _body_bytes, handles, &mut req)?;
2602 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2603 Ok(MlmeRequest::EapolReq { req: req.req, control_handle })
2604 }
2605 0x4e47065668890c8d => {
2606 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2607 let mut req = fidl::new_empty!(
2608 MlmeSetControlledPortRequest,
2609 fidl::encoding::DefaultFuchsiaResourceDialect
2610 );
2611 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetControlledPortRequest>(&header, _body_bytes, handles, &mut req)?;
2612 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2613 Ok(MlmeRequest::SetControlledPort { req: req.req, control_handle })
2614 }
2615 0x6ee3e7f63f2b7bc0 => {
2616 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2617 let mut req = fidl::new_empty!(
2618 fidl::encoding::EmptyPayload,
2619 fidl::encoding::DefaultFuchsiaResourceDialect
2620 );
2621 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2622 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2623 Ok(MlmeRequest::QueryDeviceInfo {
2624 responder: MlmeQueryDeviceInfoResponder {
2625 control_handle: std::mem::ManuallyDrop::new(control_handle),
2626 tx_id: header.tx_id,
2627 },
2628 })
2629 }
2630 0x1598879b70332c99 => {
2631 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2632 let mut req = fidl::new_empty!(
2633 fidl::encoding::EmptyPayload,
2634 fidl::encoding::DefaultFuchsiaResourceDialect
2635 );
2636 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2637 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2638 Ok(MlmeRequest::QueryTelemetrySupport {
2639 responder: MlmeQueryTelemetrySupportResponder {
2640 control_handle: std::mem::ManuallyDrop::new(control_handle),
2641 tx_id: header.tx_id,
2642 },
2643 })
2644 }
2645 0xede1a8342d1b211 => {
2646 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2647 let mut req = fidl::new_empty!(
2648 fidl::encoding::EmptyPayload,
2649 fidl::encoding::DefaultFuchsiaResourceDialect
2650 );
2651 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2652 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2653 Ok(MlmeRequest::GetIfaceStats {
2654 responder: MlmeGetIfaceStatsResponder {
2655 control_handle: std::mem::ManuallyDrop::new(control_handle),
2656 tx_id: header.tx_id,
2657 },
2658 })
2659 }
2660 0x1979c9d3449f8675 => {
2661 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2662 let mut req = fidl::new_empty!(
2663 fidl::encoding::EmptyPayload,
2664 fidl::encoding::DefaultFuchsiaResourceDialect
2665 );
2666 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2667 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2668 Ok(MlmeRequest::GetIfaceHistogramStats {
2669 responder: MlmeGetIfaceHistogramStatsResponder {
2670 control_handle: std::mem::ManuallyDrop::new(control_handle),
2671 tx_id: header.tx_id,
2672 },
2673 })
2674 }
2675 0x7e47e7ebe92acec9 => {
2676 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2677 let mut req = fidl::new_empty!(
2678 fidl::encoding::EmptyPayload,
2679 fidl::encoding::DefaultFuchsiaResourceDialect
2680 );
2681 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2682 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2683 Ok(MlmeRequest::GetSignalReport {
2684 responder: MlmeGetSignalReportResponder {
2685 control_handle: std::mem::ManuallyDrop::new(control_handle),
2686 tx_id: header.tx_id,
2687 },
2688 })
2689 }
2690 0x4ac5d1e66fe1ffd5 => {
2691 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2692 let mut req = fidl::new_empty!(
2693 fidl::encoding::EmptyPayload,
2694 fidl::encoding::DefaultFuchsiaResourceDialect
2695 );
2696 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2697 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2698 Ok(MlmeRequest::ListMinstrelPeers {
2699 responder: MlmeListMinstrelPeersResponder {
2700 control_handle: std::mem::ManuallyDrop::new(control_handle),
2701 tx_id: header.tx_id,
2702 },
2703 })
2704 }
2705 0x2f688b1245323f4b => {
2706 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2707 let mut req = fidl::new_empty!(
2708 MlmeGetMinstrelStatsRequest,
2709 fidl::encoding::DefaultFuchsiaResourceDialect
2710 );
2711 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeGetMinstrelStatsRequest>(&header, _body_bytes, handles, &mut req)?;
2712 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2713 Ok(MlmeRequest::GetMinstrelStats {
2714 req: req.req,
2715
2716 responder: MlmeGetMinstrelStatsResponder {
2717 control_handle: std::mem::ManuallyDrop::new(control_handle),
2718 tx_id: header.tx_id,
2719 },
2720 })
2721 }
2722 0x23b369ed5749ee69 => {
2723 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2724 let mut req = fidl::new_empty!(
2725 MlmeStartCaptureFramesRequest,
2726 fidl::encoding::DefaultFuchsiaResourceDialect
2727 );
2728 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartCaptureFramesRequest>(&header, _body_bytes, handles, &mut req)?;
2729 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2730 Ok(MlmeRequest::StartCaptureFrames {
2731 req: req.req,
2732
2733 responder: MlmeStartCaptureFramesResponder {
2734 control_handle: std::mem::ManuallyDrop::new(control_handle),
2735 tx_id: header.tx_id,
2736 },
2737 })
2738 }
2739 0x2f1aebbc68bf7c54 => {
2740 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2741 let mut req = fidl::new_empty!(
2742 fidl::encoding::EmptyPayload,
2743 fidl::encoding::DefaultFuchsiaResourceDialect
2744 );
2745 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2746 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2747 Ok(MlmeRequest::StopCaptureFrames { control_handle })
2748 }
2749 0x28477bd2f7a5ab0c => {
2750 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2751 let mut req = fidl::new_empty!(
2752 MlmeSaeHandshakeRespRequest,
2753 fidl::encoding::DefaultFuchsiaResourceDialect
2754 );
2755 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSaeHandshakeRespRequest>(&header, _body_bytes, handles, &mut req)?;
2756 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2757 Ok(MlmeRequest::SaeHandshakeResp { resp: req.resp, control_handle })
2758 }
2759 0x7700c0d536733d8c => {
2760 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2761 let mut req = fidl::new_empty!(
2762 MlmeSaeFrameTxRequest,
2763 fidl::encoding::DefaultFuchsiaResourceDialect
2764 );
2765 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSaeFrameTxRequest>(&header, _body_bytes, handles, &mut req)?;
2766 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2767 Ok(MlmeRequest::SaeFrameTx { frame: req.frame, control_handle })
2768 }
2769 0xef4851f6088fede => {
2770 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2771 let mut req = fidl::new_empty!(
2772 fidl::encoding::EmptyPayload,
2773 fidl::encoding::DefaultFuchsiaResourceDialect
2774 );
2775 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2776 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2777 Ok(MlmeRequest::WmmStatusReq { control_handle })
2778 }
2779 0x7aea59787cfd385a => {
2780 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2781 let mut req = fidl::new_empty!(
2782 MlmeFinalizeAssociationReqRequest,
2783 fidl::encoding::DefaultFuchsiaResourceDialect
2784 );
2785 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeFinalizeAssociationReqRequest>(&header, _body_bytes, handles, &mut req)?;
2786 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2787 Ok(MlmeRequest::FinalizeAssociationReq {
2788 negotiated_capabilities: req.negotiated_capabilities,
2789
2790 control_handle,
2791 })
2792 }
2793 0x476999f9bb27afe1 => {
2794 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2795 let mut req = fidl::new_empty!(
2796 MlmeSetMacAddressRequest,
2797 fidl::encoding::DefaultFuchsiaResourceDialect
2798 );
2799 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetMacAddressRequest>(&header, _body_bytes, handles, &mut req)?;
2800 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2801 Ok(MlmeRequest::SetMacAddress {
2802 mac_addr: req.mac_addr,
2803
2804 responder: MlmeSetMacAddressResponder {
2805 control_handle: std::mem::ManuallyDrop::new(control_handle),
2806 tx_id: header.tx_id,
2807 },
2808 })
2809 }
2810 0x267565b4916c825b => {
2811 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2812 let mut req = fidl::new_empty!(
2813 MlmeInstallApfPacketFilterRequest,
2814 fidl::encoding::DefaultFuchsiaResourceDialect
2815 );
2816 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeInstallApfPacketFilterRequest>(&header, _body_bytes, handles, &mut req)?;
2817 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2818 Ok(MlmeRequest::InstallApfPacketFilter {
2819 program: req.program,
2820
2821 responder: MlmeInstallApfPacketFilterResponder {
2822 control_handle: std::mem::ManuallyDrop::new(control_handle),
2823 tx_id: header.tx_id,
2824 },
2825 })
2826 }
2827 0x6040d744f1b2cb61 => {
2828 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2829 let mut req = fidl::new_empty!(
2830 fidl::encoding::EmptyPayload,
2831 fidl::encoding::DefaultFuchsiaResourceDialect
2832 );
2833 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2834 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2835 Ok(MlmeRequest::ReadApfPacketFilterData {
2836 responder: MlmeReadApfPacketFilterDataResponder {
2837 control_handle: std::mem::ManuallyDrop::new(control_handle),
2838 tx_id: header.tx_id,
2839 },
2840 })
2841 }
2842 0x6d99bdca77076aea => {
2843 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2844 let mut req = fidl::new_empty!(
2845 MlmeSetApfPacketFilterEnabledRequest,
2846 fidl::encoding::DefaultFuchsiaResourceDialect
2847 );
2848 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetApfPacketFilterEnabledRequest>(&header, _body_bytes, handles, &mut req)?;
2849 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2850 Ok(MlmeRequest::SetApfPacketFilterEnabled {
2851 enabled: req.enabled,
2852
2853 responder: MlmeSetApfPacketFilterEnabledResponder {
2854 control_handle: std::mem::ManuallyDrop::new(control_handle),
2855 tx_id: header.tx_id,
2856 },
2857 })
2858 }
2859 0x1df408bc154be1e4 => {
2860 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2861 let mut req = fidl::new_empty!(
2862 fidl::encoding::EmptyPayload,
2863 fidl::encoding::DefaultFuchsiaResourceDialect
2864 );
2865 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2866 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2867 Ok(MlmeRequest::GetApfPacketFilterEnabled {
2868 responder: MlmeGetApfPacketFilterEnabledResponder {
2869 control_handle: std::mem::ManuallyDrop::new(control_handle),
2870 tx_id: header.tx_id,
2871 },
2872 })
2873 }
2874 0x542a970415b1d912 => {
2875 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2876 let mut req = fidl::new_empty!(
2877 MlmeStartRssiMonitorRequest,
2878 fidl::encoding::DefaultFuchsiaResourceDialect
2879 );
2880 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartRssiMonitorRequest>(&header, _body_bytes, handles, &mut req)?;
2881 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2882 Ok(MlmeRequest::StartRssiMonitor {
2883 min_rssi_dbm: req.min_rssi_dbm,
2884 max_rssi_dbm: req.max_rssi_dbm,
2885
2886 responder: MlmeStartRssiMonitorResponder {
2887 control_handle: std::mem::ManuallyDrop::new(control_handle),
2888 tx_id: header.tx_id,
2889 },
2890 })
2891 }
2892 _ => Err(fidl::Error::UnknownOrdinal {
2893 ordinal: header.ordinal,
2894 protocol_name: <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2895 }),
2896 }))
2897 },
2898 )
2899 }
2900}
2901
2902#[derive(Debug)]
2903pub enum MlmeRequest {
2904 StartScan {
2905 req: ScanRequest,
2906 control_handle: MlmeControlHandle,
2907 },
2908 StartScheduledScan {
2910 txn_id: u64,
2911 req: fidl_fuchsia_wlan_common::ScheduledScanRequest,
2912 responder: MlmeStartScheduledScanResponder,
2913 },
2914 StopScheduledScan {
2916 txn_id: u64,
2917 responder: MlmeStopScheduledScanResponder,
2918 },
2919 GetScheduledScanEnabled {
2921 responder: MlmeGetScheduledScanEnabledResponder,
2922 },
2923 ConnectReq {
2924 req: ConnectRequest,
2925 control_handle: MlmeControlHandle,
2926 },
2927 ReconnectReq {
2928 req: ReconnectRequest,
2929 control_handle: MlmeControlHandle,
2930 },
2931 RoamReq {
2933 req: RoamRequest,
2934 control_handle: MlmeControlHandle,
2935 },
2936 AuthenticateResp {
2937 resp: AuthenticateResponse,
2938 control_handle: MlmeControlHandle,
2939 },
2940 DeauthenticateReq {
2941 req: DeauthenticateRequest,
2942 control_handle: MlmeControlHandle,
2943 },
2944 AssociateResp {
2945 resp: AssociateResponse,
2946 control_handle: MlmeControlHandle,
2947 },
2948 DisassociateReq {
2949 req: DisassociateRequest,
2950 control_handle: MlmeControlHandle,
2951 },
2952 ResetReq {
2953 req: ResetRequest,
2954 control_handle: MlmeControlHandle,
2955 },
2956 StartReq {
2957 req: StartRequest,
2958 control_handle: MlmeControlHandle,
2959 },
2960 StopReq {
2961 req: StopRequest,
2962 control_handle: MlmeControlHandle,
2963 },
2964 SetKeysReq {
2965 req: SetKeysRequest,
2966 control_handle: MlmeControlHandle,
2967 },
2968 DeleteKeysReq {
2969 req: DeleteKeysRequest,
2970 control_handle: MlmeControlHandle,
2971 },
2972 EapolReq {
2973 req: EapolRequest,
2974 control_handle: MlmeControlHandle,
2975 },
2976 SetControlledPort {
2977 req: SetControlledPortRequest,
2978 control_handle: MlmeControlHandle,
2979 },
2980 QueryDeviceInfo {
2981 responder: MlmeQueryDeviceInfoResponder,
2982 },
2983 QueryTelemetrySupport {
2984 responder: MlmeQueryTelemetrySupportResponder,
2985 },
2986 GetIfaceStats {
2987 responder: MlmeGetIfaceStatsResponder,
2988 },
2989 GetIfaceHistogramStats {
2990 responder: MlmeGetIfaceHistogramStatsResponder,
2991 },
2992 GetSignalReport {
2993 responder: MlmeGetSignalReportResponder,
2994 },
2995 ListMinstrelPeers {
2996 responder: MlmeListMinstrelPeersResponder,
2997 },
2998 GetMinstrelStats {
2999 req: MinstrelStatsRequest,
3000 responder: MlmeGetMinstrelStatsResponder,
3001 },
3002 StartCaptureFrames {
3003 req: StartCaptureFramesRequest,
3004 responder: MlmeStartCaptureFramesResponder,
3005 },
3006 StopCaptureFrames {
3007 control_handle: MlmeControlHandle,
3008 },
3009 SaeHandshakeResp {
3011 resp: SaeHandshakeResponse,
3012 control_handle: MlmeControlHandle,
3013 },
3014 SaeFrameTx {
3016 frame: SaeFrame,
3017 control_handle: MlmeControlHandle,
3018 },
3019 WmmStatusReq {
3020 control_handle: MlmeControlHandle,
3021 },
3022 FinalizeAssociationReq {
3023 negotiated_capabilities: NegotiatedCapabilities,
3024 control_handle: MlmeControlHandle,
3025 },
3026 SetMacAddress {
3027 mac_addr: [u8; 6],
3028 responder: MlmeSetMacAddressResponder,
3029 },
3030 InstallApfPacketFilter {
3031 program: Vec<u8>,
3032 responder: MlmeInstallApfPacketFilterResponder,
3033 },
3034 ReadApfPacketFilterData {
3035 responder: MlmeReadApfPacketFilterDataResponder,
3036 },
3037 SetApfPacketFilterEnabled {
3038 enabled: bool,
3039 responder: MlmeSetApfPacketFilterEnabledResponder,
3040 },
3041 GetApfPacketFilterEnabled {
3042 responder: MlmeGetApfPacketFilterEnabledResponder,
3043 },
3044 StartRssiMonitor {
3045 min_rssi_dbm: i8,
3046 max_rssi_dbm: i8,
3047 responder: MlmeStartRssiMonitorResponder,
3048 },
3049}
3050
3051impl MlmeRequest {
3052 #[allow(irrefutable_let_patterns)]
3053 pub fn into_start_scan(self) -> Option<(ScanRequest, MlmeControlHandle)> {
3054 if let MlmeRequest::StartScan { req, control_handle } = self {
3055 Some((req, control_handle))
3056 } else {
3057 None
3058 }
3059 }
3060
3061 #[allow(irrefutable_let_patterns)]
3062 pub fn into_start_scheduled_scan(
3063 self,
3064 ) -> Option<(
3065 u64,
3066 fidl_fuchsia_wlan_common::ScheduledScanRequest,
3067 MlmeStartScheduledScanResponder,
3068 )> {
3069 if let MlmeRequest::StartScheduledScan { txn_id, req, responder } = self {
3070 Some((txn_id, req, responder))
3071 } else {
3072 None
3073 }
3074 }
3075
3076 #[allow(irrefutable_let_patterns)]
3077 pub fn into_stop_scheduled_scan(self) -> Option<(u64, MlmeStopScheduledScanResponder)> {
3078 if let MlmeRequest::StopScheduledScan { txn_id, responder } = self {
3079 Some((txn_id, responder))
3080 } else {
3081 None
3082 }
3083 }
3084
3085 #[allow(irrefutable_let_patterns)]
3086 pub fn into_get_scheduled_scan_enabled(self) -> Option<(MlmeGetScheduledScanEnabledResponder)> {
3087 if let MlmeRequest::GetScheduledScanEnabled { responder } = self {
3088 Some((responder))
3089 } else {
3090 None
3091 }
3092 }
3093
3094 #[allow(irrefutable_let_patterns)]
3095 pub fn into_connect_req(self) -> Option<(ConnectRequest, MlmeControlHandle)> {
3096 if let MlmeRequest::ConnectReq { req, control_handle } = self {
3097 Some((req, control_handle))
3098 } else {
3099 None
3100 }
3101 }
3102
3103 #[allow(irrefutable_let_patterns)]
3104 pub fn into_reconnect_req(self) -> Option<(ReconnectRequest, MlmeControlHandle)> {
3105 if let MlmeRequest::ReconnectReq { req, control_handle } = self {
3106 Some((req, control_handle))
3107 } else {
3108 None
3109 }
3110 }
3111
3112 #[allow(irrefutable_let_patterns)]
3113 pub fn into_roam_req(self) -> Option<(RoamRequest, MlmeControlHandle)> {
3114 if let MlmeRequest::RoamReq { req, control_handle } = self {
3115 Some((req, control_handle))
3116 } else {
3117 None
3118 }
3119 }
3120
3121 #[allow(irrefutable_let_patterns)]
3122 pub fn into_authenticate_resp(self) -> Option<(AuthenticateResponse, MlmeControlHandle)> {
3123 if let MlmeRequest::AuthenticateResp { resp, control_handle } = self {
3124 Some((resp, control_handle))
3125 } else {
3126 None
3127 }
3128 }
3129
3130 #[allow(irrefutable_let_patterns)]
3131 pub fn into_deauthenticate_req(self) -> Option<(DeauthenticateRequest, MlmeControlHandle)> {
3132 if let MlmeRequest::DeauthenticateReq { req, control_handle } = self {
3133 Some((req, control_handle))
3134 } else {
3135 None
3136 }
3137 }
3138
3139 #[allow(irrefutable_let_patterns)]
3140 pub fn into_associate_resp(self) -> Option<(AssociateResponse, MlmeControlHandle)> {
3141 if let MlmeRequest::AssociateResp { resp, control_handle } = self {
3142 Some((resp, control_handle))
3143 } else {
3144 None
3145 }
3146 }
3147
3148 #[allow(irrefutable_let_patterns)]
3149 pub fn into_disassociate_req(self) -> Option<(DisassociateRequest, MlmeControlHandle)> {
3150 if let MlmeRequest::DisassociateReq { req, control_handle } = self {
3151 Some((req, control_handle))
3152 } else {
3153 None
3154 }
3155 }
3156
3157 #[allow(irrefutable_let_patterns)]
3158 pub fn into_reset_req(self) -> Option<(ResetRequest, MlmeControlHandle)> {
3159 if let MlmeRequest::ResetReq { req, control_handle } = self {
3160 Some((req, control_handle))
3161 } else {
3162 None
3163 }
3164 }
3165
3166 #[allow(irrefutable_let_patterns)]
3167 pub fn into_start_req(self) -> Option<(StartRequest, MlmeControlHandle)> {
3168 if let MlmeRequest::StartReq { req, control_handle } = self {
3169 Some((req, control_handle))
3170 } else {
3171 None
3172 }
3173 }
3174
3175 #[allow(irrefutable_let_patterns)]
3176 pub fn into_stop_req(self) -> Option<(StopRequest, MlmeControlHandle)> {
3177 if let MlmeRequest::StopReq { req, control_handle } = self {
3178 Some((req, control_handle))
3179 } else {
3180 None
3181 }
3182 }
3183
3184 #[allow(irrefutable_let_patterns)]
3185 pub fn into_set_keys_req(self) -> Option<(SetKeysRequest, MlmeControlHandle)> {
3186 if let MlmeRequest::SetKeysReq { req, control_handle } = self {
3187 Some((req, control_handle))
3188 } else {
3189 None
3190 }
3191 }
3192
3193 #[allow(irrefutable_let_patterns)]
3194 pub fn into_delete_keys_req(self) -> Option<(DeleteKeysRequest, MlmeControlHandle)> {
3195 if let MlmeRequest::DeleteKeysReq { req, control_handle } = self {
3196 Some((req, control_handle))
3197 } else {
3198 None
3199 }
3200 }
3201
3202 #[allow(irrefutable_let_patterns)]
3203 pub fn into_eapol_req(self) -> Option<(EapolRequest, MlmeControlHandle)> {
3204 if let MlmeRequest::EapolReq { req, control_handle } = self {
3205 Some((req, control_handle))
3206 } else {
3207 None
3208 }
3209 }
3210
3211 #[allow(irrefutable_let_patterns)]
3212 pub fn into_set_controlled_port(self) -> Option<(SetControlledPortRequest, MlmeControlHandle)> {
3213 if let MlmeRequest::SetControlledPort { req, control_handle } = self {
3214 Some((req, control_handle))
3215 } else {
3216 None
3217 }
3218 }
3219
3220 #[allow(irrefutable_let_patterns)]
3221 pub fn into_query_device_info(self) -> Option<(MlmeQueryDeviceInfoResponder)> {
3222 if let MlmeRequest::QueryDeviceInfo { responder } = self { Some((responder)) } else { None }
3223 }
3224
3225 #[allow(irrefutable_let_patterns)]
3226 pub fn into_query_telemetry_support(self) -> Option<(MlmeQueryTelemetrySupportResponder)> {
3227 if let MlmeRequest::QueryTelemetrySupport { responder } = self {
3228 Some((responder))
3229 } else {
3230 None
3231 }
3232 }
3233
3234 #[allow(irrefutable_let_patterns)]
3235 pub fn into_get_iface_stats(self) -> Option<(MlmeGetIfaceStatsResponder)> {
3236 if let MlmeRequest::GetIfaceStats { responder } = self { Some((responder)) } else { None }
3237 }
3238
3239 #[allow(irrefutable_let_patterns)]
3240 pub fn into_get_iface_histogram_stats(self) -> Option<(MlmeGetIfaceHistogramStatsResponder)> {
3241 if let MlmeRequest::GetIfaceHistogramStats { responder } = self {
3242 Some((responder))
3243 } else {
3244 None
3245 }
3246 }
3247
3248 #[allow(irrefutable_let_patterns)]
3249 pub fn into_get_signal_report(self) -> Option<(MlmeGetSignalReportResponder)> {
3250 if let MlmeRequest::GetSignalReport { responder } = self { Some((responder)) } else { None }
3251 }
3252
3253 #[allow(irrefutable_let_patterns)]
3254 pub fn into_list_minstrel_peers(self) -> Option<(MlmeListMinstrelPeersResponder)> {
3255 if let MlmeRequest::ListMinstrelPeers { responder } = self {
3256 Some((responder))
3257 } else {
3258 None
3259 }
3260 }
3261
3262 #[allow(irrefutable_let_patterns)]
3263 pub fn into_get_minstrel_stats(
3264 self,
3265 ) -> Option<(MinstrelStatsRequest, MlmeGetMinstrelStatsResponder)> {
3266 if let MlmeRequest::GetMinstrelStats { req, responder } = self {
3267 Some((req, responder))
3268 } else {
3269 None
3270 }
3271 }
3272
3273 #[allow(irrefutable_let_patterns)]
3274 pub fn into_start_capture_frames(
3275 self,
3276 ) -> Option<(StartCaptureFramesRequest, MlmeStartCaptureFramesResponder)> {
3277 if let MlmeRequest::StartCaptureFrames { req, responder } = self {
3278 Some((req, responder))
3279 } else {
3280 None
3281 }
3282 }
3283
3284 #[allow(irrefutable_let_patterns)]
3285 pub fn into_stop_capture_frames(self) -> Option<(MlmeControlHandle)> {
3286 if let MlmeRequest::StopCaptureFrames { control_handle } = self {
3287 Some((control_handle))
3288 } else {
3289 None
3290 }
3291 }
3292
3293 #[allow(irrefutable_let_patterns)]
3294 pub fn into_sae_handshake_resp(self) -> Option<(SaeHandshakeResponse, MlmeControlHandle)> {
3295 if let MlmeRequest::SaeHandshakeResp { resp, control_handle } = self {
3296 Some((resp, control_handle))
3297 } else {
3298 None
3299 }
3300 }
3301
3302 #[allow(irrefutable_let_patterns)]
3303 pub fn into_sae_frame_tx(self) -> Option<(SaeFrame, MlmeControlHandle)> {
3304 if let MlmeRequest::SaeFrameTx { frame, control_handle } = self {
3305 Some((frame, control_handle))
3306 } else {
3307 None
3308 }
3309 }
3310
3311 #[allow(irrefutable_let_patterns)]
3312 pub fn into_wmm_status_req(self) -> Option<(MlmeControlHandle)> {
3313 if let MlmeRequest::WmmStatusReq { control_handle } = self {
3314 Some((control_handle))
3315 } else {
3316 None
3317 }
3318 }
3319
3320 #[allow(irrefutable_let_patterns)]
3321 pub fn into_finalize_association_req(
3322 self,
3323 ) -> Option<(NegotiatedCapabilities, MlmeControlHandle)> {
3324 if let MlmeRequest::FinalizeAssociationReq { negotiated_capabilities, control_handle } =
3325 self
3326 {
3327 Some((negotiated_capabilities, control_handle))
3328 } else {
3329 None
3330 }
3331 }
3332
3333 #[allow(irrefutable_let_patterns)]
3334 pub fn into_set_mac_address(self) -> Option<([u8; 6], MlmeSetMacAddressResponder)> {
3335 if let MlmeRequest::SetMacAddress { mac_addr, responder } = self {
3336 Some((mac_addr, responder))
3337 } else {
3338 None
3339 }
3340 }
3341
3342 #[allow(irrefutable_let_patterns)]
3343 pub fn into_install_apf_packet_filter(
3344 self,
3345 ) -> Option<(Vec<u8>, MlmeInstallApfPacketFilterResponder)> {
3346 if let MlmeRequest::InstallApfPacketFilter { program, responder } = self {
3347 Some((program, responder))
3348 } else {
3349 None
3350 }
3351 }
3352
3353 #[allow(irrefutable_let_patterns)]
3354 pub fn into_read_apf_packet_filter_data(
3355 self,
3356 ) -> Option<(MlmeReadApfPacketFilterDataResponder)> {
3357 if let MlmeRequest::ReadApfPacketFilterData { responder } = self {
3358 Some((responder))
3359 } else {
3360 None
3361 }
3362 }
3363
3364 #[allow(irrefutable_let_patterns)]
3365 pub fn into_set_apf_packet_filter_enabled(
3366 self,
3367 ) -> Option<(bool, MlmeSetApfPacketFilterEnabledResponder)> {
3368 if let MlmeRequest::SetApfPacketFilterEnabled { enabled, responder } = self {
3369 Some((enabled, responder))
3370 } else {
3371 None
3372 }
3373 }
3374
3375 #[allow(irrefutable_let_patterns)]
3376 pub fn into_get_apf_packet_filter_enabled(
3377 self,
3378 ) -> Option<(MlmeGetApfPacketFilterEnabledResponder)> {
3379 if let MlmeRequest::GetApfPacketFilterEnabled { responder } = self {
3380 Some((responder))
3381 } else {
3382 None
3383 }
3384 }
3385
3386 #[allow(irrefutable_let_patterns)]
3387 pub fn into_start_rssi_monitor(self) -> Option<(i8, i8, MlmeStartRssiMonitorResponder)> {
3388 if let MlmeRequest::StartRssiMonitor { min_rssi_dbm, max_rssi_dbm, responder } = self {
3389 Some((min_rssi_dbm, max_rssi_dbm, responder))
3390 } else {
3391 None
3392 }
3393 }
3394
3395 pub fn method_name(&self) -> &'static str {
3397 match *self {
3398 MlmeRequest::StartScan { .. } => "start_scan",
3399 MlmeRequest::StartScheduledScan { .. } => "start_scheduled_scan",
3400 MlmeRequest::StopScheduledScan { .. } => "stop_scheduled_scan",
3401 MlmeRequest::GetScheduledScanEnabled { .. } => "get_scheduled_scan_enabled",
3402 MlmeRequest::ConnectReq { .. } => "connect_req",
3403 MlmeRequest::ReconnectReq { .. } => "reconnect_req",
3404 MlmeRequest::RoamReq { .. } => "roam_req",
3405 MlmeRequest::AuthenticateResp { .. } => "authenticate_resp",
3406 MlmeRequest::DeauthenticateReq { .. } => "deauthenticate_req",
3407 MlmeRequest::AssociateResp { .. } => "associate_resp",
3408 MlmeRequest::DisassociateReq { .. } => "disassociate_req",
3409 MlmeRequest::ResetReq { .. } => "reset_req",
3410 MlmeRequest::StartReq { .. } => "start_req",
3411 MlmeRequest::StopReq { .. } => "stop_req",
3412 MlmeRequest::SetKeysReq { .. } => "set_keys_req",
3413 MlmeRequest::DeleteKeysReq { .. } => "delete_keys_req",
3414 MlmeRequest::EapolReq { .. } => "eapol_req",
3415 MlmeRequest::SetControlledPort { .. } => "set_controlled_port",
3416 MlmeRequest::QueryDeviceInfo { .. } => "query_device_info",
3417 MlmeRequest::QueryTelemetrySupport { .. } => "query_telemetry_support",
3418 MlmeRequest::GetIfaceStats { .. } => "get_iface_stats",
3419 MlmeRequest::GetIfaceHistogramStats { .. } => "get_iface_histogram_stats",
3420 MlmeRequest::GetSignalReport { .. } => "get_signal_report",
3421 MlmeRequest::ListMinstrelPeers { .. } => "list_minstrel_peers",
3422 MlmeRequest::GetMinstrelStats { .. } => "get_minstrel_stats",
3423 MlmeRequest::StartCaptureFrames { .. } => "start_capture_frames",
3424 MlmeRequest::StopCaptureFrames { .. } => "stop_capture_frames",
3425 MlmeRequest::SaeHandshakeResp { .. } => "sae_handshake_resp",
3426 MlmeRequest::SaeFrameTx { .. } => "sae_frame_tx",
3427 MlmeRequest::WmmStatusReq { .. } => "wmm_status_req",
3428 MlmeRequest::FinalizeAssociationReq { .. } => "finalize_association_req",
3429 MlmeRequest::SetMacAddress { .. } => "set_mac_address",
3430 MlmeRequest::InstallApfPacketFilter { .. } => "install_apf_packet_filter",
3431 MlmeRequest::ReadApfPacketFilterData { .. } => "read_apf_packet_filter_data",
3432 MlmeRequest::SetApfPacketFilterEnabled { .. } => "set_apf_packet_filter_enabled",
3433 MlmeRequest::GetApfPacketFilterEnabled { .. } => "get_apf_packet_filter_enabled",
3434 MlmeRequest::StartRssiMonitor { .. } => "start_rssi_monitor",
3435 }
3436 }
3437}
3438
3439#[derive(Debug, Clone)]
3440pub struct MlmeControlHandle {
3441 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
3442}
3443
3444impl MlmeControlHandle {
3445 pub fn shutdown_with_epitaph(&self, status: impl Into<fidl::Epitaph>) {
3446 self.inner.shutdown_with_epitaph(status.into())
3447 }
3448}
3449
3450impl fidl::endpoints::ControlHandle for MlmeControlHandle {
3451 fn shutdown(&self) {
3452 self.inner.shutdown()
3453 }
3454
3455 fn shutdown_with_epitaph(&self, status: fidl::Epitaph) {
3456 self.inner.shutdown_with_epitaph(status)
3457 }
3458
3459 fn is_closed(&self) -> bool {
3460 self.inner.channel().is_closed()
3461 }
3462 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
3463 self.inner.channel().on_closed()
3464 }
3465
3466 #[cfg(target_os = "fuchsia")]
3467 fn signal_peer(
3468 &self,
3469 clear_mask: zx::Signals,
3470 set_mask: zx::Signals,
3471 ) -> Result<(), zx_status::Status> {
3472 use fidl::Peered;
3473 self.inner.channel().signal_peer(clear_mask, set_mask)
3474 }
3475}
3476
3477impl MlmeControlHandle {
3478 pub fn send_on_scan_result(&self, mut result: &ScanResult) -> Result<(), fidl::Error> {
3479 self.inner.send::<MlmeOnScanResultRequest>(
3480 (result,),
3481 0,
3482 0x681af7466a75074d,
3483 fidl::encoding::DynamicFlags::empty(),
3484 )
3485 }
3486
3487 pub fn send_on_scan_end(&self, mut end: &ScanEnd) -> Result<(), fidl::Error> {
3488 self.inner.send::<MlmeOnScanEndRequest>(
3489 (end,),
3490 0,
3491 0x7f2702d253e7ca59,
3492 fidl::encoding::DynamicFlags::empty(),
3493 )
3494 }
3495
3496 pub fn send_on_scheduled_scan_matches_available(
3497 &self,
3498 mut txn_id: u64,
3499 ) -> Result<(), fidl::Error> {
3500 self.inner.send::<MlmeOnScheduledScanMatchesAvailableRequest>(
3501 (txn_id,),
3502 0,
3503 0x3d915df5108ec4e1,
3504 fidl::encoding::DynamicFlags::empty(),
3505 )
3506 }
3507
3508 pub fn send_on_scheduled_scan_stopped_by_firmware(
3509 &self,
3510 mut txn_id: u64,
3511 ) -> Result<(), fidl::Error> {
3512 self.inner.send::<MlmeOnScheduledScanStoppedByFirmwareRequest>(
3513 (txn_id,),
3514 0,
3515 0x4c2cb4b145163fd0,
3516 fidl::encoding::DynamicFlags::empty(),
3517 )
3518 }
3519
3520 pub fn send_connect_conf(&self, mut resp: &ConnectConfirm) -> Result<(), fidl::Error> {
3521 self.inner.send::<MlmeConnectConfRequest>(
3522 (resp,),
3523 0,
3524 0x77b27623279b981e,
3525 fidl::encoding::DynamicFlags::empty(),
3526 )
3527 }
3528
3529 pub fn send_roam_conf(&self, mut conf: &RoamConfirm) -> Result<(), fidl::Error> {
3530 self.inner.send::<MlmeRoamConfRequest>(
3531 (conf,),
3532 0,
3533 0x3f608034faa054bc,
3534 fidl::encoding::DynamicFlags::empty(),
3535 )
3536 }
3537
3538 pub fn send_roam_start_ind(&self, mut ind: &RoamStartIndication) -> Result<(), fidl::Error> {
3539 self.inner.send::<MlmeRoamStartIndRequest>(
3540 (ind,),
3541 0,
3542 0x270a1ec78672d094,
3543 fidl::encoding::DynamicFlags::empty(),
3544 )
3545 }
3546
3547 pub fn send_roam_result_ind(&self, mut ind: &RoamResultIndication) -> Result<(), fidl::Error> {
3548 self.inner.send::<MlmeRoamResultIndRequest>(
3549 (ind,),
3550 0,
3551 0x26d074364fc84865,
3552 fidl::encoding::DynamicFlags::empty(),
3553 )
3554 }
3555
3556 pub fn send_authenticate_ind(
3557 &self,
3558 mut ind: &AuthenticateIndication,
3559 ) -> Result<(), fidl::Error> {
3560 self.inner.send::<MlmeAuthenticateIndRequest>(
3561 (ind,),
3562 0,
3563 0x460f49ae891adbe9,
3564 fidl::encoding::DynamicFlags::empty(),
3565 )
3566 }
3567
3568 pub fn send_deauthenticate_conf(
3569 &self,
3570 mut resp: &DeauthenticateConfirm,
3571 ) -> Result<(), fidl::Error> {
3572 self.inner.send::<MlmeDeauthenticateConfRequest>(
3573 (resp,),
3574 0,
3575 0x3b44debc21b88c8c,
3576 fidl::encoding::DynamicFlags::empty(),
3577 )
3578 }
3579
3580 pub fn send_deauthenticate_ind(
3581 &self,
3582 mut ind: &DeauthenticateIndication,
3583 ) -> Result<(), fidl::Error> {
3584 self.inner.send::<MlmeDeauthenticateIndRequest>(
3585 (ind,),
3586 0,
3587 0x7ee0889b326da1d7,
3588 fidl::encoding::DynamicFlags::empty(),
3589 )
3590 }
3591
3592 pub fn send_associate_ind(&self, mut ind: &AssociateIndication) -> Result<(), fidl::Error> {
3593 self.inner.send::<MlmeAssociateIndRequest>(
3594 (ind,),
3595 0,
3596 0x6a86f20e3063dd63,
3597 fidl::encoding::DynamicFlags::empty(),
3598 )
3599 }
3600
3601 pub fn send_disassociate_conf(
3602 &self,
3603 mut resp: &DisassociateConfirm,
3604 ) -> Result<(), fidl::Error> {
3605 self.inner.send::<MlmeDisassociateConfRequest>(
3606 (resp,),
3607 0,
3608 0x61345fbce732a28d,
3609 fidl::encoding::DynamicFlags::empty(),
3610 )
3611 }
3612
3613 pub fn send_disassociate_ind(
3614 &self,
3615 mut ind: &DisassociateIndication,
3616 ) -> Result<(), fidl::Error> {
3617 self.inner.send::<MlmeDisassociateIndRequest>(
3618 (ind,),
3619 0,
3620 0x77ac0ebf387c1f35,
3621 fidl::encoding::DynamicFlags::empty(),
3622 )
3623 }
3624
3625 pub fn send_start_conf(&self, mut resp: &StartConfirm) -> Result<(), fidl::Error> {
3626 self.inner.send::<MlmeStartConfRequest>(
3627 (resp,),
3628 0,
3629 0x15ea6cdf3b8382b3,
3630 fidl::encoding::DynamicFlags::empty(),
3631 )
3632 }
3633
3634 pub fn send_stop_conf(&self, mut resp: &StopConfirm) -> Result<(), fidl::Error> {
3635 self.inner.send::<MlmeStopConfRequest>(
3636 (resp,),
3637 0,
3638 0x50b426ef4a84a2df,
3639 fidl::encoding::DynamicFlags::empty(),
3640 )
3641 }
3642
3643 pub fn send_set_keys_conf(&self, mut conf: &SetKeysConfirm) -> Result<(), fidl::Error> {
3644 self.inner.send::<MlmeSetKeysConfRequest>(
3645 (conf,),
3646 0,
3647 0x5bafb3a8d4039380,
3648 fidl::encoding::DynamicFlags::empty(),
3649 )
3650 }
3651
3652 pub fn send_eapol_conf(&self, mut resp: &EapolConfirm) -> Result<(), fidl::Error> {
3653 self.inner.send::<MlmeEapolConfRequest>(
3654 (resp,),
3655 0,
3656 0x6ffa21f4ee73ce64,
3657 fidl::encoding::DynamicFlags::empty(),
3658 )
3659 }
3660
3661 pub fn send_signal_report(
3662 &self,
3663 mut ind: &fidl_fuchsia_wlan_internal::SignalReportIndication,
3664 ) -> Result<(), fidl::Error> {
3665 self.inner.send::<MlmeSignalReportRequest>(
3666 (ind,),
3667 0,
3668 0x48f32a876aa53d8f,
3669 fidl::encoding::DynamicFlags::empty(),
3670 )
3671 }
3672
3673 pub fn send_on_rssi_threshold_breached(&self, mut cur_rssi_dbm: i8) -> Result<(), fidl::Error> {
3674 self.inner.send::<MlmeOnRssiThresholdBreachedRequest>(
3675 (cur_rssi_dbm,),
3676 0,
3677 0x5803e9572d8c8f,
3678 fidl::encoding::DynamicFlags::empty(),
3679 )
3680 }
3681
3682 pub fn send_eapol_ind(&self, mut ind: &EapolIndication) -> Result<(), fidl::Error> {
3683 self.inner.send::<MlmeEapolIndRequest>(
3684 (ind,),
3685 0,
3686 0x7038dca46a3142fc,
3687 fidl::encoding::DynamicFlags::empty(),
3688 )
3689 }
3690
3691 pub fn send_relay_captured_frame(
3692 &self,
3693 mut result: &CapturedFrameResult,
3694 ) -> Result<(), fidl::Error> {
3695 self.inner.send::<MlmeRelayCapturedFrameRequest>(
3696 (result,),
3697 0,
3698 0x6f00a6f3cff9b1f5,
3699 fidl::encoding::DynamicFlags::empty(),
3700 )
3701 }
3702
3703 pub fn send_on_channel_switched(
3704 &self,
3705 mut info: &fidl_fuchsia_wlan_internal::ChannelSwitchInfo,
3706 ) -> Result<(), fidl::Error> {
3707 self.inner.send::<MlmeOnChannelSwitchedRequest>(
3708 (info,),
3709 0,
3710 0x581750594e4c0c1,
3711 fidl::encoding::DynamicFlags::empty(),
3712 )
3713 }
3714
3715 pub fn send_on_pmk_available(&self, mut info: &PmkInfo) -> Result<(), fidl::Error> {
3716 self.inner.send::<MlmeOnPmkAvailableRequest>(
3717 (info,),
3718 0,
3719 0x1314fc2c79643f90,
3720 fidl::encoding::DynamicFlags::empty(),
3721 )
3722 }
3723
3724 pub fn send_on_sae_handshake_ind(
3725 &self,
3726 mut ind: &SaeHandshakeIndication,
3727 ) -> Result<(), fidl::Error> {
3728 self.inner.send::<MlmeOnSaeHandshakeIndRequest>(
3729 (ind,),
3730 0,
3731 0x6308b10e18986d7e,
3732 fidl::encoding::DynamicFlags::empty(),
3733 )
3734 }
3735
3736 pub fn send_on_sae_frame_rx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
3737 self.inner.send::<MlmeOnSaeFrameRxRequest>(
3738 (frame,),
3739 0,
3740 0x4ebf51c86ef5f3cd,
3741 fidl::encoding::DynamicFlags::empty(),
3742 )
3743 }
3744
3745 pub fn send_on_wmm_status_resp(
3746 &self,
3747 mut status: i32,
3748 mut resp: &fidl_fuchsia_wlan_internal::WmmStatusResponse,
3749 ) -> Result<(), fidl::Error> {
3750 self.inner.send::<MlmeOnWmmStatusRespRequest>(
3751 (status, resp),
3752 0,
3753 0x53f056b432e7b5cb,
3754 fidl::encoding::DynamicFlags::empty(),
3755 )
3756 }
3757}
3758
3759#[must_use = "FIDL methods require a response to be sent"]
3760#[derive(Debug)]
3761pub struct MlmeStartScheduledScanResponder {
3762 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3763 tx_id: u32,
3764}
3765
3766impl std::ops::Drop for MlmeStartScheduledScanResponder {
3770 fn drop(&mut self) {
3771 self.control_handle.shutdown();
3772 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3774 }
3775}
3776
3777impl fidl::endpoints::Responder for MlmeStartScheduledScanResponder {
3778 type ControlHandle = MlmeControlHandle;
3779
3780 fn control_handle(&self) -> &MlmeControlHandle {
3781 &self.control_handle
3782 }
3783
3784 fn drop_without_shutdown(mut self) {
3785 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3787 std::mem::forget(self);
3789 }
3790}
3791
3792impl MlmeStartScheduledScanResponder {
3793 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3797 let _result = self.send_raw(result);
3798 if _result.is_err() {
3799 self.control_handle.shutdown();
3800 }
3801 self.drop_without_shutdown();
3802 _result
3803 }
3804
3805 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3807 let _result = self.send_raw(result);
3808 self.drop_without_shutdown();
3809 _result
3810 }
3811
3812 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3813 self.control_handle
3814 .inner
3815 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
3816 result,
3817 self.tx_id,
3818 0x7fff163af4620212,
3819 fidl::encoding::DynamicFlags::empty(),
3820 )
3821 }
3822}
3823
3824#[must_use = "FIDL methods require a response to be sent"]
3825#[derive(Debug)]
3826pub struct MlmeStopScheduledScanResponder {
3827 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3828 tx_id: u32,
3829}
3830
3831impl std::ops::Drop for MlmeStopScheduledScanResponder {
3835 fn drop(&mut self) {
3836 self.control_handle.shutdown();
3837 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3839 }
3840}
3841
3842impl fidl::endpoints::Responder for MlmeStopScheduledScanResponder {
3843 type ControlHandle = MlmeControlHandle;
3844
3845 fn control_handle(&self) -> &MlmeControlHandle {
3846 &self.control_handle
3847 }
3848
3849 fn drop_without_shutdown(mut self) {
3850 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3852 std::mem::forget(self);
3854 }
3855}
3856
3857impl MlmeStopScheduledScanResponder {
3858 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3862 let _result = self.send_raw(result);
3863 if _result.is_err() {
3864 self.control_handle.shutdown();
3865 }
3866 self.drop_without_shutdown();
3867 _result
3868 }
3869
3870 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3872 let _result = self.send_raw(result);
3873 self.drop_without_shutdown();
3874 _result
3875 }
3876
3877 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
3878 self.control_handle
3879 .inner
3880 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
3881 result,
3882 self.tx_id,
3883 0x5fbc466f3daa4dd9,
3884 fidl::encoding::DynamicFlags::empty(),
3885 )
3886 }
3887}
3888
3889#[must_use = "FIDL methods require a response to be sent"]
3890#[derive(Debug)]
3891pub struct MlmeGetScheduledScanEnabledResponder {
3892 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3893 tx_id: u32,
3894}
3895
3896impl std::ops::Drop for MlmeGetScheduledScanEnabledResponder {
3900 fn drop(&mut self) {
3901 self.control_handle.shutdown();
3902 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3904 }
3905}
3906
3907impl fidl::endpoints::Responder for MlmeGetScheduledScanEnabledResponder {
3908 type ControlHandle = MlmeControlHandle;
3909
3910 fn control_handle(&self) -> &MlmeControlHandle {
3911 &self.control_handle
3912 }
3913
3914 fn drop_without_shutdown(mut self) {
3915 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3917 std::mem::forget(self);
3919 }
3920}
3921
3922impl MlmeGetScheduledScanEnabledResponder {
3923 pub fn send(self, mut result: Result<&[u64], i32>) -> Result<(), fidl::Error> {
3927 let _result = self.send_raw(result);
3928 if _result.is_err() {
3929 self.control_handle.shutdown();
3930 }
3931 self.drop_without_shutdown();
3932 _result
3933 }
3934
3935 pub fn send_no_shutdown_on_err(
3937 self,
3938 mut result: Result<&[u64], i32>,
3939 ) -> Result<(), fidl::Error> {
3940 let _result = self.send_raw(result);
3941 self.drop_without_shutdown();
3942 _result
3943 }
3944
3945 fn send_raw(&self, mut result: Result<&[u64], i32>) -> Result<(), fidl::Error> {
3946 self.control_handle.inner.send::<fidl::encoding::ResultType<
3947 MlmeGetScheduledScanEnabledResponse,
3948 i32,
3949 >>(
3950 result.map(|active_txn_ids| (active_txn_ids,)),
3951 self.tx_id,
3952 0x1ecc6a7fe7f9fcff,
3953 fidl::encoding::DynamicFlags::empty(),
3954 )
3955 }
3956}
3957
3958#[must_use = "FIDL methods require a response to be sent"]
3959#[derive(Debug)]
3960pub struct MlmeQueryDeviceInfoResponder {
3961 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3962 tx_id: u32,
3963}
3964
3965impl std::ops::Drop for MlmeQueryDeviceInfoResponder {
3969 fn drop(&mut self) {
3970 self.control_handle.shutdown();
3971 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3973 }
3974}
3975
3976impl fidl::endpoints::Responder for MlmeQueryDeviceInfoResponder {
3977 type ControlHandle = MlmeControlHandle;
3978
3979 fn control_handle(&self) -> &MlmeControlHandle {
3980 &self.control_handle
3981 }
3982
3983 fn drop_without_shutdown(mut self) {
3984 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3986 std::mem::forget(self);
3988 }
3989}
3990
3991impl MlmeQueryDeviceInfoResponder {
3992 pub fn send(self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
3996 let _result = self.send_raw(info);
3997 if _result.is_err() {
3998 self.control_handle.shutdown();
3999 }
4000 self.drop_without_shutdown();
4001 _result
4002 }
4003
4004 pub fn send_no_shutdown_on_err(self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
4006 let _result = self.send_raw(info);
4007 self.drop_without_shutdown();
4008 _result
4009 }
4010
4011 fn send_raw(&self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
4012 self.control_handle.inner.send::<MlmeQueryDeviceInfoResponse>(
4013 (info,),
4014 self.tx_id,
4015 0x6ee3e7f63f2b7bc0,
4016 fidl::encoding::DynamicFlags::empty(),
4017 )
4018 }
4019}
4020
4021#[must_use = "FIDL methods require a response to be sent"]
4022#[derive(Debug)]
4023pub struct MlmeQueryTelemetrySupportResponder {
4024 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4025 tx_id: u32,
4026}
4027
4028impl std::ops::Drop for MlmeQueryTelemetrySupportResponder {
4032 fn drop(&mut self) {
4033 self.control_handle.shutdown();
4034 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4036 }
4037}
4038
4039impl fidl::endpoints::Responder for MlmeQueryTelemetrySupportResponder {
4040 type ControlHandle = MlmeControlHandle;
4041
4042 fn control_handle(&self) -> &MlmeControlHandle {
4043 &self.control_handle
4044 }
4045
4046 fn drop_without_shutdown(mut self) {
4047 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4049 std::mem::forget(self);
4051 }
4052}
4053
4054impl MlmeQueryTelemetrySupportResponder {
4055 pub fn send(
4059 self,
4060 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
4061 ) -> Result<(), fidl::Error> {
4062 let _result = self.send_raw(result);
4063 if _result.is_err() {
4064 self.control_handle.shutdown();
4065 }
4066 self.drop_without_shutdown();
4067 _result
4068 }
4069
4070 pub fn send_no_shutdown_on_err(
4072 self,
4073 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
4074 ) -> Result<(), fidl::Error> {
4075 let _result = self.send_raw(result);
4076 self.drop_without_shutdown();
4077 _result
4078 }
4079
4080 fn send_raw(
4081 &self,
4082 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
4083 ) -> Result<(), fidl::Error> {
4084 self.control_handle
4085 .inner
4086 .send::<fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>>(
4087 result.map(|resp| (resp,)),
4088 self.tx_id,
4089 0x1598879b70332c99,
4090 fidl::encoding::DynamicFlags::empty(),
4091 )
4092 }
4093}
4094
4095#[must_use = "FIDL methods require a response to be sent"]
4096#[derive(Debug)]
4097pub struct MlmeGetIfaceStatsResponder {
4098 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4099 tx_id: u32,
4100}
4101
4102impl std::ops::Drop for MlmeGetIfaceStatsResponder {
4106 fn drop(&mut self) {
4107 self.control_handle.shutdown();
4108 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4110 }
4111}
4112
4113impl fidl::endpoints::Responder for MlmeGetIfaceStatsResponder {
4114 type ControlHandle = MlmeControlHandle;
4115
4116 fn control_handle(&self) -> &MlmeControlHandle {
4117 &self.control_handle
4118 }
4119
4120 fn drop_without_shutdown(mut self) {
4121 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4123 std::mem::forget(self);
4125 }
4126}
4127
4128impl MlmeGetIfaceStatsResponder {
4129 pub fn send(self, mut resp: &GetIfaceStatsResponse) -> Result<(), fidl::Error> {
4133 let _result = self.send_raw(resp);
4134 if _result.is_err() {
4135 self.control_handle.shutdown();
4136 }
4137 self.drop_without_shutdown();
4138 _result
4139 }
4140
4141 pub fn send_no_shutdown_on_err(
4143 self,
4144 mut resp: &GetIfaceStatsResponse,
4145 ) -> Result<(), fidl::Error> {
4146 let _result = self.send_raw(resp);
4147 self.drop_without_shutdown();
4148 _result
4149 }
4150
4151 fn send_raw(&self, mut resp: &GetIfaceStatsResponse) -> Result<(), fidl::Error> {
4152 self.control_handle.inner.send::<MlmeGetIfaceStatsResponse>(
4153 (resp,),
4154 self.tx_id,
4155 0xede1a8342d1b211,
4156 fidl::encoding::DynamicFlags::empty(),
4157 )
4158 }
4159}
4160
4161#[must_use = "FIDL methods require a response to be sent"]
4162#[derive(Debug)]
4163pub struct MlmeGetIfaceHistogramStatsResponder {
4164 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4165 tx_id: u32,
4166}
4167
4168impl std::ops::Drop for MlmeGetIfaceHistogramStatsResponder {
4172 fn drop(&mut self) {
4173 self.control_handle.shutdown();
4174 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4176 }
4177}
4178
4179impl fidl::endpoints::Responder for MlmeGetIfaceHistogramStatsResponder {
4180 type ControlHandle = MlmeControlHandle;
4181
4182 fn control_handle(&self) -> &MlmeControlHandle {
4183 &self.control_handle
4184 }
4185
4186 fn drop_without_shutdown(mut self) {
4187 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4189 std::mem::forget(self);
4191 }
4192}
4193
4194impl MlmeGetIfaceHistogramStatsResponder {
4195 pub fn send(self, mut resp: &GetIfaceHistogramStatsResponse) -> Result<(), fidl::Error> {
4199 let _result = self.send_raw(resp);
4200 if _result.is_err() {
4201 self.control_handle.shutdown();
4202 }
4203 self.drop_without_shutdown();
4204 _result
4205 }
4206
4207 pub fn send_no_shutdown_on_err(
4209 self,
4210 mut resp: &GetIfaceHistogramStatsResponse,
4211 ) -> Result<(), fidl::Error> {
4212 let _result = self.send_raw(resp);
4213 self.drop_without_shutdown();
4214 _result
4215 }
4216
4217 fn send_raw(&self, mut resp: &GetIfaceHistogramStatsResponse) -> Result<(), fidl::Error> {
4218 self.control_handle.inner.send::<MlmeGetIfaceHistogramStatsResponse>(
4219 (resp,),
4220 self.tx_id,
4221 0x1979c9d3449f8675,
4222 fidl::encoding::DynamicFlags::empty(),
4223 )
4224 }
4225}
4226
4227#[must_use = "FIDL methods require a response to be sent"]
4228#[derive(Debug)]
4229pub struct MlmeGetSignalReportResponder {
4230 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4231 tx_id: u32,
4232}
4233
4234impl std::ops::Drop for MlmeGetSignalReportResponder {
4238 fn drop(&mut self) {
4239 self.control_handle.shutdown();
4240 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4242 }
4243}
4244
4245impl fidl::endpoints::Responder for MlmeGetSignalReportResponder {
4246 type ControlHandle = MlmeControlHandle;
4247
4248 fn control_handle(&self) -> &MlmeControlHandle {
4249 &self.control_handle
4250 }
4251
4252 fn drop_without_shutdown(mut self) {
4253 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4255 std::mem::forget(self);
4257 }
4258}
4259
4260impl MlmeGetSignalReportResponder {
4261 pub fn send(
4265 self,
4266 mut result: Result<&fidl_fuchsia_wlan_stats::SignalReport, i32>,
4267 ) -> Result<(), fidl::Error> {
4268 let _result = self.send_raw(result);
4269 if _result.is_err() {
4270 self.control_handle.shutdown();
4271 }
4272 self.drop_without_shutdown();
4273 _result
4274 }
4275
4276 pub fn send_no_shutdown_on_err(
4278 self,
4279 mut result: Result<&fidl_fuchsia_wlan_stats::SignalReport, i32>,
4280 ) -> Result<(), fidl::Error> {
4281 let _result = self.send_raw(result);
4282 self.drop_without_shutdown();
4283 _result
4284 }
4285
4286 fn send_raw(
4287 &self,
4288 mut result: Result<&fidl_fuchsia_wlan_stats::SignalReport, i32>,
4289 ) -> Result<(), fidl::Error> {
4290 self.control_handle
4291 .inner
4292 .send::<fidl::encoding::ResultType<MlmeGetSignalReportResponse, i32>>(
4293 result.map(|resp| (resp,)),
4294 self.tx_id,
4295 0x7e47e7ebe92acec9,
4296 fidl::encoding::DynamicFlags::empty(),
4297 )
4298 }
4299}
4300
4301#[must_use = "FIDL methods require a response to be sent"]
4302#[derive(Debug)]
4303pub struct MlmeListMinstrelPeersResponder {
4304 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4305 tx_id: u32,
4306}
4307
4308impl std::ops::Drop for MlmeListMinstrelPeersResponder {
4312 fn drop(&mut self) {
4313 self.control_handle.shutdown();
4314 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4316 }
4317}
4318
4319impl fidl::endpoints::Responder for MlmeListMinstrelPeersResponder {
4320 type ControlHandle = MlmeControlHandle;
4321
4322 fn control_handle(&self) -> &MlmeControlHandle {
4323 &self.control_handle
4324 }
4325
4326 fn drop_without_shutdown(mut self) {
4327 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4329 std::mem::forget(self);
4331 }
4332}
4333
4334impl MlmeListMinstrelPeersResponder {
4335 pub fn send(self, mut resp: &MinstrelListResponse) -> Result<(), fidl::Error> {
4339 let _result = self.send_raw(resp);
4340 if _result.is_err() {
4341 self.control_handle.shutdown();
4342 }
4343 self.drop_without_shutdown();
4344 _result
4345 }
4346
4347 pub fn send_no_shutdown_on_err(
4349 self,
4350 mut resp: &MinstrelListResponse,
4351 ) -> Result<(), fidl::Error> {
4352 let _result = self.send_raw(resp);
4353 self.drop_without_shutdown();
4354 _result
4355 }
4356
4357 fn send_raw(&self, mut resp: &MinstrelListResponse) -> Result<(), fidl::Error> {
4358 self.control_handle.inner.send::<MlmeListMinstrelPeersResponse>(
4359 (resp,),
4360 self.tx_id,
4361 0x4ac5d1e66fe1ffd5,
4362 fidl::encoding::DynamicFlags::empty(),
4363 )
4364 }
4365}
4366
4367#[must_use = "FIDL methods require a response to be sent"]
4368#[derive(Debug)]
4369pub struct MlmeGetMinstrelStatsResponder {
4370 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4371 tx_id: u32,
4372}
4373
4374impl std::ops::Drop for MlmeGetMinstrelStatsResponder {
4378 fn drop(&mut self) {
4379 self.control_handle.shutdown();
4380 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4382 }
4383}
4384
4385impl fidl::endpoints::Responder for MlmeGetMinstrelStatsResponder {
4386 type ControlHandle = MlmeControlHandle;
4387
4388 fn control_handle(&self) -> &MlmeControlHandle {
4389 &self.control_handle
4390 }
4391
4392 fn drop_without_shutdown(mut self) {
4393 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4395 std::mem::forget(self);
4397 }
4398}
4399
4400impl MlmeGetMinstrelStatsResponder {
4401 pub fn send(self, mut resp: &MinstrelStatsResponse) -> Result<(), fidl::Error> {
4405 let _result = self.send_raw(resp);
4406 if _result.is_err() {
4407 self.control_handle.shutdown();
4408 }
4409 self.drop_without_shutdown();
4410 _result
4411 }
4412
4413 pub fn send_no_shutdown_on_err(
4415 self,
4416 mut resp: &MinstrelStatsResponse,
4417 ) -> Result<(), fidl::Error> {
4418 let _result = self.send_raw(resp);
4419 self.drop_without_shutdown();
4420 _result
4421 }
4422
4423 fn send_raw(&self, mut resp: &MinstrelStatsResponse) -> Result<(), fidl::Error> {
4424 self.control_handle.inner.send::<MlmeGetMinstrelStatsResponse>(
4425 (resp,),
4426 self.tx_id,
4427 0x2f688b1245323f4b,
4428 fidl::encoding::DynamicFlags::empty(),
4429 )
4430 }
4431}
4432
4433#[must_use = "FIDL methods require a response to be sent"]
4434#[derive(Debug)]
4435pub struct MlmeStartCaptureFramesResponder {
4436 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4437 tx_id: u32,
4438}
4439
4440impl std::ops::Drop for MlmeStartCaptureFramesResponder {
4444 fn drop(&mut self) {
4445 self.control_handle.shutdown();
4446 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4448 }
4449}
4450
4451impl fidl::endpoints::Responder for MlmeStartCaptureFramesResponder {
4452 type ControlHandle = MlmeControlHandle;
4453
4454 fn control_handle(&self) -> &MlmeControlHandle {
4455 &self.control_handle
4456 }
4457
4458 fn drop_without_shutdown(mut self) {
4459 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4461 std::mem::forget(self);
4463 }
4464}
4465
4466impl MlmeStartCaptureFramesResponder {
4467 pub fn send(self, mut resp: &StartCaptureFramesResponse) -> Result<(), fidl::Error> {
4471 let _result = self.send_raw(resp);
4472 if _result.is_err() {
4473 self.control_handle.shutdown();
4474 }
4475 self.drop_without_shutdown();
4476 _result
4477 }
4478
4479 pub fn send_no_shutdown_on_err(
4481 self,
4482 mut resp: &StartCaptureFramesResponse,
4483 ) -> Result<(), fidl::Error> {
4484 let _result = self.send_raw(resp);
4485 self.drop_without_shutdown();
4486 _result
4487 }
4488
4489 fn send_raw(&self, mut resp: &StartCaptureFramesResponse) -> Result<(), fidl::Error> {
4490 self.control_handle.inner.send::<MlmeStartCaptureFramesResponse>(
4491 (resp,),
4492 self.tx_id,
4493 0x23b369ed5749ee69,
4494 fidl::encoding::DynamicFlags::empty(),
4495 )
4496 }
4497}
4498
4499#[must_use = "FIDL methods require a response to be sent"]
4500#[derive(Debug)]
4501pub struct MlmeSetMacAddressResponder {
4502 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4503 tx_id: u32,
4504}
4505
4506impl std::ops::Drop for MlmeSetMacAddressResponder {
4510 fn drop(&mut self) {
4511 self.control_handle.shutdown();
4512 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4514 }
4515}
4516
4517impl fidl::endpoints::Responder for MlmeSetMacAddressResponder {
4518 type ControlHandle = MlmeControlHandle;
4519
4520 fn control_handle(&self) -> &MlmeControlHandle {
4521 &self.control_handle
4522 }
4523
4524 fn drop_without_shutdown(mut self) {
4525 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4527 std::mem::forget(self);
4529 }
4530}
4531
4532impl MlmeSetMacAddressResponder {
4533 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4537 let _result = self.send_raw(result);
4538 if _result.is_err() {
4539 self.control_handle.shutdown();
4540 }
4541 self.drop_without_shutdown();
4542 _result
4543 }
4544
4545 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4547 let _result = self.send_raw(result);
4548 self.drop_without_shutdown();
4549 _result
4550 }
4551
4552 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4553 self.control_handle
4554 .inner
4555 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
4556 result,
4557 self.tx_id,
4558 0x476999f9bb27afe1,
4559 fidl::encoding::DynamicFlags::empty(),
4560 )
4561 }
4562}
4563
4564#[must_use = "FIDL methods require a response to be sent"]
4565#[derive(Debug)]
4566pub struct MlmeInstallApfPacketFilterResponder {
4567 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4568 tx_id: u32,
4569}
4570
4571impl std::ops::Drop for MlmeInstallApfPacketFilterResponder {
4575 fn drop(&mut self) {
4576 self.control_handle.shutdown();
4577 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4579 }
4580}
4581
4582impl fidl::endpoints::Responder for MlmeInstallApfPacketFilterResponder {
4583 type ControlHandle = MlmeControlHandle;
4584
4585 fn control_handle(&self) -> &MlmeControlHandle {
4586 &self.control_handle
4587 }
4588
4589 fn drop_without_shutdown(mut self) {
4590 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4592 std::mem::forget(self);
4594 }
4595}
4596
4597impl MlmeInstallApfPacketFilterResponder {
4598 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4602 let _result = self.send_raw(result);
4603 if _result.is_err() {
4604 self.control_handle.shutdown();
4605 }
4606 self.drop_without_shutdown();
4607 _result
4608 }
4609
4610 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4612 let _result = self.send_raw(result);
4613 self.drop_without_shutdown();
4614 _result
4615 }
4616
4617 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4618 self.control_handle
4619 .inner
4620 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
4621 result,
4622 self.tx_id,
4623 0x267565b4916c825b,
4624 fidl::encoding::DynamicFlags::empty(),
4625 )
4626 }
4627}
4628
4629#[must_use = "FIDL methods require a response to be sent"]
4630#[derive(Debug)]
4631pub struct MlmeReadApfPacketFilterDataResponder {
4632 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4633 tx_id: u32,
4634}
4635
4636impl std::ops::Drop for MlmeReadApfPacketFilterDataResponder {
4640 fn drop(&mut self) {
4641 self.control_handle.shutdown();
4642 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4644 }
4645}
4646
4647impl fidl::endpoints::Responder for MlmeReadApfPacketFilterDataResponder {
4648 type ControlHandle = MlmeControlHandle;
4649
4650 fn control_handle(&self) -> &MlmeControlHandle {
4651 &self.control_handle
4652 }
4653
4654 fn drop_without_shutdown(mut self) {
4655 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4657 std::mem::forget(self);
4659 }
4660}
4661
4662impl MlmeReadApfPacketFilterDataResponder {
4663 pub fn send(self, mut result: Result<&[u8], i32>) -> Result<(), fidl::Error> {
4667 let _result = self.send_raw(result);
4668 if _result.is_err() {
4669 self.control_handle.shutdown();
4670 }
4671 self.drop_without_shutdown();
4672 _result
4673 }
4674
4675 pub fn send_no_shutdown_on_err(
4677 self,
4678 mut result: Result<&[u8], i32>,
4679 ) -> Result<(), fidl::Error> {
4680 let _result = self.send_raw(result);
4681 self.drop_without_shutdown();
4682 _result
4683 }
4684
4685 fn send_raw(&self, mut result: Result<&[u8], i32>) -> Result<(), fidl::Error> {
4686 self.control_handle.inner.send::<fidl::encoding::ResultType<
4687 MlmeReadApfPacketFilterDataResponse,
4688 i32,
4689 >>(
4690 result.map(|memory| (memory,)),
4691 self.tx_id,
4692 0x6040d744f1b2cb61,
4693 fidl::encoding::DynamicFlags::empty(),
4694 )
4695 }
4696}
4697
4698#[must_use = "FIDL methods require a response to be sent"]
4699#[derive(Debug)]
4700pub struct MlmeSetApfPacketFilterEnabledResponder {
4701 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4702 tx_id: u32,
4703}
4704
4705impl std::ops::Drop for MlmeSetApfPacketFilterEnabledResponder {
4709 fn drop(&mut self) {
4710 self.control_handle.shutdown();
4711 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4713 }
4714}
4715
4716impl fidl::endpoints::Responder for MlmeSetApfPacketFilterEnabledResponder {
4717 type ControlHandle = MlmeControlHandle;
4718
4719 fn control_handle(&self) -> &MlmeControlHandle {
4720 &self.control_handle
4721 }
4722
4723 fn drop_without_shutdown(mut self) {
4724 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4726 std::mem::forget(self);
4728 }
4729}
4730
4731impl MlmeSetApfPacketFilterEnabledResponder {
4732 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4736 let _result = self.send_raw(result);
4737 if _result.is_err() {
4738 self.control_handle.shutdown();
4739 }
4740 self.drop_without_shutdown();
4741 _result
4742 }
4743
4744 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4746 let _result = self.send_raw(result);
4747 self.drop_without_shutdown();
4748 _result
4749 }
4750
4751 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4752 self.control_handle
4753 .inner
4754 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
4755 result,
4756 self.tx_id,
4757 0x6d99bdca77076aea,
4758 fidl::encoding::DynamicFlags::empty(),
4759 )
4760 }
4761}
4762
4763#[must_use = "FIDL methods require a response to be sent"]
4764#[derive(Debug)]
4765pub struct MlmeGetApfPacketFilterEnabledResponder {
4766 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4767 tx_id: u32,
4768}
4769
4770impl std::ops::Drop for MlmeGetApfPacketFilterEnabledResponder {
4774 fn drop(&mut self) {
4775 self.control_handle.shutdown();
4776 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4778 }
4779}
4780
4781impl fidl::endpoints::Responder for MlmeGetApfPacketFilterEnabledResponder {
4782 type ControlHandle = MlmeControlHandle;
4783
4784 fn control_handle(&self) -> &MlmeControlHandle {
4785 &self.control_handle
4786 }
4787
4788 fn drop_without_shutdown(mut self) {
4789 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4791 std::mem::forget(self);
4793 }
4794}
4795
4796impl MlmeGetApfPacketFilterEnabledResponder {
4797 pub fn send(self, mut result: Result<bool, i32>) -> Result<(), fidl::Error> {
4801 let _result = self.send_raw(result);
4802 if _result.is_err() {
4803 self.control_handle.shutdown();
4804 }
4805 self.drop_without_shutdown();
4806 _result
4807 }
4808
4809 pub fn send_no_shutdown_on_err(self, mut result: Result<bool, i32>) -> Result<(), fidl::Error> {
4811 let _result = self.send_raw(result);
4812 self.drop_without_shutdown();
4813 _result
4814 }
4815
4816 fn send_raw(&self, mut result: Result<bool, i32>) -> Result<(), fidl::Error> {
4817 self.control_handle.inner.send::<fidl::encoding::ResultType<
4818 MlmeGetApfPacketFilterEnabledResponse,
4819 i32,
4820 >>(
4821 result.map(|enabled| (enabled,)),
4822 self.tx_id,
4823 0x1df408bc154be1e4,
4824 fidl::encoding::DynamicFlags::empty(),
4825 )
4826 }
4827}
4828
4829#[must_use = "FIDL methods require a response to be sent"]
4830#[derive(Debug)]
4831pub struct MlmeStartRssiMonitorResponder {
4832 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
4833 tx_id: u32,
4834}
4835
4836impl std::ops::Drop for MlmeStartRssiMonitorResponder {
4840 fn drop(&mut self) {
4841 self.control_handle.shutdown();
4842 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4844 }
4845}
4846
4847impl fidl::endpoints::Responder for MlmeStartRssiMonitorResponder {
4848 type ControlHandle = MlmeControlHandle;
4849
4850 fn control_handle(&self) -> &MlmeControlHandle {
4851 &self.control_handle
4852 }
4853
4854 fn drop_without_shutdown(mut self) {
4855 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4857 std::mem::forget(self);
4859 }
4860}
4861
4862impl MlmeStartRssiMonitorResponder {
4863 pub fn send(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4867 let _result = self.send_raw(result);
4868 if _result.is_err() {
4869 self.control_handle.shutdown();
4870 }
4871 self.drop_without_shutdown();
4872 _result
4873 }
4874
4875 pub fn send_no_shutdown_on_err(self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4877 let _result = self.send_raw(result);
4878 self.drop_without_shutdown();
4879 _result
4880 }
4881
4882 fn send_raw(&self, mut result: Result<(), i32>) -> Result<(), fidl::Error> {
4883 self.control_handle
4884 .inner
4885 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, i32>>(
4886 result,
4887 self.tx_id,
4888 0x542a970415b1d912,
4889 fidl::encoding::DynamicFlags::empty(),
4890 )
4891 }
4892}
4893
4894mod internal {
4895 use super::*;
4896
4897 impl fidl::encoding::ResourceTypeMarker for ConnectorConnectRequest {
4898 type Borrowed<'a> = &'a mut Self;
4899 fn take_or_borrow<'a>(
4900 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
4901 ) -> Self::Borrowed<'a> {
4902 value
4903 }
4904 }
4905
4906 unsafe impl fidl::encoding::TypeMarker for ConnectorConnectRequest {
4907 type Owned = Self;
4908
4909 #[inline(always)]
4910 fn inline_align(_context: fidl::encoding::Context) -> usize {
4911 4
4912 }
4913
4914 #[inline(always)]
4915 fn inline_size(_context: fidl::encoding::Context) -> usize {
4916 4
4917 }
4918 }
4919
4920 unsafe impl
4921 fidl::encoding::Encode<
4922 ConnectorConnectRequest,
4923 fidl::encoding::DefaultFuchsiaResourceDialect,
4924 > for &mut ConnectorConnectRequest
4925 {
4926 #[inline]
4927 unsafe fn encode(
4928 self,
4929 encoder: &mut fidl::encoding::Encoder<
4930 '_,
4931 fidl::encoding::DefaultFuchsiaResourceDialect,
4932 >,
4933 offset: usize,
4934 _depth: fidl::encoding::Depth,
4935 ) -> fidl::Result<()> {
4936 encoder.debug_check_bounds::<ConnectorConnectRequest>(offset);
4937 fidl::encoding::Encode::<ConnectorConnectRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
4939 (
4940 <fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.request),
4941 ),
4942 encoder, offset, _depth
4943 )
4944 }
4945 }
4946 unsafe impl<
4947 T0: fidl::encoding::Encode<
4948 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
4949 fidl::encoding::DefaultFuchsiaResourceDialect,
4950 >,
4951 >
4952 fidl::encoding::Encode<
4953 ConnectorConnectRequest,
4954 fidl::encoding::DefaultFuchsiaResourceDialect,
4955 > for (T0,)
4956 {
4957 #[inline]
4958 unsafe fn encode(
4959 self,
4960 encoder: &mut fidl::encoding::Encoder<
4961 '_,
4962 fidl::encoding::DefaultFuchsiaResourceDialect,
4963 >,
4964 offset: usize,
4965 depth: fidl::encoding::Depth,
4966 ) -> fidl::Result<()> {
4967 encoder.debug_check_bounds::<ConnectorConnectRequest>(offset);
4968 self.0.encode(encoder, offset + 0, depth)?;
4972 Ok(())
4973 }
4974 }
4975
4976 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
4977 for ConnectorConnectRequest
4978 {
4979 #[inline(always)]
4980 fn new_empty() -> Self {
4981 Self {
4982 request: fidl::new_empty!(
4983 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
4984 fidl::encoding::DefaultFuchsiaResourceDialect
4985 ),
4986 }
4987 }
4988
4989 #[inline]
4990 unsafe fn decode(
4991 &mut self,
4992 decoder: &mut fidl::encoding::Decoder<
4993 '_,
4994 fidl::encoding::DefaultFuchsiaResourceDialect,
4995 >,
4996 offset: usize,
4997 _depth: fidl::encoding::Depth,
4998 ) -> fidl::Result<()> {
4999 decoder.debug_check_bounds::<Self>(offset);
5000 fidl::decode!(
5002 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
5003 fidl::encoding::DefaultFuchsiaResourceDialect,
5004 &mut self.request,
5005 decoder,
5006 offset + 0,
5007 _depth
5008 )?;
5009 Ok(())
5010 }
5011 }
5012}