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 let protocol_name = <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
65 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
66 }
67
68 pub fn into_channel(self) -> fidl::Channel {
69 self.client.into_channel()
70 }
71
72 pub fn wait_for_event(
75 &self,
76 deadline: zx::MonotonicInstant,
77 ) -> Result<ConnectorEvent, fidl::Error> {
78 ConnectorEvent::decode(self.client.wait_for_event(deadline)?)
79 }
80
81 pub fn r#connect(
82 &self,
83 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
84 ) -> Result<(), fidl::Error> {
85 self.client.send::<ConnectorConnectRequest>(
86 (request,),
87 0x42131859717af962,
88 fidl::encoding::DynamicFlags::empty(),
89 )
90 }
91}
92
93#[derive(Debug, Clone)]
94pub struct ConnectorProxy {
95 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
96}
97
98impl fidl::endpoints::Proxy for ConnectorProxy {
99 type Protocol = ConnectorMarker;
100
101 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
102 Self::new(inner)
103 }
104
105 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
106 self.client.into_channel().map_err(|client| Self { client })
107 }
108
109 fn as_channel(&self) -> &::fidl::AsyncChannel {
110 self.client.as_channel()
111 }
112}
113
114impl ConnectorProxy {
115 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
117 let protocol_name = <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
118 Self { client: fidl::client::Client::new(channel, protocol_name) }
119 }
120
121 pub fn take_event_stream(&self) -> ConnectorEventStream {
127 ConnectorEventStream { event_receiver: self.client.take_event_receiver() }
128 }
129
130 pub fn r#connect(
131 &self,
132 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
133 ) -> Result<(), fidl::Error> {
134 ConnectorProxyInterface::r#connect(self, request)
135 }
136}
137
138impl ConnectorProxyInterface for ConnectorProxy {
139 fn r#connect(
140 &self,
141 mut request: fidl::endpoints::ServerEnd<MlmeMarker>,
142 ) -> Result<(), fidl::Error> {
143 self.client.send::<ConnectorConnectRequest>(
144 (request,),
145 0x42131859717af962,
146 fidl::encoding::DynamicFlags::empty(),
147 )
148 }
149}
150
151pub struct ConnectorEventStream {
152 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
153}
154
155impl std::marker::Unpin for ConnectorEventStream {}
156
157impl futures::stream::FusedStream for ConnectorEventStream {
158 fn is_terminated(&self) -> bool {
159 self.event_receiver.is_terminated()
160 }
161}
162
163impl futures::Stream for ConnectorEventStream {
164 type Item = Result<ConnectorEvent, fidl::Error>;
165
166 fn poll_next(
167 mut self: std::pin::Pin<&mut Self>,
168 cx: &mut std::task::Context<'_>,
169 ) -> std::task::Poll<Option<Self::Item>> {
170 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
171 &mut self.event_receiver,
172 cx
173 )?) {
174 Some(buf) => std::task::Poll::Ready(Some(ConnectorEvent::decode(buf))),
175 None => std::task::Poll::Ready(None),
176 }
177 }
178}
179
180#[derive(Debug)]
181pub enum ConnectorEvent {}
182
183impl ConnectorEvent {
184 fn decode(
186 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
187 ) -> Result<ConnectorEvent, fidl::Error> {
188 let (bytes, _handles) = buf.split_mut();
189 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
190 debug_assert_eq!(tx_header.tx_id, 0);
191 match tx_header.ordinal {
192 _ => Err(fidl::Error::UnknownOrdinal {
193 ordinal: tx_header.ordinal,
194 protocol_name: <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
195 }),
196 }
197 }
198}
199
200pub struct ConnectorRequestStream {
202 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
203 is_terminated: bool,
204}
205
206impl std::marker::Unpin for ConnectorRequestStream {}
207
208impl futures::stream::FusedStream for ConnectorRequestStream {
209 fn is_terminated(&self) -> bool {
210 self.is_terminated
211 }
212}
213
214impl fidl::endpoints::RequestStream for ConnectorRequestStream {
215 type Protocol = ConnectorMarker;
216 type ControlHandle = ConnectorControlHandle;
217
218 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
219 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
220 }
221
222 fn control_handle(&self) -> Self::ControlHandle {
223 ConnectorControlHandle { inner: self.inner.clone() }
224 }
225
226 fn into_inner(
227 self,
228 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
229 {
230 (self.inner, self.is_terminated)
231 }
232
233 fn from_inner(
234 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
235 is_terminated: bool,
236 ) -> Self {
237 Self { inner, is_terminated }
238 }
239}
240
241impl futures::Stream for ConnectorRequestStream {
242 type Item = Result<ConnectorRequest, fidl::Error>;
243
244 fn poll_next(
245 mut self: std::pin::Pin<&mut Self>,
246 cx: &mut std::task::Context<'_>,
247 ) -> std::task::Poll<Option<Self::Item>> {
248 let this = &mut *self;
249 if this.inner.check_shutdown(cx) {
250 this.is_terminated = true;
251 return std::task::Poll::Ready(None);
252 }
253 if this.is_terminated {
254 panic!("polled ConnectorRequestStream after completion");
255 }
256 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
257 |bytes, handles| {
258 match this.inner.channel().read_etc(cx, bytes, handles) {
259 std::task::Poll::Ready(Ok(())) => {}
260 std::task::Poll::Pending => return std::task::Poll::Pending,
261 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
262 this.is_terminated = true;
263 return std::task::Poll::Ready(None);
264 }
265 std::task::Poll::Ready(Err(e)) => {
266 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
267 e.into(),
268 ))))
269 }
270 }
271
272 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
274
275 std::task::Poll::Ready(Some(match header.ordinal {
276 0x42131859717af962 => {
277 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
278 let mut req = fidl::new_empty!(
279 ConnectorConnectRequest,
280 fidl::encoding::DefaultFuchsiaResourceDialect
281 );
282 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ConnectorConnectRequest>(&header, _body_bytes, handles, &mut req)?;
283 let control_handle = ConnectorControlHandle { inner: this.inner.clone() };
284 Ok(ConnectorRequest::Connect { request: req.request, control_handle })
285 }
286 _ => Err(fidl::Error::UnknownOrdinal {
287 ordinal: header.ordinal,
288 protocol_name:
289 <ConnectorMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
290 }),
291 }))
292 },
293 )
294 }
295}
296
297#[derive(Debug)]
299pub enum ConnectorRequest {
300 Connect {
301 request: fidl::endpoints::ServerEnd<MlmeMarker>,
302 control_handle: ConnectorControlHandle,
303 },
304}
305
306impl ConnectorRequest {
307 #[allow(irrefutable_let_patterns)]
308 pub fn into_connect(
309 self,
310 ) -> Option<(fidl::endpoints::ServerEnd<MlmeMarker>, ConnectorControlHandle)> {
311 if let ConnectorRequest::Connect { request, control_handle } = self {
312 Some((request, control_handle))
313 } else {
314 None
315 }
316 }
317
318 pub fn method_name(&self) -> &'static str {
320 match *self {
321 ConnectorRequest::Connect { .. } => "connect",
322 }
323 }
324}
325
326#[derive(Debug, Clone)]
327pub struct ConnectorControlHandle {
328 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
329}
330
331impl fidl::endpoints::ControlHandle for ConnectorControlHandle {
332 fn shutdown(&self) {
333 self.inner.shutdown()
334 }
335 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
336 self.inner.shutdown_with_epitaph(status)
337 }
338
339 fn is_closed(&self) -> bool {
340 self.inner.channel().is_closed()
341 }
342 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
343 self.inner.channel().on_closed()
344 }
345
346 #[cfg(target_os = "fuchsia")]
347 fn signal_peer(
348 &self,
349 clear_mask: zx::Signals,
350 set_mask: zx::Signals,
351 ) -> Result<(), zx_status::Status> {
352 use fidl::Peered;
353 self.inner.channel().signal_peer(clear_mask, set_mask)
354 }
355}
356
357impl ConnectorControlHandle {}
358
359#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
360pub struct MlmeMarker;
361
362impl fidl::endpoints::ProtocolMarker for MlmeMarker {
363 type Proxy = MlmeProxy;
364 type RequestStream = MlmeRequestStream;
365 #[cfg(target_os = "fuchsia")]
366 type SynchronousProxy = MlmeSynchronousProxy;
367
368 const DEBUG_NAME: &'static str = "(anonymous) Mlme";
369}
370pub type MlmeQueryTelemetrySupportResult = Result<fidl_fuchsia_wlan_stats::TelemetrySupport, i32>;
371
372pub trait MlmeProxyInterface: Send + Sync {
373 fn r#start_scan(&self, req: &ScanRequest) -> Result<(), fidl::Error>;
374 fn r#connect_req(&self, req: &ConnectRequest) -> Result<(), fidl::Error>;
375 fn r#reconnect_req(&self, req: &ReconnectRequest) -> Result<(), fidl::Error>;
376 fn r#roam_req(&self, req: &RoamRequest) -> Result<(), fidl::Error>;
377 fn r#authenticate_resp(&self, resp: &AuthenticateResponse) -> Result<(), fidl::Error>;
378 fn r#deauthenticate_req(&self, req: &DeauthenticateRequest) -> Result<(), fidl::Error>;
379 fn r#associate_resp(&self, resp: &AssociateResponse) -> Result<(), fidl::Error>;
380 fn r#disassociate_req(&self, req: &DisassociateRequest) -> Result<(), fidl::Error>;
381 fn r#reset_req(&self, req: &ResetRequest) -> Result<(), fidl::Error>;
382 fn r#start_req(&self, req: &StartRequest) -> Result<(), fidl::Error>;
383 fn r#stop_req(&self, req: &StopRequest) -> Result<(), fidl::Error>;
384 fn r#set_keys_req(&self, req: &SetKeysRequest) -> Result<(), fidl::Error>;
385 fn r#delete_keys_req(&self, req: &DeleteKeysRequest) -> Result<(), fidl::Error>;
386 fn r#eapol_req(&self, req: &EapolRequest) -> Result<(), fidl::Error>;
387 fn r#set_controlled_port(&self, req: &SetControlledPortRequest) -> Result<(), fidl::Error>;
388 type QueryDeviceInfoResponseFut: std::future::Future<Output = Result<DeviceInfo, fidl::Error>>
389 + Send;
390 fn r#query_device_info(&self) -> Self::QueryDeviceInfoResponseFut;
391 type QueryDiscoverySupportResponseFut: std::future::Future<
392 Output = Result<fidl_fuchsia_wlan_common::DiscoverySupport, fidl::Error>,
393 > + Send;
394 fn r#query_discovery_support(&self) -> Self::QueryDiscoverySupportResponseFut;
395 type QueryMacSublayerSupportResponseFut: std::future::Future<
396 Output = Result<fidl_fuchsia_wlan_common::MacSublayerSupport, fidl::Error>,
397 > + Send;
398 fn r#query_mac_sublayer_support(&self) -> Self::QueryMacSublayerSupportResponseFut;
399 type QuerySecuritySupportResponseFut: std::future::Future<Output = Result<fidl_fuchsia_wlan_common::SecuritySupport, fidl::Error>>
400 + Send;
401 fn r#query_security_support(&self) -> Self::QuerySecuritySupportResponseFut;
402 type QuerySpectrumManagementSupportResponseFut: std::future::Future<
403 Output = Result<fidl_fuchsia_wlan_common::SpectrumManagementSupport, fidl::Error>,
404 > + Send;
405 fn r#query_spectrum_management_support(
406 &self,
407 ) -> Self::QuerySpectrumManagementSupportResponseFut;
408 type QueryTelemetrySupportResponseFut: std::future::Future<Output = Result<MlmeQueryTelemetrySupportResult, fidl::Error>>
409 + Send;
410 fn r#query_telemetry_support(&self) -> Self::QueryTelemetrySupportResponseFut;
411 type GetIfaceStatsResponseFut: std::future::Future<Output = Result<GetIfaceStatsResponse, fidl::Error>>
412 + Send;
413 fn r#get_iface_stats(&self) -> Self::GetIfaceStatsResponseFut;
414 type GetIfaceHistogramStatsResponseFut: std::future::Future<Output = Result<GetIfaceHistogramStatsResponse, fidl::Error>>
415 + Send;
416 fn r#get_iface_histogram_stats(&self) -> Self::GetIfaceHistogramStatsResponseFut;
417 type ListMinstrelPeersResponseFut: std::future::Future<Output = Result<MinstrelListResponse, fidl::Error>>
418 + Send;
419 fn r#list_minstrel_peers(&self) -> Self::ListMinstrelPeersResponseFut;
420 type GetMinstrelStatsResponseFut: std::future::Future<Output = Result<MinstrelStatsResponse, fidl::Error>>
421 + Send;
422 fn r#get_minstrel_stats(&self, req: &MinstrelStatsRequest)
423 -> Self::GetMinstrelStatsResponseFut;
424 type StartCaptureFramesResponseFut: std::future::Future<Output = Result<StartCaptureFramesResponse, fidl::Error>>
425 + Send;
426 fn r#start_capture_frames(
427 &self,
428 req: &StartCaptureFramesRequest,
429 ) -> Self::StartCaptureFramesResponseFut;
430 fn r#stop_capture_frames(&self) -> Result<(), fidl::Error>;
431 fn r#sae_handshake_resp(&self, resp: &SaeHandshakeResponse) -> Result<(), fidl::Error>;
432 fn r#sae_frame_tx(&self, frame: &SaeFrame) -> Result<(), fidl::Error>;
433 fn r#wmm_status_req(&self) -> Result<(), fidl::Error>;
434 fn r#finalize_association_req(
435 &self,
436 negotiated_capabilities: &NegotiatedCapabilities,
437 ) -> Result<(), fidl::Error>;
438}
439#[derive(Debug)]
440#[cfg(target_os = "fuchsia")]
441pub struct MlmeSynchronousProxy {
442 client: fidl::client::sync::Client,
443}
444
445#[cfg(target_os = "fuchsia")]
446impl fidl::endpoints::SynchronousProxy for MlmeSynchronousProxy {
447 type Proxy = MlmeProxy;
448 type Protocol = MlmeMarker;
449
450 fn from_channel(inner: fidl::Channel) -> Self {
451 Self::new(inner)
452 }
453
454 fn into_channel(self) -> fidl::Channel {
455 self.client.into_channel()
456 }
457
458 fn as_channel(&self) -> &fidl::Channel {
459 self.client.as_channel()
460 }
461}
462
463#[cfg(target_os = "fuchsia")]
464impl MlmeSynchronousProxy {
465 pub fn new(channel: fidl::Channel) -> Self {
466 let protocol_name = <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
467 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
468 }
469
470 pub fn into_channel(self) -> fidl::Channel {
471 self.client.into_channel()
472 }
473
474 pub fn wait_for_event(&self, deadline: zx::MonotonicInstant) -> Result<MlmeEvent, fidl::Error> {
477 MlmeEvent::decode(self.client.wait_for_event(deadline)?)
478 }
479
480 pub fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
481 self.client.send::<MlmeStartScanRequest>(
482 (req,),
483 0x342cc5ec6a957479,
484 fidl::encoding::DynamicFlags::empty(),
485 )
486 }
487
488 pub fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
489 self.client.send::<MlmeConnectReqRequest>(
490 (req,),
491 0x31153dc85f8f64c,
492 fidl::encoding::DynamicFlags::empty(),
493 )
494 }
495
496 pub fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
497 self.client.send::<MlmeReconnectReqRequest>(
498 (req,),
499 0x74e0f1bd758b6b78,
500 fidl::encoding::DynamicFlags::empty(),
501 )
502 }
503
504 pub fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
506 self.client.send::<MlmeRoamReqRequest>(
507 (req,),
508 0x3ba163eadf7dba45,
509 fidl::encoding::DynamicFlags::empty(),
510 )
511 }
512
513 pub fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
514 self.client.send::<MlmeAuthenticateRespRequest>(
515 (resp,),
516 0x26108aade2fdd2f4,
517 fidl::encoding::DynamicFlags::empty(),
518 )
519 }
520
521 pub fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
522 self.client.send::<MlmeDeauthenticateReqRequest>(
523 (req,),
524 0x228983b200de5d12,
525 fidl::encoding::DynamicFlags::empty(),
526 )
527 }
528
529 pub fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
530 self.client.send::<MlmeAssociateRespRequest>(
531 (resp,),
532 0x70244dbd652ed6d9,
533 fidl::encoding::DynamicFlags::empty(),
534 )
535 }
536
537 pub fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
538 self.client.send::<MlmeDisassociateReqRequest>(
539 (req,),
540 0x5765807f1387d764,
541 fidl::encoding::DynamicFlags::empty(),
542 )
543 }
544
545 pub fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
546 self.client.send::<MlmeResetReqRequest>(
547 (req,),
548 0x780b98c58a286b9f,
549 fidl::encoding::DynamicFlags::empty(),
550 )
551 }
552
553 pub fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
554 self.client.send::<MlmeStartReqRequest>(
555 (req,),
556 0x5d95885f8053654,
557 fidl::encoding::DynamicFlags::empty(),
558 )
559 }
560
561 pub fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
562 self.client.send::<MlmeStopReqRequest>(
563 (req,),
564 0x27b9a2ab04a2c79f,
565 fidl::encoding::DynamicFlags::empty(),
566 )
567 }
568
569 pub fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
570 self.client.send::<MlmeSetKeysReqRequest>(
571 (req,),
572 0x6b30a07fd3a11a79,
573 fidl::encoding::DynamicFlags::empty(),
574 )
575 }
576
577 pub fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
578 self.client.send::<MlmeDeleteKeysReqRequest>(
579 (req,),
580 0x1e3524d20d190c8f,
581 fidl::encoding::DynamicFlags::empty(),
582 )
583 }
584
585 pub fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
586 self.client.send::<MlmeEapolReqRequest>(
587 (req,),
588 0xc3c096924704d4,
589 fidl::encoding::DynamicFlags::empty(),
590 )
591 }
592
593 pub fn r#set_controlled_port(
594 &self,
595 mut req: &SetControlledPortRequest,
596 ) -> Result<(), fidl::Error> {
597 self.client.send::<MlmeSetControlledPortRequest>(
598 (req,),
599 0x4e47065668890c8d,
600 fidl::encoding::DynamicFlags::empty(),
601 )
602 }
603
604 pub fn r#query_device_info(
605 &self,
606 ___deadline: zx::MonotonicInstant,
607 ) -> Result<DeviceInfo, fidl::Error> {
608 let _response =
609 self.client.send_query::<fidl::encoding::EmptyPayload, MlmeQueryDeviceInfoResponse>(
610 (),
611 0x6ee3e7f63f2b7bc0,
612 fidl::encoding::DynamicFlags::empty(),
613 ___deadline,
614 )?;
615 Ok(_response.info)
616 }
617
618 pub fn r#query_discovery_support(
619 &self,
620 ___deadline: zx::MonotonicInstant,
621 ) -> Result<fidl_fuchsia_wlan_common::DiscoverySupport, fidl::Error> {
622 let _response = self
623 .client
624 .send_query::<fidl::encoding::EmptyPayload, MlmeQueryDiscoverySupportResponse>(
625 (),
626 0x4ac57b8eee721a2,
627 fidl::encoding::DynamicFlags::empty(),
628 ___deadline,
629 )?;
630 Ok(_response.resp)
631 }
632
633 pub fn r#query_mac_sublayer_support(
634 &self,
635 ___deadline: zx::MonotonicInstant,
636 ) -> Result<fidl_fuchsia_wlan_common::MacSublayerSupport, fidl::Error> {
637 let _response = self
638 .client
639 .send_query::<fidl::encoding::EmptyPayload, MlmeQueryMacSublayerSupportResponse>(
640 (),
641 0x70d23f3b08382854,
642 fidl::encoding::DynamicFlags::empty(),
643 ___deadline,
644 )?;
645 Ok(_response.resp)
646 }
647
648 pub fn r#query_security_support(
649 &self,
650 ___deadline: zx::MonotonicInstant,
651 ) -> Result<fidl_fuchsia_wlan_common::SecuritySupport, fidl::Error> {
652 let _response = self
653 .client
654 .send_query::<fidl::encoding::EmptyPayload, MlmeQuerySecuritySupportResponse>(
655 (),
656 0x2512eb3424620151,
657 fidl::encoding::DynamicFlags::empty(),
658 ___deadline,
659 )?;
660 Ok(_response.resp)
661 }
662
663 pub fn r#query_spectrum_management_support(
664 &self,
665 ___deadline: zx::MonotonicInstant,
666 ) -> Result<fidl_fuchsia_wlan_common::SpectrumManagementSupport, fidl::Error> {
667 let _response = self
668 .client
669 .send_query::<fidl::encoding::EmptyPayload, MlmeQuerySpectrumManagementSupportResponse>(
670 (),
671 0x28ed024e9d883010,
672 fidl::encoding::DynamicFlags::empty(),
673 ___deadline,
674 )?;
675 Ok(_response.resp)
676 }
677
678 pub fn r#query_telemetry_support(
679 &self,
680 ___deadline: zx::MonotonicInstant,
681 ) -> Result<MlmeQueryTelemetrySupportResult, fidl::Error> {
682 let _response = self.client.send_query::<
683 fidl::encoding::EmptyPayload,
684 fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>,
685 >(
686 (),
687 0x1598879b70332c99,
688 fidl::encoding::DynamicFlags::empty(),
689 ___deadline,
690 )?;
691 Ok(_response.map(|x| x.resp))
692 }
693
694 pub fn r#get_iface_stats(
695 &self,
696 ___deadline: zx::MonotonicInstant,
697 ) -> Result<GetIfaceStatsResponse, fidl::Error> {
698 let _response =
699 self.client.send_query::<fidl::encoding::EmptyPayload, MlmeGetIfaceStatsResponse>(
700 (),
701 0xede1a8342d1b211,
702 fidl::encoding::DynamicFlags::empty(),
703 ___deadline,
704 )?;
705 Ok(_response.resp)
706 }
707
708 pub fn r#get_iface_histogram_stats(
709 &self,
710 ___deadline: zx::MonotonicInstant,
711 ) -> Result<GetIfaceHistogramStatsResponse, fidl::Error> {
712 let _response = self
713 .client
714 .send_query::<fidl::encoding::EmptyPayload, MlmeGetIfaceHistogramStatsResponse>(
715 (),
716 0x1979c9d3449f8675,
717 fidl::encoding::DynamicFlags::empty(),
718 ___deadline,
719 )?;
720 Ok(_response.resp)
721 }
722
723 pub fn r#list_minstrel_peers(
724 &self,
725 ___deadline: zx::MonotonicInstant,
726 ) -> Result<MinstrelListResponse, fidl::Error> {
727 let _response =
728 self.client.send_query::<fidl::encoding::EmptyPayload, MlmeListMinstrelPeersResponse>(
729 (),
730 0x4ac5d1e66fe1ffd5,
731 fidl::encoding::DynamicFlags::empty(),
732 ___deadline,
733 )?;
734 Ok(_response.resp)
735 }
736
737 pub fn r#get_minstrel_stats(
738 &self,
739 mut req: &MinstrelStatsRequest,
740 ___deadline: zx::MonotonicInstant,
741 ) -> Result<MinstrelStatsResponse, fidl::Error> {
742 let _response =
743 self.client.send_query::<MlmeGetMinstrelStatsRequest, MlmeGetMinstrelStatsResponse>(
744 (req,),
745 0x2f688b1245323f4b,
746 fidl::encoding::DynamicFlags::empty(),
747 ___deadline,
748 )?;
749 Ok(_response.resp)
750 }
751
752 pub fn r#start_capture_frames(
753 &self,
754 mut req: &StartCaptureFramesRequest,
755 ___deadline: zx::MonotonicInstant,
756 ) -> Result<StartCaptureFramesResponse, fidl::Error> {
757 let _response = self
758 .client
759 .send_query::<MlmeStartCaptureFramesRequest, MlmeStartCaptureFramesResponse>(
760 (req,),
761 0x23b369ed5749ee69,
762 fidl::encoding::DynamicFlags::empty(),
763 ___deadline,
764 )?;
765 Ok(_response.resp)
766 }
767
768 pub fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
769 self.client.send::<fidl::encoding::EmptyPayload>(
770 (),
771 0x2f1aebbc68bf7c54,
772 fidl::encoding::DynamicFlags::empty(),
773 )
774 }
775
776 pub fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
778 self.client.send::<MlmeSaeHandshakeRespRequest>(
779 (resp,),
780 0x28477bd2f7a5ab0c,
781 fidl::encoding::DynamicFlags::empty(),
782 )
783 }
784
785 pub fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
787 self.client.send::<MlmeSaeFrameTxRequest>(
788 (frame,),
789 0x7700c0d536733d8c,
790 fidl::encoding::DynamicFlags::empty(),
791 )
792 }
793
794 pub fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
795 self.client.send::<fidl::encoding::EmptyPayload>(
796 (),
797 0xef4851f6088fede,
798 fidl::encoding::DynamicFlags::empty(),
799 )
800 }
801
802 pub fn r#finalize_association_req(
803 &self,
804 mut negotiated_capabilities: &NegotiatedCapabilities,
805 ) -> Result<(), fidl::Error> {
806 self.client.send::<MlmeFinalizeAssociationReqRequest>(
807 (negotiated_capabilities,),
808 0x7aea59787cfd385a,
809 fidl::encoding::DynamicFlags::empty(),
810 )
811 }
812}
813
814#[derive(Debug, Clone)]
815pub struct MlmeProxy {
816 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
817}
818
819impl fidl::endpoints::Proxy for MlmeProxy {
820 type Protocol = MlmeMarker;
821
822 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
823 Self::new(inner)
824 }
825
826 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
827 self.client.into_channel().map_err(|client| Self { client })
828 }
829
830 fn as_channel(&self) -> &::fidl::AsyncChannel {
831 self.client.as_channel()
832 }
833}
834
835impl MlmeProxy {
836 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
838 let protocol_name = <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
839 Self { client: fidl::client::Client::new(channel, protocol_name) }
840 }
841
842 pub fn take_event_stream(&self) -> MlmeEventStream {
848 MlmeEventStream { event_receiver: self.client.take_event_receiver() }
849 }
850
851 pub fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
852 MlmeProxyInterface::r#start_scan(self, req)
853 }
854
855 pub fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
856 MlmeProxyInterface::r#connect_req(self, req)
857 }
858
859 pub fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
860 MlmeProxyInterface::r#reconnect_req(self, req)
861 }
862
863 pub fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
865 MlmeProxyInterface::r#roam_req(self, req)
866 }
867
868 pub fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
869 MlmeProxyInterface::r#authenticate_resp(self, resp)
870 }
871
872 pub fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
873 MlmeProxyInterface::r#deauthenticate_req(self, req)
874 }
875
876 pub fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
877 MlmeProxyInterface::r#associate_resp(self, resp)
878 }
879
880 pub fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
881 MlmeProxyInterface::r#disassociate_req(self, req)
882 }
883
884 pub fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
885 MlmeProxyInterface::r#reset_req(self, req)
886 }
887
888 pub fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
889 MlmeProxyInterface::r#start_req(self, req)
890 }
891
892 pub fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
893 MlmeProxyInterface::r#stop_req(self, req)
894 }
895
896 pub fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
897 MlmeProxyInterface::r#set_keys_req(self, req)
898 }
899
900 pub fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
901 MlmeProxyInterface::r#delete_keys_req(self, req)
902 }
903
904 pub fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
905 MlmeProxyInterface::r#eapol_req(self, req)
906 }
907
908 pub fn r#set_controlled_port(
909 &self,
910 mut req: &SetControlledPortRequest,
911 ) -> Result<(), fidl::Error> {
912 MlmeProxyInterface::r#set_controlled_port(self, req)
913 }
914
915 pub fn r#query_device_info(
916 &self,
917 ) -> fidl::client::QueryResponseFut<DeviceInfo, fidl::encoding::DefaultFuchsiaResourceDialect>
918 {
919 MlmeProxyInterface::r#query_device_info(self)
920 }
921
922 pub fn r#query_discovery_support(
923 &self,
924 ) -> fidl::client::QueryResponseFut<
925 fidl_fuchsia_wlan_common::DiscoverySupport,
926 fidl::encoding::DefaultFuchsiaResourceDialect,
927 > {
928 MlmeProxyInterface::r#query_discovery_support(self)
929 }
930
931 pub fn r#query_mac_sublayer_support(
932 &self,
933 ) -> fidl::client::QueryResponseFut<
934 fidl_fuchsia_wlan_common::MacSublayerSupport,
935 fidl::encoding::DefaultFuchsiaResourceDialect,
936 > {
937 MlmeProxyInterface::r#query_mac_sublayer_support(self)
938 }
939
940 pub fn r#query_security_support(
941 &self,
942 ) -> fidl::client::QueryResponseFut<
943 fidl_fuchsia_wlan_common::SecuritySupport,
944 fidl::encoding::DefaultFuchsiaResourceDialect,
945 > {
946 MlmeProxyInterface::r#query_security_support(self)
947 }
948
949 pub fn r#query_spectrum_management_support(
950 &self,
951 ) -> fidl::client::QueryResponseFut<
952 fidl_fuchsia_wlan_common::SpectrumManagementSupport,
953 fidl::encoding::DefaultFuchsiaResourceDialect,
954 > {
955 MlmeProxyInterface::r#query_spectrum_management_support(self)
956 }
957
958 pub fn r#query_telemetry_support(
959 &self,
960 ) -> fidl::client::QueryResponseFut<
961 MlmeQueryTelemetrySupportResult,
962 fidl::encoding::DefaultFuchsiaResourceDialect,
963 > {
964 MlmeProxyInterface::r#query_telemetry_support(self)
965 }
966
967 pub fn r#get_iface_stats(
968 &self,
969 ) -> fidl::client::QueryResponseFut<
970 GetIfaceStatsResponse,
971 fidl::encoding::DefaultFuchsiaResourceDialect,
972 > {
973 MlmeProxyInterface::r#get_iface_stats(self)
974 }
975
976 pub fn r#get_iface_histogram_stats(
977 &self,
978 ) -> fidl::client::QueryResponseFut<
979 GetIfaceHistogramStatsResponse,
980 fidl::encoding::DefaultFuchsiaResourceDialect,
981 > {
982 MlmeProxyInterface::r#get_iface_histogram_stats(self)
983 }
984
985 pub fn r#list_minstrel_peers(
986 &self,
987 ) -> fidl::client::QueryResponseFut<
988 MinstrelListResponse,
989 fidl::encoding::DefaultFuchsiaResourceDialect,
990 > {
991 MlmeProxyInterface::r#list_minstrel_peers(self)
992 }
993
994 pub fn r#get_minstrel_stats(
995 &self,
996 mut req: &MinstrelStatsRequest,
997 ) -> fidl::client::QueryResponseFut<
998 MinstrelStatsResponse,
999 fidl::encoding::DefaultFuchsiaResourceDialect,
1000 > {
1001 MlmeProxyInterface::r#get_minstrel_stats(self, req)
1002 }
1003
1004 pub fn r#start_capture_frames(
1005 &self,
1006 mut req: &StartCaptureFramesRequest,
1007 ) -> fidl::client::QueryResponseFut<
1008 StartCaptureFramesResponse,
1009 fidl::encoding::DefaultFuchsiaResourceDialect,
1010 > {
1011 MlmeProxyInterface::r#start_capture_frames(self, req)
1012 }
1013
1014 pub fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
1015 MlmeProxyInterface::r#stop_capture_frames(self)
1016 }
1017
1018 pub fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
1020 MlmeProxyInterface::r#sae_handshake_resp(self, resp)
1021 }
1022
1023 pub fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
1025 MlmeProxyInterface::r#sae_frame_tx(self, frame)
1026 }
1027
1028 pub fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
1029 MlmeProxyInterface::r#wmm_status_req(self)
1030 }
1031
1032 pub fn r#finalize_association_req(
1033 &self,
1034 mut negotiated_capabilities: &NegotiatedCapabilities,
1035 ) -> Result<(), fidl::Error> {
1036 MlmeProxyInterface::r#finalize_association_req(self, negotiated_capabilities)
1037 }
1038}
1039
1040impl MlmeProxyInterface for MlmeProxy {
1041 fn r#start_scan(&self, mut req: &ScanRequest) -> Result<(), fidl::Error> {
1042 self.client.send::<MlmeStartScanRequest>(
1043 (req,),
1044 0x342cc5ec6a957479,
1045 fidl::encoding::DynamicFlags::empty(),
1046 )
1047 }
1048
1049 fn r#connect_req(&self, mut req: &ConnectRequest) -> Result<(), fidl::Error> {
1050 self.client.send::<MlmeConnectReqRequest>(
1051 (req,),
1052 0x31153dc85f8f64c,
1053 fidl::encoding::DynamicFlags::empty(),
1054 )
1055 }
1056
1057 fn r#reconnect_req(&self, mut req: &ReconnectRequest) -> Result<(), fidl::Error> {
1058 self.client.send::<MlmeReconnectReqRequest>(
1059 (req,),
1060 0x74e0f1bd758b6b78,
1061 fidl::encoding::DynamicFlags::empty(),
1062 )
1063 }
1064
1065 fn r#roam_req(&self, mut req: &RoamRequest) -> Result<(), fidl::Error> {
1066 self.client.send::<MlmeRoamReqRequest>(
1067 (req,),
1068 0x3ba163eadf7dba45,
1069 fidl::encoding::DynamicFlags::empty(),
1070 )
1071 }
1072
1073 fn r#authenticate_resp(&self, mut resp: &AuthenticateResponse) -> Result<(), fidl::Error> {
1074 self.client.send::<MlmeAuthenticateRespRequest>(
1075 (resp,),
1076 0x26108aade2fdd2f4,
1077 fidl::encoding::DynamicFlags::empty(),
1078 )
1079 }
1080
1081 fn r#deauthenticate_req(&self, mut req: &DeauthenticateRequest) -> Result<(), fidl::Error> {
1082 self.client.send::<MlmeDeauthenticateReqRequest>(
1083 (req,),
1084 0x228983b200de5d12,
1085 fidl::encoding::DynamicFlags::empty(),
1086 )
1087 }
1088
1089 fn r#associate_resp(&self, mut resp: &AssociateResponse) -> Result<(), fidl::Error> {
1090 self.client.send::<MlmeAssociateRespRequest>(
1091 (resp,),
1092 0x70244dbd652ed6d9,
1093 fidl::encoding::DynamicFlags::empty(),
1094 )
1095 }
1096
1097 fn r#disassociate_req(&self, mut req: &DisassociateRequest) -> Result<(), fidl::Error> {
1098 self.client.send::<MlmeDisassociateReqRequest>(
1099 (req,),
1100 0x5765807f1387d764,
1101 fidl::encoding::DynamicFlags::empty(),
1102 )
1103 }
1104
1105 fn r#reset_req(&self, mut req: &ResetRequest) -> Result<(), fidl::Error> {
1106 self.client.send::<MlmeResetReqRequest>(
1107 (req,),
1108 0x780b98c58a286b9f,
1109 fidl::encoding::DynamicFlags::empty(),
1110 )
1111 }
1112
1113 fn r#start_req(&self, mut req: &StartRequest) -> Result<(), fidl::Error> {
1114 self.client.send::<MlmeStartReqRequest>(
1115 (req,),
1116 0x5d95885f8053654,
1117 fidl::encoding::DynamicFlags::empty(),
1118 )
1119 }
1120
1121 fn r#stop_req(&self, mut req: &StopRequest) -> Result<(), fidl::Error> {
1122 self.client.send::<MlmeStopReqRequest>(
1123 (req,),
1124 0x27b9a2ab04a2c79f,
1125 fidl::encoding::DynamicFlags::empty(),
1126 )
1127 }
1128
1129 fn r#set_keys_req(&self, mut req: &SetKeysRequest) -> Result<(), fidl::Error> {
1130 self.client.send::<MlmeSetKeysReqRequest>(
1131 (req,),
1132 0x6b30a07fd3a11a79,
1133 fidl::encoding::DynamicFlags::empty(),
1134 )
1135 }
1136
1137 fn r#delete_keys_req(&self, mut req: &DeleteKeysRequest) -> Result<(), fidl::Error> {
1138 self.client.send::<MlmeDeleteKeysReqRequest>(
1139 (req,),
1140 0x1e3524d20d190c8f,
1141 fidl::encoding::DynamicFlags::empty(),
1142 )
1143 }
1144
1145 fn r#eapol_req(&self, mut req: &EapolRequest) -> Result<(), fidl::Error> {
1146 self.client.send::<MlmeEapolReqRequest>(
1147 (req,),
1148 0xc3c096924704d4,
1149 fidl::encoding::DynamicFlags::empty(),
1150 )
1151 }
1152
1153 fn r#set_controlled_port(&self, mut req: &SetControlledPortRequest) -> Result<(), fidl::Error> {
1154 self.client.send::<MlmeSetControlledPortRequest>(
1155 (req,),
1156 0x4e47065668890c8d,
1157 fidl::encoding::DynamicFlags::empty(),
1158 )
1159 }
1160
1161 type QueryDeviceInfoResponseFut =
1162 fidl::client::QueryResponseFut<DeviceInfo, fidl::encoding::DefaultFuchsiaResourceDialect>;
1163 fn r#query_device_info(&self) -> Self::QueryDeviceInfoResponseFut {
1164 fn _decode(
1165 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1166 ) -> Result<DeviceInfo, fidl::Error> {
1167 let _response = fidl::client::decode_transaction_body::<
1168 MlmeQueryDeviceInfoResponse,
1169 fidl::encoding::DefaultFuchsiaResourceDialect,
1170 0x6ee3e7f63f2b7bc0,
1171 >(_buf?)?;
1172 Ok(_response.info)
1173 }
1174 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, DeviceInfo>(
1175 (),
1176 0x6ee3e7f63f2b7bc0,
1177 fidl::encoding::DynamicFlags::empty(),
1178 _decode,
1179 )
1180 }
1181
1182 type QueryDiscoverySupportResponseFut = fidl::client::QueryResponseFut<
1183 fidl_fuchsia_wlan_common::DiscoverySupport,
1184 fidl::encoding::DefaultFuchsiaResourceDialect,
1185 >;
1186 fn r#query_discovery_support(&self) -> Self::QueryDiscoverySupportResponseFut {
1187 fn _decode(
1188 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1189 ) -> Result<fidl_fuchsia_wlan_common::DiscoverySupport, fidl::Error> {
1190 let _response = fidl::client::decode_transaction_body::<
1191 MlmeQueryDiscoverySupportResponse,
1192 fidl::encoding::DefaultFuchsiaResourceDialect,
1193 0x4ac57b8eee721a2,
1194 >(_buf?)?;
1195 Ok(_response.resp)
1196 }
1197 self.client.send_query_and_decode::<
1198 fidl::encoding::EmptyPayload,
1199 fidl_fuchsia_wlan_common::DiscoverySupport,
1200 >(
1201 (),
1202 0x4ac57b8eee721a2,
1203 fidl::encoding::DynamicFlags::empty(),
1204 _decode,
1205 )
1206 }
1207
1208 type QueryMacSublayerSupportResponseFut = fidl::client::QueryResponseFut<
1209 fidl_fuchsia_wlan_common::MacSublayerSupport,
1210 fidl::encoding::DefaultFuchsiaResourceDialect,
1211 >;
1212 fn r#query_mac_sublayer_support(&self) -> Self::QueryMacSublayerSupportResponseFut {
1213 fn _decode(
1214 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1215 ) -> Result<fidl_fuchsia_wlan_common::MacSublayerSupport, fidl::Error> {
1216 let _response = fidl::client::decode_transaction_body::<
1217 MlmeQueryMacSublayerSupportResponse,
1218 fidl::encoding::DefaultFuchsiaResourceDialect,
1219 0x70d23f3b08382854,
1220 >(_buf?)?;
1221 Ok(_response.resp)
1222 }
1223 self.client.send_query_and_decode::<
1224 fidl::encoding::EmptyPayload,
1225 fidl_fuchsia_wlan_common::MacSublayerSupport,
1226 >(
1227 (),
1228 0x70d23f3b08382854,
1229 fidl::encoding::DynamicFlags::empty(),
1230 _decode,
1231 )
1232 }
1233
1234 type QuerySecuritySupportResponseFut = fidl::client::QueryResponseFut<
1235 fidl_fuchsia_wlan_common::SecuritySupport,
1236 fidl::encoding::DefaultFuchsiaResourceDialect,
1237 >;
1238 fn r#query_security_support(&self) -> Self::QuerySecuritySupportResponseFut {
1239 fn _decode(
1240 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1241 ) -> Result<fidl_fuchsia_wlan_common::SecuritySupport, fidl::Error> {
1242 let _response = fidl::client::decode_transaction_body::<
1243 MlmeQuerySecuritySupportResponse,
1244 fidl::encoding::DefaultFuchsiaResourceDialect,
1245 0x2512eb3424620151,
1246 >(_buf?)?;
1247 Ok(_response.resp)
1248 }
1249 self.client.send_query_and_decode::<
1250 fidl::encoding::EmptyPayload,
1251 fidl_fuchsia_wlan_common::SecuritySupport,
1252 >(
1253 (),
1254 0x2512eb3424620151,
1255 fidl::encoding::DynamicFlags::empty(),
1256 _decode,
1257 )
1258 }
1259
1260 type QuerySpectrumManagementSupportResponseFut = fidl::client::QueryResponseFut<
1261 fidl_fuchsia_wlan_common::SpectrumManagementSupport,
1262 fidl::encoding::DefaultFuchsiaResourceDialect,
1263 >;
1264 fn r#query_spectrum_management_support(
1265 &self,
1266 ) -> Self::QuerySpectrumManagementSupportResponseFut {
1267 fn _decode(
1268 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1269 ) -> Result<fidl_fuchsia_wlan_common::SpectrumManagementSupport, fidl::Error> {
1270 let _response = fidl::client::decode_transaction_body::<
1271 MlmeQuerySpectrumManagementSupportResponse,
1272 fidl::encoding::DefaultFuchsiaResourceDialect,
1273 0x28ed024e9d883010,
1274 >(_buf?)?;
1275 Ok(_response.resp)
1276 }
1277 self.client.send_query_and_decode::<
1278 fidl::encoding::EmptyPayload,
1279 fidl_fuchsia_wlan_common::SpectrumManagementSupport,
1280 >(
1281 (),
1282 0x28ed024e9d883010,
1283 fidl::encoding::DynamicFlags::empty(),
1284 _decode,
1285 )
1286 }
1287
1288 type QueryTelemetrySupportResponseFut = fidl::client::QueryResponseFut<
1289 MlmeQueryTelemetrySupportResult,
1290 fidl::encoding::DefaultFuchsiaResourceDialect,
1291 >;
1292 fn r#query_telemetry_support(&self) -> Self::QueryTelemetrySupportResponseFut {
1293 fn _decode(
1294 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1295 ) -> Result<MlmeQueryTelemetrySupportResult, fidl::Error> {
1296 let _response = fidl::client::decode_transaction_body::<
1297 fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>,
1298 fidl::encoding::DefaultFuchsiaResourceDialect,
1299 0x1598879b70332c99,
1300 >(_buf?)?;
1301 Ok(_response.map(|x| x.resp))
1302 }
1303 self.client
1304 .send_query_and_decode::<fidl::encoding::EmptyPayload, MlmeQueryTelemetrySupportResult>(
1305 (),
1306 0x1598879b70332c99,
1307 fidl::encoding::DynamicFlags::empty(),
1308 _decode,
1309 )
1310 }
1311
1312 type GetIfaceStatsResponseFut = fidl::client::QueryResponseFut<
1313 GetIfaceStatsResponse,
1314 fidl::encoding::DefaultFuchsiaResourceDialect,
1315 >;
1316 fn r#get_iface_stats(&self) -> Self::GetIfaceStatsResponseFut {
1317 fn _decode(
1318 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1319 ) -> Result<GetIfaceStatsResponse, fidl::Error> {
1320 let _response = fidl::client::decode_transaction_body::<
1321 MlmeGetIfaceStatsResponse,
1322 fidl::encoding::DefaultFuchsiaResourceDialect,
1323 0xede1a8342d1b211,
1324 >(_buf?)?;
1325 Ok(_response.resp)
1326 }
1327 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, GetIfaceStatsResponse>(
1328 (),
1329 0xede1a8342d1b211,
1330 fidl::encoding::DynamicFlags::empty(),
1331 _decode,
1332 )
1333 }
1334
1335 type GetIfaceHistogramStatsResponseFut = fidl::client::QueryResponseFut<
1336 GetIfaceHistogramStatsResponse,
1337 fidl::encoding::DefaultFuchsiaResourceDialect,
1338 >;
1339 fn r#get_iface_histogram_stats(&self) -> Self::GetIfaceHistogramStatsResponseFut {
1340 fn _decode(
1341 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1342 ) -> Result<GetIfaceHistogramStatsResponse, fidl::Error> {
1343 let _response = fidl::client::decode_transaction_body::<
1344 MlmeGetIfaceHistogramStatsResponse,
1345 fidl::encoding::DefaultFuchsiaResourceDialect,
1346 0x1979c9d3449f8675,
1347 >(_buf?)?;
1348 Ok(_response.resp)
1349 }
1350 self.client
1351 .send_query_and_decode::<fidl::encoding::EmptyPayload, GetIfaceHistogramStatsResponse>(
1352 (),
1353 0x1979c9d3449f8675,
1354 fidl::encoding::DynamicFlags::empty(),
1355 _decode,
1356 )
1357 }
1358
1359 type ListMinstrelPeersResponseFut = fidl::client::QueryResponseFut<
1360 MinstrelListResponse,
1361 fidl::encoding::DefaultFuchsiaResourceDialect,
1362 >;
1363 fn r#list_minstrel_peers(&self) -> Self::ListMinstrelPeersResponseFut {
1364 fn _decode(
1365 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1366 ) -> Result<MinstrelListResponse, fidl::Error> {
1367 let _response = fidl::client::decode_transaction_body::<
1368 MlmeListMinstrelPeersResponse,
1369 fidl::encoding::DefaultFuchsiaResourceDialect,
1370 0x4ac5d1e66fe1ffd5,
1371 >(_buf?)?;
1372 Ok(_response.resp)
1373 }
1374 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, MinstrelListResponse>(
1375 (),
1376 0x4ac5d1e66fe1ffd5,
1377 fidl::encoding::DynamicFlags::empty(),
1378 _decode,
1379 )
1380 }
1381
1382 type GetMinstrelStatsResponseFut = fidl::client::QueryResponseFut<
1383 MinstrelStatsResponse,
1384 fidl::encoding::DefaultFuchsiaResourceDialect,
1385 >;
1386 fn r#get_minstrel_stats(
1387 &self,
1388 mut req: &MinstrelStatsRequest,
1389 ) -> Self::GetMinstrelStatsResponseFut {
1390 fn _decode(
1391 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1392 ) -> Result<MinstrelStatsResponse, fidl::Error> {
1393 let _response = fidl::client::decode_transaction_body::<
1394 MlmeGetMinstrelStatsResponse,
1395 fidl::encoding::DefaultFuchsiaResourceDialect,
1396 0x2f688b1245323f4b,
1397 >(_buf?)?;
1398 Ok(_response.resp)
1399 }
1400 self.client.send_query_and_decode::<MlmeGetMinstrelStatsRequest, MinstrelStatsResponse>(
1401 (req,),
1402 0x2f688b1245323f4b,
1403 fidl::encoding::DynamicFlags::empty(),
1404 _decode,
1405 )
1406 }
1407
1408 type StartCaptureFramesResponseFut = fidl::client::QueryResponseFut<
1409 StartCaptureFramesResponse,
1410 fidl::encoding::DefaultFuchsiaResourceDialect,
1411 >;
1412 fn r#start_capture_frames(
1413 &self,
1414 mut req: &StartCaptureFramesRequest,
1415 ) -> Self::StartCaptureFramesResponseFut {
1416 fn _decode(
1417 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
1418 ) -> Result<StartCaptureFramesResponse, fidl::Error> {
1419 let _response = fidl::client::decode_transaction_body::<
1420 MlmeStartCaptureFramesResponse,
1421 fidl::encoding::DefaultFuchsiaResourceDialect,
1422 0x23b369ed5749ee69,
1423 >(_buf?)?;
1424 Ok(_response.resp)
1425 }
1426 self.client
1427 .send_query_and_decode::<MlmeStartCaptureFramesRequest, StartCaptureFramesResponse>(
1428 (req,),
1429 0x23b369ed5749ee69,
1430 fidl::encoding::DynamicFlags::empty(),
1431 _decode,
1432 )
1433 }
1434
1435 fn r#stop_capture_frames(&self) -> Result<(), fidl::Error> {
1436 self.client.send::<fidl::encoding::EmptyPayload>(
1437 (),
1438 0x2f1aebbc68bf7c54,
1439 fidl::encoding::DynamicFlags::empty(),
1440 )
1441 }
1442
1443 fn r#sae_handshake_resp(&self, mut resp: &SaeHandshakeResponse) -> Result<(), fidl::Error> {
1444 self.client.send::<MlmeSaeHandshakeRespRequest>(
1445 (resp,),
1446 0x28477bd2f7a5ab0c,
1447 fidl::encoding::DynamicFlags::empty(),
1448 )
1449 }
1450
1451 fn r#sae_frame_tx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
1452 self.client.send::<MlmeSaeFrameTxRequest>(
1453 (frame,),
1454 0x7700c0d536733d8c,
1455 fidl::encoding::DynamicFlags::empty(),
1456 )
1457 }
1458
1459 fn r#wmm_status_req(&self) -> Result<(), fidl::Error> {
1460 self.client.send::<fidl::encoding::EmptyPayload>(
1461 (),
1462 0xef4851f6088fede,
1463 fidl::encoding::DynamicFlags::empty(),
1464 )
1465 }
1466
1467 fn r#finalize_association_req(
1468 &self,
1469 mut negotiated_capabilities: &NegotiatedCapabilities,
1470 ) -> Result<(), fidl::Error> {
1471 self.client.send::<MlmeFinalizeAssociationReqRequest>(
1472 (negotiated_capabilities,),
1473 0x7aea59787cfd385a,
1474 fidl::encoding::DynamicFlags::empty(),
1475 )
1476 }
1477}
1478
1479pub struct MlmeEventStream {
1480 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
1481}
1482
1483impl std::marker::Unpin for MlmeEventStream {}
1484
1485impl futures::stream::FusedStream for MlmeEventStream {
1486 fn is_terminated(&self) -> bool {
1487 self.event_receiver.is_terminated()
1488 }
1489}
1490
1491impl futures::Stream for MlmeEventStream {
1492 type Item = Result<MlmeEvent, fidl::Error>;
1493
1494 fn poll_next(
1495 mut self: std::pin::Pin<&mut Self>,
1496 cx: &mut std::task::Context<'_>,
1497 ) -> std::task::Poll<Option<Self::Item>> {
1498 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
1499 &mut self.event_receiver,
1500 cx
1501 )?) {
1502 Some(buf) => std::task::Poll::Ready(Some(MlmeEvent::decode(buf))),
1503 None => std::task::Poll::Ready(None),
1504 }
1505 }
1506}
1507
1508#[derive(Debug)]
1509pub enum MlmeEvent {
1510 OnScanResult { result: ScanResult },
1511 OnScanEnd { end: ScanEnd },
1512 ConnectConf { resp: ConnectConfirm },
1513 RoamConf { conf: RoamConfirm },
1514 RoamStartInd { ind: RoamStartIndication },
1515 RoamResultInd { ind: RoamResultIndication },
1516 AuthenticateInd { ind: AuthenticateIndication },
1517 DeauthenticateConf { resp: DeauthenticateConfirm },
1518 DeauthenticateInd { ind: DeauthenticateIndication },
1519 AssociateInd { ind: AssociateIndication },
1520 DisassociateConf { resp: DisassociateConfirm },
1521 DisassociateInd { ind: DisassociateIndication },
1522 StartConf { resp: StartConfirm },
1523 StopConf { resp: StopConfirm },
1524 SetKeysConf { conf: SetKeysConfirm },
1525 EapolConf { resp: EapolConfirm },
1526 SignalReport { ind: fidl_fuchsia_wlan_internal::SignalReportIndication },
1527 EapolInd { ind: EapolIndication },
1528 RelayCapturedFrame { result: CapturedFrameResult },
1529 OnChannelSwitched { info: fidl_fuchsia_wlan_internal::ChannelSwitchInfo },
1530 OnPmkAvailable { info: PmkInfo },
1531 OnSaeHandshakeInd { ind: SaeHandshakeIndication },
1532 OnSaeFrameRx { frame: SaeFrame },
1533 OnWmmStatusResp { status: i32, resp: fidl_fuchsia_wlan_internal::WmmStatusResponse },
1534}
1535
1536impl MlmeEvent {
1537 #[allow(irrefutable_let_patterns)]
1538 pub fn into_on_scan_result(self) -> Option<ScanResult> {
1539 if let MlmeEvent::OnScanResult { result } = self {
1540 Some((result))
1541 } else {
1542 None
1543 }
1544 }
1545 #[allow(irrefutable_let_patterns)]
1546 pub fn into_on_scan_end(self) -> Option<ScanEnd> {
1547 if let MlmeEvent::OnScanEnd { end } = self {
1548 Some((end))
1549 } else {
1550 None
1551 }
1552 }
1553 #[allow(irrefutable_let_patterns)]
1554 pub fn into_connect_conf(self) -> Option<ConnectConfirm> {
1555 if let MlmeEvent::ConnectConf { resp } = self {
1556 Some((resp))
1557 } else {
1558 None
1559 }
1560 }
1561 #[allow(irrefutable_let_patterns)]
1562 pub fn into_roam_conf(self) -> Option<RoamConfirm> {
1563 if let MlmeEvent::RoamConf { conf } = self {
1564 Some((conf))
1565 } else {
1566 None
1567 }
1568 }
1569 #[allow(irrefutable_let_patterns)]
1570 pub fn into_roam_start_ind(self) -> Option<RoamStartIndication> {
1571 if let MlmeEvent::RoamStartInd { ind } = self {
1572 Some((ind))
1573 } else {
1574 None
1575 }
1576 }
1577 #[allow(irrefutable_let_patterns)]
1578 pub fn into_roam_result_ind(self) -> Option<RoamResultIndication> {
1579 if let MlmeEvent::RoamResultInd { ind } = self {
1580 Some((ind))
1581 } else {
1582 None
1583 }
1584 }
1585 #[allow(irrefutable_let_patterns)]
1586 pub fn into_authenticate_ind(self) -> Option<AuthenticateIndication> {
1587 if let MlmeEvent::AuthenticateInd { ind } = self {
1588 Some((ind))
1589 } else {
1590 None
1591 }
1592 }
1593 #[allow(irrefutable_let_patterns)]
1594 pub fn into_deauthenticate_conf(self) -> Option<DeauthenticateConfirm> {
1595 if let MlmeEvent::DeauthenticateConf { resp } = self {
1596 Some((resp))
1597 } else {
1598 None
1599 }
1600 }
1601 #[allow(irrefutable_let_patterns)]
1602 pub fn into_deauthenticate_ind(self) -> Option<DeauthenticateIndication> {
1603 if let MlmeEvent::DeauthenticateInd { ind } = self {
1604 Some((ind))
1605 } else {
1606 None
1607 }
1608 }
1609 #[allow(irrefutable_let_patterns)]
1610 pub fn into_associate_ind(self) -> Option<AssociateIndication> {
1611 if let MlmeEvent::AssociateInd { ind } = self {
1612 Some((ind))
1613 } else {
1614 None
1615 }
1616 }
1617 #[allow(irrefutable_let_patterns)]
1618 pub fn into_disassociate_conf(self) -> Option<DisassociateConfirm> {
1619 if let MlmeEvent::DisassociateConf { resp } = self {
1620 Some((resp))
1621 } else {
1622 None
1623 }
1624 }
1625 #[allow(irrefutable_let_patterns)]
1626 pub fn into_disassociate_ind(self) -> Option<DisassociateIndication> {
1627 if let MlmeEvent::DisassociateInd { ind } = self {
1628 Some((ind))
1629 } else {
1630 None
1631 }
1632 }
1633 #[allow(irrefutable_let_patterns)]
1634 pub fn into_start_conf(self) -> Option<StartConfirm> {
1635 if let MlmeEvent::StartConf { resp } = self {
1636 Some((resp))
1637 } else {
1638 None
1639 }
1640 }
1641 #[allow(irrefutable_let_patterns)]
1642 pub fn into_stop_conf(self) -> Option<StopConfirm> {
1643 if let MlmeEvent::StopConf { resp } = self {
1644 Some((resp))
1645 } else {
1646 None
1647 }
1648 }
1649 #[allow(irrefutable_let_patterns)]
1650 pub fn into_set_keys_conf(self) -> Option<SetKeysConfirm> {
1651 if let MlmeEvent::SetKeysConf { conf } = self {
1652 Some((conf))
1653 } else {
1654 None
1655 }
1656 }
1657 #[allow(irrefutable_let_patterns)]
1658 pub fn into_eapol_conf(self) -> Option<EapolConfirm> {
1659 if let MlmeEvent::EapolConf { resp } = self {
1660 Some((resp))
1661 } else {
1662 None
1663 }
1664 }
1665 #[allow(irrefutable_let_patterns)]
1666 pub fn into_signal_report(self) -> Option<fidl_fuchsia_wlan_internal::SignalReportIndication> {
1667 if let MlmeEvent::SignalReport { ind } = self {
1668 Some((ind))
1669 } else {
1670 None
1671 }
1672 }
1673 #[allow(irrefutable_let_patterns)]
1674 pub fn into_eapol_ind(self) -> Option<EapolIndication> {
1675 if let MlmeEvent::EapolInd { ind } = self {
1676 Some((ind))
1677 } else {
1678 None
1679 }
1680 }
1681 #[allow(irrefutable_let_patterns)]
1682 pub fn into_relay_captured_frame(self) -> Option<CapturedFrameResult> {
1683 if let MlmeEvent::RelayCapturedFrame { result } = self {
1684 Some((result))
1685 } else {
1686 None
1687 }
1688 }
1689 #[allow(irrefutable_let_patterns)]
1690 pub fn into_on_channel_switched(self) -> Option<fidl_fuchsia_wlan_internal::ChannelSwitchInfo> {
1691 if let MlmeEvent::OnChannelSwitched { info } = self {
1692 Some((info))
1693 } else {
1694 None
1695 }
1696 }
1697 #[allow(irrefutable_let_patterns)]
1698 pub fn into_on_pmk_available(self) -> Option<PmkInfo> {
1699 if let MlmeEvent::OnPmkAvailable { info } = self {
1700 Some((info))
1701 } else {
1702 None
1703 }
1704 }
1705 #[allow(irrefutable_let_patterns)]
1706 pub fn into_on_sae_handshake_ind(self) -> Option<SaeHandshakeIndication> {
1707 if let MlmeEvent::OnSaeHandshakeInd { ind } = self {
1708 Some((ind))
1709 } else {
1710 None
1711 }
1712 }
1713 #[allow(irrefutable_let_patterns)]
1714 pub fn into_on_sae_frame_rx(self) -> Option<SaeFrame> {
1715 if let MlmeEvent::OnSaeFrameRx { frame } = self {
1716 Some((frame))
1717 } else {
1718 None
1719 }
1720 }
1721 #[allow(irrefutable_let_patterns)]
1722 pub fn into_on_wmm_status_resp(
1723 self,
1724 ) -> Option<(i32, fidl_fuchsia_wlan_internal::WmmStatusResponse)> {
1725 if let MlmeEvent::OnWmmStatusResp { status, resp } = self {
1726 Some((status, resp))
1727 } else {
1728 None
1729 }
1730 }
1731
1732 fn decode(
1734 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
1735 ) -> Result<MlmeEvent, fidl::Error> {
1736 let (bytes, _handles) = buf.split_mut();
1737 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
1738 debug_assert_eq!(tx_header.tx_id, 0);
1739 match tx_header.ordinal {
1740 0x681af7466a75074d => {
1741 let mut out = fidl::new_empty!(
1742 MlmeOnScanResultRequest,
1743 fidl::encoding::DefaultFuchsiaResourceDialect
1744 );
1745 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScanResultRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1746 Ok((MlmeEvent::OnScanResult { result: out.result }))
1747 }
1748 0x7f2702d253e7ca59 => {
1749 let mut out = fidl::new_empty!(
1750 MlmeOnScanEndRequest,
1751 fidl::encoding::DefaultFuchsiaResourceDialect
1752 );
1753 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnScanEndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1754 Ok((MlmeEvent::OnScanEnd { end: out.end }))
1755 }
1756 0x77b27623279b981e => {
1757 let mut out = fidl::new_empty!(
1758 MlmeConnectConfRequest,
1759 fidl::encoding::DefaultFuchsiaResourceDialect
1760 );
1761 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeConnectConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1762 Ok((MlmeEvent::ConnectConf { resp: out.resp }))
1763 }
1764 0x3f608034faa054bc => {
1765 let mut out = fidl::new_empty!(
1766 MlmeRoamConfRequest,
1767 fidl::encoding::DefaultFuchsiaResourceDialect
1768 );
1769 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1770 Ok((MlmeEvent::RoamConf { conf: out.conf }))
1771 }
1772 0x270a1ec78672d094 => {
1773 let mut out = fidl::new_empty!(
1774 MlmeRoamStartIndRequest,
1775 fidl::encoding::DefaultFuchsiaResourceDialect
1776 );
1777 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamStartIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1778 Ok((MlmeEvent::RoamStartInd { ind: out.ind }))
1779 }
1780 0x26d074364fc84865 => {
1781 let mut out = fidl::new_empty!(
1782 MlmeRoamResultIndRequest,
1783 fidl::encoding::DefaultFuchsiaResourceDialect
1784 );
1785 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamResultIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1786 Ok((MlmeEvent::RoamResultInd { ind: out.ind }))
1787 }
1788 0x460f49ae891adbe9 => {
1789 let mut out = fidl::new_empty!(
1790 MlmeAuthenticateIndRequest,
1791 fidl::encoding::DefaultFuchsiaResourceDialect
1792 );
1793 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAuthenticateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1794 Ok((MlmeEvent::AuthenticateInd { ind: out.ind }))
1795 }
1796 0x3b44debc21b88c8c => {
1797 let mut out = fidl::new_empty!(
1798 MlmeDeauthenticateConfRequest,
1799 fidl::encoding::DefaultFuchsiaResourceDialect
1800 );
1801 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1802 Ok((MlmeEvent::DeauthenticateConf { resp: out.resp }))
1803 }
1804 0x7ee0889b326da1d7 => {
1805 let mut out = fidl::new_empty!(
1806 MlmeDeauthenticateIndRequest,
1807 fidl::encoding::DefaultFuchsiaResourceDialect
1808 );
1809 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1810 Ok((MlmeEvent::DeauthenticateInd { ind: out.ind }))
1811 }
1812 0x6a86f20e3063dd63 => {
1813 let mut out = fidl::new_empty!(
1814 MlmeAssociateIndRequest,
1815 fidl::encoding::DefaultFuchsiaResourceDialect
1816 );
1817 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAssociateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1818 Ok((MlmeEvent::AssociateInd { ind: out.ind }))
1819 }
1820 0x61345fbce732a28d => {
1821 let mut out = fidl::new_empty!(
1822 MlmeDisassociateConfRequest,
1823 fidl::encoding::DefaultFuchsiaResourceDialect
1824 );
1825 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1826 Ok((MlmeEvent::DisassociateConf { resp: out.resp }))
1827 }
1828 0x77ac0ebf387c1f35 => {
1829 let mut out = fidl::new_empty!(
1830 MlmeDisassociateIndRequest,
1831 fidl::encoding::DefaultFuchsiaResourceDialect
1832 );
1833 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1834 Ok((MlmeEvent::DisassociateInd { ind: out.ind }))
1835 }
1836 0x15ea6cdf3b8382b3 => {
1837 let mut out = fidl::new_empty!(
1838 MlmeStartConfRequest,
1839 fidl::encoding::DefaultFuchsiaResourceDialect
1840 );
1841 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1842 Ok((MlmeEvent::StartConf { resp: out.resp }))
1843 }
1844 0x50b426ef4a84a2df => {
1845 let mut out = fidl::new_empty!(
1846 MlmeStopConfRequest,
1847 fidl::encoding::DefaultFuchsiaResourceDialect
1848 );
1849 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStopConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1850 Ok((MlmeEvent::StopConf { resp: out.resp }))
1851 }
1852 0x5bafb3a8d4039380 => {
1853 let mut out = fidl::new_empty!(
1854 MlmeSetKeysConfRequest,
1855 fidl::encoding::DefaultFuchsiaResourceDialect
1856 );
1857 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetKeysConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1858 Ok((MlmeEvent::SetKeysConf { conf: out.conf }))
1859 }
1860 0x6ffa21f4ee73ce64 => {
1861 let mut out = fidl::new_empty!(
1862 MlmeEapolConfRequest,
1863 fidl::encoding::DefaultFuchsiaResourceDialect
1864 );
1865 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolConfRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1866 Ok((MlmeEvent::EapolConf { resp: out.resp }))
1867 }
1868 0x48f32a876aa53d8f => {
1869 let mut out = fidl::new_empty!(
1870 MlmeSignalReportRequest,
1871 fidl::encoding::DefaultFuchsiaResourceDialect
1872 );
1873 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSignalReportRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1874 Ok((MlmeEvent::SignalReport { ind: out.ind }))
1875 }
1876 0x7038dca46a3142fc => {
1877 let mut out = fidl::new_empty!(
1878 MlmeEapolIndRequest,
1879 fidl::encoding::DefaultFuchsiaResourceDialect
1880 );
1881 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1882 Ok((MlmeEvent::EapolInd { ind: out.ind }))
1883 }
1884 0x6f00a6f3cff9b1f5 => {
1885 let mut out = fidl::new_empty!(
1886 MlmeRelayCapturedFrameRequest,
1887 fidl::encoding::DefaultFuchsiaResourceDialect
1888 );
1889 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRelayCapturedFrameRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1890 Ok((MlmeEvent::RelayCapturedFrame { result: out.result }))
1891 }
1892 0x581750594e4c0c1 => {
1893 let mut out = fidl::new_empty!(
1894 MlmeOnChannelSwitchedRequest,
1895 fidl::encoding::DefaultFuchsiaResourceDialect
1896 );
1897 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnChannelSwitchedRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1898 Ok((MlmeEvent::OnChannelSwitched { info: out.info }))
1899 }
1900 0x1314fc2c79643f90 => {
1901 let mut out = fidl::new_empty!(
1902 MlmeOnPmkAvailableRequest,
1903 fidl::encoding::DefaultFuchsiaResourceDialect
1904 );
1905 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnPmkAvailableRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1906 Ok((MlmeEvent::OnPmkAvailable { info: out.info }))
1907 }
1908 0x6308b10e18986d7e => {
1909 let mut out = fidl::new_empty!(
1910 MlmeOnSaeHandshakeIndRequest,
1911 fidl::encoding::DefaultFuchsiaResourceDialect
1912 );
1913 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnSaeHandshakeIndRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1914 Ok((MlmeEvent::OnSaeHandshakeInd { ind: out.ind }))
1915 }
1916 0x4ebf51c86ef5f3cd => {
1917 let mut out = fidl::new_empty!(
1918 MlmeOnSaeFrameRxRequest,
1919 fidl::encoding::DefaultFuchsiaResourceDialect
1920 );
1921 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnSaeFrameRxRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1922 Ok((MlmeEvent::OnSaeFrameRx { frame: out.frame }))
1923 }
1924 0x53f056b432e7b5cb => {
1925 let mut out = fidl::new_empty!(
1926 MlmeOnWmmStatusRespRequest,
1927 fidl::encoding::DefaultFuchsiaResourceDialect
1928 );
1929 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeOnWmmStatusRespRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
1930 Ok((MlmeEvent::OnWmmStatusResp { status: out.status, resp: out.resp }))
1931 }
1932 _ => Err(fidl::Error::UnknownOrdinal {
1933 ordinal: tx_header.ordinal,
1934 protocol_name: <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
1935 }),
1936 }
1937 }
1938}
1939
1940pub struct MlmeRequestStream {
1942 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1943 is_terminated: bool,
1944}
1945
1946impl std::marker::Unpin for MlmeRequestStream {}
1947
1948impl futures::stream::FusedStream for MlmeRequestStream {
1949 fn is_terminated(&self) -> bool {
1950 self.is_terminated
1951 }
1952}
1953
1954impl fidl::endpoints::RequestStream for MlmeRequestStream {
1955 type Protocol = MlmeMarker;
1956 type ControlHandle = MlmeControlHandle;
1957
1958 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
1959 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
1960 }
1961
1962 fn control_handle(&self) -> Self::ControlHandle {
1963 MlmeControlHandle { inner: self.inner.clone() }
1964 }
1965
1966 fn into_inner(
1967 self,
1968 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
1969 {
1970 (self.inner, self.is_terminated)
1971 }
1972
1973 fn from_inner(
1974 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1975 is_terminated: bool,
1976 ) -> Self {
1977 Self { inner, is_terminated }
1978 }
1979}
1980
1981impl futures::Stream for MlmeRequestStream {
1982 type Item = Result<MlmeRequest, fidl::Error>;
1983
1984 fn poll_next(
1985 mut self: std::pin::Pin<&mut Self>,
1986 cx: &mut std::task::Context<'_>,
1987 ) -> std::task::Poll<Option<Self::Item>> {
1988 let this = &mut *self;
1989 if this.inner.check_shutdown(cx) {
1990 this.is_terminated = true;
1991 return std::task::Poll::Ready(None);
1992 }
1993 if this.is_terminated {
1994 panic!("polled MlmeRequestStream after completion");
1995 }
1996 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
1997 |bytes, handles| {
1998 match this.inner.channel().read_etc(cx, bytes, handles) {
1999 std::task::Poll::Ready(Ok(())) => {}
2000 std::task::Poll::Pending => return std::task::Poll::Pending,
2001 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2002 this.is_terminated = true;
2003 return std::task::Poll::Ready(None);
2004 }
2005 std::task::Poll::Ready(Err(e)) => {
2006 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2007 e.into(),
2008 ))))
2009 }
2010 }
2011
2012 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2014
2015 std::task::Poll::Ready(Some(match header.ordinal {
2016 0x342cc5ec6a957479 => {
2017 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2018 let mut req = fidl::new_empty!(
2019 MlmeStartScanRequest,
2020 fidl::encoding::DefaultFuchsiaResourceDialect
2021 );
2022 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartScanRequest>(&header, _body_bytes, handles, &mut req)?;
2023 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2024 Ok(MlmeRequest::StartScan { req: req.req, control_handle })
2025 }
2026 0x31153dc85f8f64c => {
2027 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2028 let mut req = fidl::new_empty!(
2029 MlmeConnectReqRequest,
2030 fidl::encoding::DefaultFuchsiaResourceDialect
2031 );
2032 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeConnectReqRequest>(&header, _body_bytes, handles, &mut req)?;
2033 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2034 Ok(MlmeRequest::ConnectReq { req: req.req, control_handle })
2035 }
2036 0x74e0f1bd758b6b78 => {
2037 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2038 let mut req = fidl::new_empty!(
2039 MlmeReconnectReqRequest,
2040 fidl::encoding::DefaultFuchsiaResourceDialect
2041 );
2042 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeReconnectReqRequest>(&header, _body_bytes, handles, &mut req)?;
2043 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2044 Ok(MlmeRequest::ReconnectReq { req: req.req, control_handle })
2045 }
2046 0x3ba163eadf7dba45 => {
2047 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2048 let mut req = fidl::new_empty!(
2049 MlmeRoamReqRequest,
2050 fidl::encoding::DefaultFuchsiaResourceDialect
2051 );
2052 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeRoamReqRequest>(&header, _body_bytes, handles, &mut req)?;
2053 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2054 Ok(MlmeRequest::RoamReq { req: req.req, control_handle })
2055 }
2056 0x26108aade2fdd2f4 => {
2057 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2058 let mut req = fidl::new_empty!(
2059 MlmeAuthenticateRespRequest,
2060 fidl::encoding::DefaultFuchsiaResourceDialect
2061 );
2062 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAuthenticateRespRequest>(&header, _body_bytes, handles, &mut req)?;
2063 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2064 Ok(MlmeRequest::AuthenticateResp { resp: req.resp, control_handle })
2065 }
2066 0x228983b200de5d12 => {
2067 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2068 let mut req = fidl::new_empty!(
2069 MlmeDeauthenticateReqRequest,
2070 fidl::encoding::DefaultFuchsiaResourceDialect
2071 );
2072 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeauthenticateReqRequest>(&header, _body_bytes, handles, &mut req)?;
2073 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2074 Ok(MlmeRequest::DeauthenticateReq { req: req.req, control_handle })
2075 }
2076 0x70244dbd652ed6d9 => {
2077 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2078 let mut req = fidl::new_empty!(
2079 MlmeAssociateRespRequest,
2080 fidl::encoding::DefaultFuchsiaResourceDialect
2081 );
2082 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeAssociateRespRequest>(&header, _body_bytes, handles, &mut req)?;
2083 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2084 Ok(MlmeRequest::AssociateResp { resp: req.resp, control_handle })
2085 }
2086 0x5765807f1387d764 => {
2087 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2088 let mut req = fidl::new_empty!(
2089 MlmeDisassociateReqRequest,
2090 fidl::encoding::DefaultFuchsiaResourceDialect
2091 );
2092 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDisassociateReqRequest>(&header, _body_bytes, handles, &mut req)?;
2093 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2094 Ok(MlmeRequest::DisassociateReq { req: req.req, control_handle })
2095 }
2096 0x780b98c58a286b9f => {
2097 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2098 let mut req = fidl::new_empty!(
2099 MlmeResetReqRequest,
2100 fidl::encoding::DefaultFuchsiaResourceDialect
2101 );
2102 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeResetReqRequest>(&header, _body_bytes, handles, &mut req)?;
2103 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2104 Ok(MlmeRequest::ResetReq { req: req.req, control_handle })
2105 }
2106 0x5d95885f8053654 => {
2107 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2108 let mut req = fidl::new_empty!(
2109 MlmeStartReqRequest,
2110 fidl::encoding::DefaultFuchsiaResourceDialect
2111 );
2112 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartReqRequest>(&header, _body_bytes, handles, &mut req)?;
2113 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2114 Ok(MlmeRequest::StartReq { req: req.req, control_handle })
2115 }
2116 0x27b9a2ab04a2c79f => {
2117 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2118 let mut req = fidl::new_empty!(
2119 MlmeStopReqRequest,
2120 fidl::encoding::DefaultFuchsiaResourceDialect
2121 );
2122 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStopReqRequest>(&header, _body_bytes, handles, &mut req)?;
2123 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2124 Ok(MlmeRequest::StopReq { req: req.req, control_handle })
2125 }
2126 0x6b30a07fd3a11a79 => {
2127 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2128 let mut req = fidl::new_empty!(
2129 MlmeSetKeysReqRequest,
2130 fidl::encoding::DefaultFuchsiaResourceDialect
2131 );
2132 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetKeysReqRequest>(&header, _body_bytes, handles, &mut req)?;
2133 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2134 Ok(MlmeRequest::SetKeysReq { req: req.req, control_handle })
2135 }
2136 0x1e3524d20d190c8f => {
2137 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2138 let mut req = fidl::new_empty!(
2139 MlmeDeleteKeysReqRequest,
2140 fidl::encoding::DefaultFuchsiaResourceDialect
2141 );
2142 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeDeleteKeysReqRequest>(&header, _body_bytes, handles, &mut req)?;
2143 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2144 Ok(MlmeRequest::DeleteKeysReq { req: req.req, control_handle })
2145 }
2146 0xc3c096924704d4 => {
2147 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2148 let mut req = fidl::new_empty!(
2149 MlmeEapolReqRequest,
2150 fidl::encoding::DefaultFuchsiaResourceDialect
2151 );
2152 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeEapolReqRequest>(&header, _body_bytes, handles, &mut req)?;
2153 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2154 Ok(MlmeRequest::EapolReq { req: req.req, control_handle })
2155 }
2156 0x4e47065668890c8d => {
2157 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2158 let mut req = fidl::new_empty!(
2159 MlmeSetControlledPortRequest,
2160 fidl::encoding::DefaultFuchsiaResourceDialect
2161 );
2162 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSetControlledPortRequest>(&header, _body_bytes, handles, &mut req)?;
2163 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2164 Ok(MlmeRequest::SetControlledPort { req: req.req, control_handle })
2165 }
2166 0x6ee3e7f63f2b7bc0 => {
2167 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2168 let mut req = fidl::new_empty!(
2169 fidl::encoding::EmptyPayload,
2170 fidl::encoding::DefaultFuchsiaResourceDialect
2171 );
2172 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2173 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2174 Ok(MlmeRequest::QueryDeviceInfo {
2175 responder: MlmeQueryDeviceInfoResponder {
2176 control_handle: std::mem::ManuallyDrop::new(control_handle),
2177 tx_id: header.tx_id,
2178 },
2179 })
2180 }
2181 0x4ac57b8eee721a2 => {
2182 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2183 let mut req = fidl::new_empty!(
2184 fidl::encoding::EmptyPayload,
2185 fidl::encoding::DefaultFuchsiaResourceDialect
2186 );
2187 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2188 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2189 Ok(MlmeRequest::QueryDiscoverySupport {
2190 responder: MlmeQueryDiscoverySupportResponder {
2191 control_handle: std::mem::ManuallyDrop::new(control_handle),
2192 tx_id: header.tx_id,
2193 },
2194 })
2195 }
2196 0x70d23f3b08382854 => {
2197 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2198 let mut req = fidl::new_empty!(
2199 fidl::encoding::EmptyPayload,
2200 fidl::encoding::DefaultFuchsiaResourceDialect
2201 );
2202 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2203 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2204 Ok(MlmeRequest::QueryMacSublayerSupport {
2205 responder: MlmeQueryMacSublayerSupportResponder {
2206 control_handle: std::mem::ManuallyDrop::new(control_handle),
2207 tx_id: header.tx_id,
2208 },
2209 })
2210 }
2211 0x2512eb3424620151 => {
2212 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2213 let mut req = fidl::new_empty!(
2214 fidl::encoding::EmptyPayload,
2215 fidl::encoding::DefaultFuchsiaResourceDialect
2216 );
2217 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2218 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2219 Ok(MlmeRequest::QuerySecuritySupport {
2220 responder: MlmeQuerySecuritySupportResponder {
2221 control_handle: std::mem::ManuallyDrop::new(control_handle),
2222 tx_id: header.tx_id,
2223 },
2224 })
2225 }
2226 0x28ed024e9d883010 => {
2227 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2228 let mut req = fidl::new_empty!(
2229 fidl::encoding::EmptyPayload,
2230 fidl::encoding::DefaultFuchsiaResourceDialect
2231 );
2232 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2233 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2234 Ok(MlmeRequest::QuerySpectrumManagementSupport {
2235 responder: MlmeQuerySpectrumManagementSupportResponder {
2236 control_handle: std::mem::ManuallyDrop::new(control_handle),
2237 tx_id: header.tx_id,
2238 },
2239 })
2240 }
2241 0x1598879b70332c99 => {
2242 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2243 let mut req = fidl::new_empty!(
2244 fidl::encoding::EmptyPayload,
2245 fidl::encoding::DefaultFuchsiaResourceDialect
2246 );
2247 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2248 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2249 Ok(MlmeRequest::QueryTelemetrySupport {
2250 responder: MlmeQueryTelemetrySupportResponder {
2251 control_handle: std::mem::ManuallyDrop::new(control_handle),
2252 tx_id: header.tx_id,
2253 },
2254 })
2255 }
2256 0xede1a8342d1b211 => {
2257 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2258 let mut req = fidl::new_empty!(
2259 fidl::encoding::EmptyPayload,
2260 fidl::encoding::DefaultFuchsiaResourceDialect
2261 );
2262 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2263 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2264 Ok(MlmeRequest::GetIfaceStats {
2265 responder: MlmeGetIfaceStatsResponder {
2266 control_handle: std::mem::ManuallyDrop::new(control_handle),
2267 tx_id: header.tx_id,
2268 },
2269 })
2270 }
2271 0x1979c9d3449f8675 => {
2272 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2273 let mut req = fidl::new_empty!(
2274 fidl::encoding::EmptyPayload,
2275 fidl::encoding::DefaultFuchsiaResourceDialect
2276 );
2277 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2278 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2279 Ok(MlmeRequest::GetIfaceHistogramStats {
2280 responder: MlmeGetIfaceHistogramStatsResponder {
2281 control_handle: std::mem::ManuallyDrop::new(control_handle),
2282 tx_id: header.tx_id,
2283 },
2284 })
2285 }
2286 0x4ac5d1e66fe1ffd5 => {
2287 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2288 let mut req = fidl::new_empty!(
2289 fidl::encoding::EmptyPayload,
2290 fidl::encoding::DefaultFuchsiaResourceDialect
2291 );
2292 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2293 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2294 Ok(MlmeRequest::ListMinstrelPeers {
2295 responder: MlmeListMinstrelPeersResponder {
2296 control_handle: std::mem::ManuallyDrop::new(control_handle),
2297 tx_id: header.tx_id,
2298 },
2299 })
2300 }
2301 0x2f688b1245323f4b => {
2302 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2303 let mut req = fidl::new_empty!(
2304 MlmeGetMinstrelStatsRequest,
2305 fidl::encoding::DefaultFuchsiaResourceDialect
2306 );
2307 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeGetMinstrelStatsRequest>(&header, _body_bytes, handles, &mut req)?;
2308 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2309 Ok(MlmeRequest::GetMinstrelStats {
2310 req: req.req,
2311
2312 responder: MlmeGetMinstrelStatsResponder {
2313 control_handle: std::mem::ManuallyDrop::new(control_handle),
2314 tx_id: header.tx_id,
2315 },
2316 })
2317 }
2318 0x23b369ed5749ee69 => {
2319 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2320 let mut req = fidl::new_empty!(
2321 MlmeStartCaptureFramesRequest,
2322 fidl::encoding::DefaultFuchsiaResourceDialect
2323 );
2324 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeStartCaptureFramesRequest>(&header, _body_bytes, handles, &mut req)?;
2325 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2326 Ok(MlmeRequest::StartCaptureFrames {
2327 req: req.req,
2328
2329 responder: MlmeStartCaptureFramesResponder {
2330 control_handle: std::mem::ManuallyDrop::new(control_handle),
2331 tx_id: header.tx_id,
2332 },
2333 })
2334 }
2335 0x2f1aebbc68bf7c54 => {
2336 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2337 let mut req = fidl::new_empty!(
2338 fidl::encoding::EmptyPayload,
2339 fidl::encoding::DefaultFuchsiaResourceDialect
2340 );
2341 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2342 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2343 Ok(MlmeRequest::StopCaptureFrames { control_handle })
2344 }
2345 0x28477bd2f7a5ab0c => {
2346 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2347 let mut req = fidl::new_empty!(
2348 MlmeSaeHandshakeRespRequest,
2349 fidl::encoding::DefaultFuchsiaResourceDialect
2350 );
2351 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSaeHandshakeRespRequest>(&header, _body_bytes, handles, &mut req)?;
2352 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2353 Ok(MlmeRequest::SaeHandshakeResp { resp: req.resp, control_handle })
2354 }
2355 0x7700c0d536733d8c => {
2356 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2357 let mut req = fidl::new_empty!(
2358 MlmeSaeFrameTxRequest,
2359 fidl::encoding::DefaultFuchsiaResourceDialect
2360 );
2361 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeSaeFrameTxRequest>(&header, _body_bytes, handles, &mut req)?;
2362 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2363 Ok(MlmeRequest::SaeFrameTx { frame: req.frame, control_handle })
2364 }
2365 0xef4851f6088fede => {
2366 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2367 let mut req = fidl::new_empty!(
2368 fidl::encoding::EmptyPayload,
2369 fidl::encoding::DefaultFuchsiaResourceDialect
2370 );
2371 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
2372 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2373 Ok(MlmeRequest::WmmStatusReq { control_handle })
2374 }
2375 0x7aea59787cfd385a => {
2376 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2377 let mut req = fidl::new_empty!(
2378 MlmeFinalizeAssociationReqRequest,
2379 fidl::encoding::DefaultFuchsiaResourceDialect
2380 );
2381 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<MlmeFinalizeAssociationReqRequest>(&header, _body_bytes, handles, &mut req)?;
2382 let control_handle = MlmeControlHandle { inner: this.inner.clone() };
2383 Ok(MlmeRequest::FinalizeAssociationReq {
2384 negotiated_capabilities: req.negotiated_capabilities,
2385
2386 control_handle,
2387 })
2388 }
2389 _ => Err(fidl::Error::UnknownOrdinal {
2390 ordinal: header.ordinal,
2391 protocol_name: <MlmeMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2392 }),
2393 }))
2394 },
2395 )
2396 }
2397}
2398
2399#[derive(Debug)]
2400pub enum MlmeRequest {
2401 StartScan {
2402 req: ScanRequest,
2403 control_handle: MlmeControlHandle,
2404 },
2405 ConnectReq {
2406 req: ConnectRequest,
2407 control_handle: MlmeControlHandle,
2408 },
2409 ReconnectReq {
2410 req: ReconnectRequest,
2411 control_handle: MlmeControlHandle,
2412 },
2413 RoamReq {
2415 req: RoamRequest,
2416 control_handle: MlmeControlHandle,
2417 },
2418 AuthenticateResp {
2419 resp: AuthenticateResponse,
2420 control_handle: MlmeControlHandle,
2421 },
2422 DeauthenticateReq {
2423 req: DeauthenticateRequest,
2424 control_handle: MlmeControlHandle,
2425 },
2426 AssociateResp {
2427 resp: AssociateResponse,
2428 control_handle: MlmeControlHandle,
2429 },
2430 DisassociateReq {
2431 req: DisassociateRequest,
2432 control_handle: MlmeControlHandle,
2433 },
2434 ResetReq {
2435 req: ResetRequest,
2436 control_handle: MlmeControlHandle,
2437 },
2438 StartReq {
2439 req: StartRequest,
2440 control_handle: MlmeControlHandle,
2441 },
2442 StopReq {
2443 req: StopRequest,
2444 control_handle: MlmeControlHandle,
2445 },
2446 SetKeysReq {
2447 req: SetKeysRequest,
2448 control_handle: MlmeControlHandle,
2449 },
2450 DeleteKeysReq {
2451 req: DeleteKeysRequest,
2452 control_handle: MlmeControlHandle,
2453 },
2454 EapolReq {
2455 req: EapolRequest,
2456 control_handle: MlmeControlHandle,
2457 },
2458 SetControlledPort {
2459 req: SetControlledPortRequest,
2460 control_handle: MlmeControlHandle,
2461 },
2462 QueryDeviceInfo {
2463 responder: MlmeQueryDeviceInfoResponder,
2464 },
2465 QueryDiscoverySupport {
2466 responder: MlmeQueryDiscoverySupportResponder,
2467 },
2468 QueryMacSublayerSupport {
2469 responder: MlmeQueryMacSublayerSupportResponder,
2470 },
2471 QuerySecuritySupport {
2472 responder: MlmeQuerySecuritySupportResponder,
2473 },
2474 QuerySpectrumManagementSupport {
2475 responder: MlmeQuerySpectrumManagementSupportResponder,
2476 },
2477 QueryTelemetrySupport {
2478 responder: MlmeQueryTelemetrySupportResponder,
2479 },
2480 GetIfaceStats {
2481 responder: MlmeGetIfaceStatsResponder,
2482 },
2483 GetIfaceHistogramStats {
2484 responder: MlmeGetIfaceHistogramStatsResponder,
2485 },
2486 ListMinstrelPeers {
2487 responder: MlmeListMinstrelPeersResponder,
2488 },
2489 GetMinstrelStats {
2490 req: MinstrelStatsRequest,
2491 responder: MlmeGetMinstrelStatsResponder,
2492 },
2493 StartCaptureFrames {
2494 req: StartCaptureFramesRequest,
2495 responder: MlmeStartCaptureFramesResponder,
2496 },
2497 StopCaptureFrames {
2498 control_handle: MlmeControlHandle,
2499 },
2500 SaeHandshakeResp {
2502 resp: SaeHandshakeResponse,
2503 control_handle: MlmeControlHandle,
2504 },
2505 SaeFrameTx {
2507 frame: SaeFrame,
2508 control_handle: MlmeControlHandle,
2509 },
2510 WmmStatusReq {
2511 control_handle: MlmeControlHandle,
2512 },
2513 FinalizeAssociationReq {
2514 negotiated_capabilities: NegotiatedCapabilities,
2515 control_handle: MlmeControlHandle,
2516 },
2517}
2518
2519impl MlmeRequest {
2520 #[allow(irrefutable_let_patterns)]
2521 pub fn into_start_scan(self) -> Option<(ScanRequest, MlmeControlHandle)> {
2522 if let MlmeRequest::StartScan { req, control_handle } = self {
2523 Some((req, control_handle))
2524 } else {
2525 None
2526 }
2527 }
2528
2529 #[allow(irrefutable_let_patterns)]
2530 pub fn into_connect_req(self) -> Option<(ConnectRequest, MlmeControlHandle)> {
2531 if let MlmeRequest::ConnectReq { req, control_handle } = self {
2532 Some((req, control_handle))
2533 } else {
2534 None
2535 }
2536 }
2537
2538 #[allow(irrefutable_let_patterns)]
2539 pub fn into_reconnect_req(self) -> Option<(ReconnectRequest, MlmeControlHandle)> {
2540 if let MlmeRequest::ReconnectReq { req, control_handle } = self {
2541 Some((req, control_handle))
2542 } else {
2543 None
2544 }
2545 }
2546
2547 #[allow(irrefutable_let_patterns)]
2548 pub fn into_roam_req(self) -> Option<(RoamRequest, MlmeControlHandle)> {
2549 if let MlmeRequest::RoamReq { req, control_handle } = self {
2550 Some((req, control_handle))
2551 } else {
2552 None
2553 }
2554 }
2555
2556 #[allow(irrefutable_let_patterns)]
2557 pub fn into_authenticate_resp(self) -> Option<(AuthenticateResponse, MlmeControlHandle)> {
2558 if let MlmeRequest::AuthenticateResp { resp, control_handle } = self {
2559 Some((resp, control_handle))
2560 } else {
2561 None
2562 }
2563 }
2564
2565 #[allow(irrefutable_let_patterns)]
2566 pub fn into_deauthenticate_req(self) -> Option<(DeauthenticateRequest, MlmeControlHandle)> {
2567 if let MlmeRequest::DeauthenticateReq { req, control_handle } = self {
2568 Some((req, control_handle))
2569 } else {
2570 None
2571 }
2572 }
2573
2574 #[allow(irrefutable_let_patterns)]
2575 pub fn into_associate_resp(self) -> Option<(AssociateResponse, MlmeControlHandle)> {
2576 if let MlmeRequest::AssociateResp { resp, control_handle } = self {
2577 Some((resp, control_handle))
2578 } else {
2579 None
2580 }
2581 }
2582
2583 #[allow(irrefutable_let_patterns)]
2584 pub fn into_disassociate_req(self) -> Option<(DisassociateRequest, MlmeControlHandle)> {
2585 if let MlmeRequest::DisassociateReq { req, control_handle } = self {
2586 Some((req, control_handle))
2587 } else {
2588 None
2589 }
2590 }
2591
2592 #[allow(irrefutable_let_patterns)]
2593 pub fn into_reset_req(self) -> Option<(ResetRequest, MlmeControlHandle)> {
2594 if let MlmeRequest::ResetReq { req, control_handle } = self {
2595 Some((req, control_handle))
2596 } else {
2597 None
2598 }
2599 }
2600
2601 #[allow(irrefutable_let_patterns)]
2602 pub fn into_start_req(self) -> Option<(StartRequest, MlmeControlHandle)> {
2603 if let MlmeRequest::StartReq { req, control_handle } = self {
2604 Some((req, control_handle))
2605 } else {
2606 None
2607 }
2608 }
2609
2610 #[allow(irrefutable_let_patterns)]
2611 pub fn into_stop_req(self) -> Option<(StopRequest, MlmeControlHandle)> {
2612 if let MlmeRequest::StopReq { req, control_handle } = self {
2613 Some((req, control_handle))
2614 } else {
2615 None
2616 }
2617 }
2618
2619 #[allow(irrefutable_let_patterns)]
2620 pub fn into_set_keys_req(self) -> Option<(SetKeysRequest, MlmeControlHandle)> {
2621 if let MlmeRequest::SetKeysReq { req, control_handle } = self {
2622 Some((req, control_handle))
2623 } else {
2624 None
2625 }
2626 }
2627
2628 #[allow(irrefutable_let_patterns)]
2629 pub fn into_delete_keys_req(self) -> Option<(DeleteKeysRequest, MlmeControlHandle)> {
2630 if let MlmeRequest::DeleteKeysReq { req, control_handle } = self {
2631 Some((req, control_handle))
2632 } else {
2633 None
2634 }
2635 }
2636
2637 #[allow(irrefutable_let_patterns)]
2638 pub fn into_eapol_req(self) -> Option<(EapolRequest, MlmeControlHandle)> {
2639 if let MlmeRequest::EapolReq { req, control_handle } = self {
2640 Some((req, control_handle))
2641 } else {
2642 None
2643 }
2644 }
2645
2646 #[allow(irrefutable_let_patterns)]
2647 pub fn into_set_controlled_port(self) -> Option<(SetControlledPortRequest, MlmeControlHandle)> {
2648 if let MlmeRequest::SetControlledPort { req, control_handle } = self {
2649 Some((req, control_handle))
2650 } else {
2651 None
2652 }
2653 }
2654
2655 #[allow(irrefutable_let_patterns)]
2656 pub fn into_query_device_info(self) -> Option<(MlmeQueryDeviceInfoResponder)> {
2657 if let MlmeRequest::QueryDeviceInfo { responder } = self {
2658 Some((responder))
2659 } else {
2660 None
2661 }
2662 }
2663
2664 #[allow(irrefutable_let_patterns)]
2665 pub fn into_query_discovery_support(self) -> Option<(MlmeQueryDiscoverySupportResponder)> {
2666 if let MlmeRequest::QueryDiscoverySupport { responder } = self {
2667 Some((responder))
2668 } else {
2669 None
2670 }
2671 }
2672
2673 #[allow(irrefutable_let_patterns)]
2674 pub fn into_query_mac_sublayer_support(self) -> Option<(MlmeQueryMacSublayerSupportResponder)> {
2675 if let MlmeRequest::QueryMacSublayerSupport { responder } = self {
2676 Some((responder))
2677 } else {
2678 None
2679 }
2680 }
2681
2682 #[allow(irrefutable_let_patterns)]
2683 pub fn into_query_security_support(self) -> Option<(MlmeQuerySecuritySupportResponder)> {
2684 if let MlmeRequest::QuerySecuritySupport { responder } = self {
2685 Some((responder))
2686 } else {
2687 None
2688 }
2689 }
2690
2691 #[allow(irrefutable_let_patterns)]
2692 pub fn into_query_spectrum_management_support(
2693 self,
2694 ) -> Option<(MlmeQuerySpectrumManagementSupportResponder)> {
2695 if let MlmeRequest::QuerySpectrumManagementSupport { responder } = self {
2696 Some((responder))
2697 } else {
2698 None
2699 }
2700 }
2701
2702 #[allow(irrefutable_let_patterns)]
2703 pub fn into_query_telemetry_support(self) -> Option<(MlmeQueryTelemetrySupportResponder)> {
2704 if let MlmeRequest::QueryTelemetrySupport { responder } = self {
2705 Some((responder))
2706 } else {
2707 None
2708 }
2709 }
2710
2711 #[allow(irrefutable_let_patterns)]
2712 pub fn into_get_iface_stats(self) -> Option<(MlmeGetIfaceStatsResponder)> {
2713 if let MlmeRequest::GetIfaceStats { responder } = self {
2714 Some((responder))
2715 } else {
2716 None
2717 }
2718 }
2719
2720 #[allow(irrefutable_let_patterns)]
2721 pub fn into_get_iface_histogram_stats(self) -> Option<(MlmeGetIfaceHistogramStatsResponder)> {
2722 if let MlmeRequest::GetIfaceHistogramStats { responder } = self {
2723 Some((responder))
2724 } else {
2725 None
2726 }
2727 }
2728
2729 #[allow(irrefutable_let_patterns)]
2730 pub fn into_list_minstrel_peers(self) -> Option<(MlmeListMinstrelPeersResponder)> {
2731 if let MlmeRequest::ListMinstrelPeers { responder } = self {
2732 Some((responder))
2733 } else {
2734 None
2735 }
2736 }
2737
2738 #[allow(irrefutable_let_patterns)]
2739 pub fn into_get_minstrel_stats(
2740 self,
2741 ) -> Option<(MinstrelStatsRequest, MlmeGetMinstrelStatsResponder)> {
2742 if let MlmeRequest::GetMinstrelStats { req, responder } = self {
2743 Some((req, responder))
2744 } else {
2745 None
2746 }
2747 }
2748
2749 #[allow(irrefutable_let_patterns)]
2750 pub fn into_start_capture_frames(
2751 self,
2752 ) -> Option<(StartCaptureFramesRequest, MlmeStartCaptureFramesResponder)> {
2753 if let MlmeRequest::StartCaptureFrames { req, responder } = self {
2754 Some((req, responder))
2755 } else {
2756 None
2757 }
2758 }
2759
2760 #[allow(irrefutable_let_patterns)]
2761 pub fn into_stop_capture_frames(self) -> Option<(MlmeControlHandle)> {
2762 if let MlmeRequest::StopCaptureFrames { control_handle } = self {
2763 Some((control_handle))
2764 } else {
2765 None
2766 }
2767 }
2768
2769 #[allow(irrefutable_let_patterns)]
2770 pub fn into_sae_handshake_resp(self) -> Option<(SaeHandshakeResponse, MlmeControlHandle)> {
2771 if let MlmeRequest::SaeHandshakeResp { resp, control_handle } = self {
2772 Some((resp, control_handle))
2773 } else {
2774 None
2775 }
2776 }
2777
2778 #[allow(irrefutable_let_patterns)]
2779 pub fn into_sae_frame_tx(self) -> Option<(SaeFrame, MlmeControlHandle)> {
2780 if let MlmeRequest::SaeFrameTx { frame, control_handle } = self {
2781 Some((frame, control_handle))
2782 } else {
2783 None
2784 }
2785 }
2786
2787 #[allow(irrefutable_let_patterns)]
2788 pub fn into_wmm_status_req(self) -> Option<(MlmeControlHandle)> {
2789 if let MlmeRequest::WmmStatusReq { control_handle } = self {
2790 Some((control_handle))
2791 } else {
2792 None
2793 }
2794 }
2795
2796 #[allow(irrefutable_let_patterns)]
2797 pub fn into_finalize_association_req(
2798 self,
2799 ) -> Option<(NegotiatedCapabilities, MlmeControlHandle)> {
2800 if let MlmeRequest::FinalizeAssociationReq { negotiated_capabilities, control_handle } =
2801 self
2802 {
2803 Some((negotiated_capabilities, control_handle))
2804 } else {
2805 None
2806 }
2807 }
2808
2809 pub fn method_name(&self) -> &'static str {
2811 match *self {
2812 MlmeRequest::StartScan { .. } => "start_scan",
2813 MlmeRequest::ConnectReq { .. } => "connect_req",
2814 MlmeRequest::ReconnectReq { .. } => "reconnect_req",
2815 MlmeRequest::RoamReq { .. } => "roam_req",
2816 MlmeRequest::AuthenticateResp { .. } => "authenticate_resp",
2817 MlmeRequest::DeauthenticateReq { .. } => "deauthenticate_req",
2818 MlmeRequest::AssociateResp { .. } => "associate_resp",
2819 MlmeRequest::DisassociateReq { .. } => "disassociate_req",
2820 MlmeRequest::ResetReq { .. } => "reset_req",
2821 MlmeRequest::StartReq { .. } => "start_req",
2822 MlmeRequest::StopReq { .. } => "stop_req",
2823 MlmeRequest::SetKeysReq { .. } => "set_keys_req",
2824 MlmeRequest::DeleteKeysReq { .. } => "delete_keys_req",
2825 MlmeRequest::EapolReq { .. } => "eapol_req",
2826 MlmeRequest::SetControlledPort { .. } => "set_controlled_port",
2827 MlmeRequest::QueryDeviceInfo { .. } => "query_device_info",
2828 MlmeRequest::QueryDiscoverySupport { .. } => "query_discovery_support",
2829 MlmeRequest::QueryMacSublayerSupport { .. } => "query_mac_sublayer_support",
2830 MlmeRequest::QuerySecuritySupport { .. } => "query_security_support",
2831 MlmeRequest::QuerySpectrumManagementSupport { .. } => {
2832 "query_spectrum_management_support"
2833 }
2834 MlmeRequest::QueryTelemetrySupport { .. } => "query_telemetry_support",
2835 MlmeRequest::GetIfaceStats { .. } => "get_iface_stats",
2836 MlmeRequest::GetIfaceHistogramStats { .. } => "get_iface_histogram_stats",
2837 MlmeRequest::ListMinstrelPeers { .. } => "list_minstrel_peers",
2838 MlmeRequest::GetMinstrelStats { .. } => "get_minstrel_stats",
2839 MlmeRequest::StartCaptureFrames { .. } => "start_capture_frames",
2840 MlmeRequest::StopCaptureFrames { .. } => "stop_capture_frames",
2841 MlmeRequest::SaeHandshakeResp { .. } => "sae_handshake_resp",
2842 MlmeRequest::SaeFrameTx { .. } => "sae_frame_tx",
2843 MlmeRequest::WmmStatusReq { .. } => "wmm_status_req",
2844 MlmeRequest::FinalizeAssociationReq { .. } => "finalize_association_req",
2845 }
2846 }
2847}
2848
2849#[derive(Debug, Clone)]
2850pub struct MlmeControlHandle {
2851 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2852}
2853
2854impl fidl::endpoints::ControlHandle for MlmeControlHandle {
2855 fn shutdown(&self) {
2856 self.inner.shutdown()
2857 }
2858 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
2859 self.inner.shutdown_with_epitaph(status)
2860 }
2861
2862 fn is_closed(&self) -> bool {
2863 self.inner.channel().is_closed()
2864 }
2865 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
2866 self.inner.channel().on_closed()
2867 }
2868
2869 #[cfg(target_os = "fuchsia")]
2870 fn signal_peer(
2871 &self,
2872 clear_mask: zx::Signals,
2873 set_mask: zx::Signals,
2874 ) -> Result<(), zx_status::Status> {
2875 use fidl::Peered;
2876 self.inner.channel().signal_peer(clear_mask, set_mask)
2877 }
2878}
2879
2880impl MlmeControlHandle {
2881 pub fn send_on_scan_result(&self, mut result: &ScanResult) -> Result<(), fidl::Error> {
2882 self.inner.send::<MlmeOnScanResultRequest>(
2883 (result,),
2884 0,
2885 0x681af7466a75074d,
2886 fidl::encoding::DynamicFlags::empty(),
2887 )
2888 }
2889
2890 pub fn send_on_scan_end(&self, mut end: &ScanEnd) -> Result<(), fidl::Error> {
2891 self.inner.send::<MlmeOnScanEndRequest>(
2892 (end,),
2893 0,
2894 0x7f2702d253e7ca59,
2895 fidl::encoding::DynamicFlags::empty(),
2896 )
2897 }
2898
2899 pub fn send_connect_conf(&self, mut resp: &ConnectConfirm) -> Result<(), fidl::Error> {
2900 self.inner.send::<MlmeConnectConfRequest>(
2901 (resp,),
2902 0,
2903 0x77b27623279b981e,
2904 fidl::encoding::DynamicFlags::empty(),
2905 )
2906 }
2907
2908 pub fn send_roam_conf(&self, mut conf: &RoamConfirm) -> Result<(), fidl::Error> {
2909 self.inner.send::<MlmeRoamConfRequest>(
2910 (conf,),
2911 0,
2912 0x3f608034faa054bc,
2913 fidl::encoding::DynamicFlags::empty(),
2914 )
2915 }
2916
2917 pub fn send_roam_start_ind(&self, mut ind: &RoamStartIndication) -> Result<(), fidl::Error> {
2918 self.inner.send::<MlmeRoamStartIndRequest>(
2919 (ind,),
2920 0,
2921 0x270a1ec78672d094,
2922 fidl::encoding::DynamicFlags::empty(),
2923 )
2924 }
2925
2926 pub fn send_roam_result_ind(&self, mut ind: &RoamResultIndication) -> Result<(), fidl::Error> {
2927 self.inner.send::<MlmeRoamResultIndRequest>(
2928 (ind,),
2929 0,
2930 0x26d074364fc84865,
2931 fidl::encoding::DynamicFlags::empty(),
2932 )
2933 }
2934
2935 pub fn send_authenticate_ind(
2936 &self,
2937 mut ind: &AuthenticateIndication,
2938 ) -> Result<(), fidl::Error> {
2939 self.inner.send::<MlmeAuthenticateIndRequest>(
2940 (ind,),
2941 0,
2942 0x460f49ae891adbe9,
2943 fidl::encoding::DynamicFlags::empty(),
2944 )
2945 }
2946
2947 pub fn send_deauthenticate_conf(
2948 &self,
2949 mut resp: &DeauthenticateConfirm,
2950 ) -> Result<(), fidl::Error> {
2951 self.inner.send::<MlmeDeauthenticateConfRequest>(
2952 (resp,),
2953 0,
2954 0x3b44debc21b88c8c,
2955 fidl::encoding::DynamicFlags::empty(),
2956 )
2957 }
2958
2959 pub fn send_deauthenticate_ind(
2960 &self,
2961 mut ind: &DeauthenticateIndication,
2962 ) -> Result<(), fidl::Error> {
2963 self.inner.send::<MlmeDeauthenticateIndRequest>(
2964 (ind,),
2965 0,
2966 0x7ee0889b326da1d7,
2967 fidl::encoding::DynamicFlags::empty(),
2968 )
2969 }
2970
2971 pub fn send_associate_ind(&self, mut ind: &AssociateIndication) -> Result<(), fidl::Error> {
2972 self.inner.send::<MlmeAssociateIndRequest>(
2973 (ind,),
2974 0,
2975 0x6a86f20e3063dd63,
2976 fidl::encoding::DynamicFlags::empty(),
2977 )
2978 }
2979
2980 pub fn send_disassociate_conf(
2981 &self,
2982 mut resp: &DisassociateConfirm,
2983 ) -> Result<(), fidl::Error> {
2984 self.inner.send::<MlmeDisassociateConfRequest>(
2985 (resp,),
2986 0,
2987 0x61345fbce732a28d,
2988 fidl::encoding::DynamicFlags::empty(),
2989 )
2990 }
2991
2992 pub fn send_disassociate_ind(
2993 &self,
2994 mut ind: &DisassociateIndication,
2995 ) -> Result<(), fidl::Error> {
2996 self.inner.send::<MlmeDisassociateIndRequest>(
2997 (ind,),
2998 0,
2999 0x77ac0ebf387c1f35,
3000 fidl::encoding::DynamicFlags::empty(),
3001 )
3002 }
3003
3004 pub fn send_start_conf(&self, mut resp: &StartConfirm) -> Result<(), fidl::Error> {
3005 self.inner.send::<MlmeStartConfRequest>(
3006 (resp,),
3007 0,
3008 0x15ea6cdf3b8382b3,
3009 fidl::encoding::DynamicFlags::empty(),
3010 )
3011 }
3012
3013 pub fn send_stop_conf(&self, mut resp: &StopConfirm) -> Result<(), fidl::Error> {
3014 self.inner.send::<MlmeStopConfRequest>(
3015 (resp,),
3016 0,
3017 0x50b426ef4a84a2df,
3018 fidl::encoding::DynamicFlags::empty(),
3019 )
3020 }
3021
3022 pub fn send_set_keys_conf(&self, mut conf: &SetKeysConfirm) -> Result<(), fidl::Error> {
3023 self.inner.send::<MlmeSetKeysConfRequest>(
3024 (conf,),
3025 0,
3026 0x5bafb3a8d4039380,
3027 fidl::encoding::DynamicFlags::empty(),
3028 )
3029 }
3030
3031 pub fn send_eapol_conf(&self, mut resp: &EapolConfirm) -> Result<(), fidl::Error> {
3032 self.inner.send::<MlmeEapolConfRequest>(
3033 (resp,),
3034 0,
3035 0x6ffa21f4ee73ce64,
3036 fidl::encoding::DynamicFlags::empty(),
3037 )
3038 }
3039
3040 pub fn send_signal_report(
3041 &self,
3042 mut ind: &fidl_fuchsia_wlan_internal::SignalReportIndication,
3043 ) -> Result<(), fidl::Error> {
3044 self.inner.send::<MlmeSignalReportRequest>(
3045 (ind,),
3046 0,
3047 0x48f32a876aa53d8f,
3048 fidl::encoding::DynamicFlags::empty(),
3049 )
3050 }
3051
3052 pub fn send_eapol_ind(&self, mut ind: &EapolIndication) -> Result<(), fidl::Error> {
3053 self.inner.send::<MlmeEapolIndRequest>(
3054 (ind,),
3055 0,
3056 0x7038dca46a3142fc,
3057 fidl::encoding::DynamicFlags::empty(),
3058 )
3059 }
3060
3061 pub fn send_relay_captured_frame(
3062 &self,
3063 mut result: &CapturedFrameResult,
3064 ) -> Result<(), fidl::Error> {
3065 self.inner.send::<MlmeRelayCapturedFrameRequest>(
3066 (result,),
3067 0,
3068 0x6f00a6f3cff9b1f5,
3069 fidl::encoding::DynamicFlags::empty(),
3070 )
3071 }
3072
3073 pub fn send_on_channel_switched(
3074 &self,
3075 mut info: &fidl_fuchsia_wlan_internal::ChannelSwitchInfo,
3076 ) -> Result<(), fidl::Error> {
3077 self.inner.send::<MlmeOnChannelSwitchedRequest>(
3078 (info,),
3079 0,
3080 0x581750594e4c0c1,
3081 fidl::encoding::DynamicFlags::empty(),
3082 )
3083 }
3084
3085 pub fn send_on_pmk_available(&self, mut info: &PmkInfo) -> Result<(), fidl::Error> {
3086 self.inner.send::<MlmeOnPmkAvailableRequest>(
3087 (info,),
3088 0,
3089 0x1314fc2c79643f90,
3090 fidl::encoding::DynamicFlags::empty(),
3091 )
3092 }
3093
3094 pub fn send_on_sae_handshake_ind(
3095 &self,
3096 mut ind: &SaeHandshakeIndication,
3097 ) -> Result<(), fidl::Error> {
3098 self.inner.send::<MlmeOnSaeHandshakeIndRequest>(
3099 (ind,),
3100 0,
3101 0x6308b10e18986d7e,
3102 fidl::encoding::DynamicFlags::empty(),
3103 )
3104 }
3105
3106 pub fn send_on_sae_frame_rx(&self, mut frame: &SaeFrame) -> Result<(), fidl::Error> {
3107 self.inner.send::<MlmeOnSaeFrameRxRequest>(
3108 (frame,),
3109 0,
3110 0x4ebf51c86ef5f3cd,
3111 fidl::encoding::DynamicFlags::empty(),
3112 )
3113 }
3114
3115 pub fn send_on_wmm_status_resp(
3116 &self,
3117 mut status: i32,
3118 mut resp: &fidl_fuchsia_wlan_internal::WmmStatusResponse,
3119 ) -> Result<(), fidl::Error> {
3120 self.inner.send::<MlmeOnWmmStatusRespRequest>(
3121 (status, resp),
3122 0,
3123 0x53f056b432e7b5cb,
3124 fidl::encoding::DynamicFlags::empty(),
3125 )
3126 }
3127}
3128
3129#[must_use = "FIDL methods require a response to be sent"]
3130#[derive(Debug)]
3131pub struct MlmeQueryDeviceInfoResponder {
3132 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3133 tx_id: u32,
3134}
3135
3136impl std::ops::Drop for MlmeQueryDeviceInfoResponder {
3140 fn drop(&mut self) {
3141 self.control_handle.shutdown();
3142 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3144 }
3145}
3146
3147impl fidl::endpoints::Responder for MlmeQueryDeviceInfoResponder {
3148 type ControlHandle = MlmeControlHandle;
3149
3150 fn control_handle(&self) -> &MlmeControlHandle {
3151 &self.control_handle
3152 }
3153
3154 fn drop_without_shutdown(mut self) {
3155 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3157 std::mem::forget(self);
3159 }
3160}
3161
3162impl MlmeQueryDeviceInfoResponder {
3163 pub fn send(self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
3167 let _result = self.send_raw(info);
3168 if _result.is_err() {
3169 self.control_handle.shutdown();
3170 }
3171 self.drop_without_shutdown();
3172 _result
3173 }
3174
3175 pub fn send_no_shutdown_on_err(self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
3177 let _result = self.send_raw(info);
3178 self.drop_without_shutdown();
3179 _result
3180 }
3181
3182 fn send_raw(&self, mut info: &DeviceInfo) -> Result<(), fidl::Error> {
3183 self.control_handle.inner.send::<MlmeQueryDeviceInfoResponse>(
3184 (info,),
3185 self.tx_id,
3186 0x6ee3e7f63f2b7bc0,
3187 fidl::encoding::DynamicFlags::empty(),
3188 )
3189 }
3190}
3191
3192#[must_use = "FIDL methods require a response to be sent"]
3193#[derive(Debug)]
3194pub struct MlmeQueryDiscoverySupportResponder {
3195 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3196 tx_id: u32,
3197}
3198
3199impl std::ops::Drop for MlmeQueryDiscoverySupportResponder {
3203 fn drop(&mut self) {
3204 self.control_handle.shutdown();
3205 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3207 }
3208}
3209
3210impl fidl::endpoints::Responder for MlmeQueryDiscoverySupportResponder {
3211 type ControlHandle = MlmeControlHandle;
3212
3213 fn control_handle(&self) -> &MlmeControlHandle {
3214 &self.control_handle
3215 }
3216
3217 fn drop_without_shutdown(mut self) {
3218 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3220 std::mem::forget(self);
3222 }
3223}
3224
3225impl MlmeQueryDiscoverySupportResponder {
3226 pub fn send(
3230 self,
3231 mut resp: &fidl_fuchsia_wlan_common::DiscoverySupport,
3232 ) -> Result<(), fidl::Error> {
3233 let _result = self.send_raw(resp);
3234 if _result.is_err() {
3235 self.control_handle.shutdown();
3236 }
3237 self.drop_without_shutdown();
3238 _result
3239 }
3240
3241 pub fn send_no_shutdown_on_err(
3243 self,
3244 mut resp: &fidl_fuchsia_wlan_common::DiscoverySupport,
3245 ) -> Result<(), fidl::Error> {
3246 let _result = self.send_raw(resp);
3247 self.drop_without_shutdown();
3248 _result
3249 }
3250
3251 fn send_raw(
3252 &self,
3253 mut resp: &fidl_fuchsia_wlan_common::DiscoverySupport,
3254 ) -> Result<(), fidl::Error> {
3255 self.control_handle.inner.send::<MlmeQueryDiscoverySupportResponse>(
3256 (resp,),
3257 self.tx_id,
3258 0x4ac57b8eee721a2,
3259 fidl::encoding::DynamicFlags::empty(),
3260 )
3261 }
3262}
3263
3264#[must_use = "FIDL methods require a response to be sent"]
3265#[derive(Debug)]
3266pub struct MlmeQueryMacSublayerSupportResponder {
3267 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3268 tx_id: u32,
3269}
3270
3271impl std::ops::Drop for MlmeQueryMacSublayerSupportResponder {
3275 fn drop(&mut self) {
3276 self.control_handle.shutdown();
3277 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3279 }
3280}
3281
3282impl fidl::endpoints::Responder for MlmeQueryMacSublayerSupportResponder {
3283 type ControlHandle = MlmeControlHandle;
3284
3285 fn control_handle(&self) -> &MlmeControlHandle {
3286 &self.control_handle
3287 }
3288
3289 fn drop_without_shutdown(mut self) {
3290 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3292 std::mem::forget(self);
3294 }
3295}
3296
3297impl MlmeQueryMacSublayerSupportResponder {
3298 pub fn send(
3302 self,
3303 mut resp: &fidl_fuchsia_wlan_common::MacSublayerSupport,
3304 ) -> Result<(), fidl::Error> {
3305 let _result = self.send_raw(resp);
3306 if _result.is_err() {
3307 self.control_handle.shutdown();
3308 }
3309 self.drop_without_shutdown();
3310 _result
3311 }
3312
3313 pub fn send_no_shutdown_on_err(
3315 self,
3316 mut resp: &fidl_fuchsia_wlan_common::MacSublayerSupport,
3317 ) -> Result<(), fidl::Error> {
3318 let _result = self.send_raw(resp);
3319 self.drop_without_shutdown();
3320 _result
3321 }
3322
3323 fn send_raw(
3324 &self,
3325 mut resp: &fidl_fuchsia_wlan_common::MacSublayerSupport,
3326 ) -> Result<(), fidl::Error> {
3327 self.control_handle.inner.send::<MlmeQueryMacSublayerSupportResponse>(
3328 (resp,),
3329 self.tx_id,
3330 0x70d23f3b08382854,
3331 fidl::encoding::DynamicFlags::empty(),
3332 )
3333 }
3334}
3335
3336#[must_use = "FIDL methods require a response to be sent"]
3337#[derive(Debug)]
3338pub struct MlmeQuerySecuritySupportResponder {
3339 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3340 tx_id: u32,
3341}
3342
3343impl std::ops::Drop for MlmeQuerySecuritySupportResponder {
3347 fn drop(&mut self) {
3348 self.control_handle.shutdown();
3349 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3351 }
3352}
3353
3354impl fidl::endpoints::Responder for MlmeQuerySecuritySupportResponder {
3355 type ControlHandle = MlmeControlHandle;
3356
3357 fn control_handle(&self) -> &MlmeControlHandle {
3358 &self.control_handle
3359 }
3360
3361 fn drop_without_shutdown(mut self) {
3362 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3364 std::mem::forget(self);
3366 }
3367}
3368
3369impl MlmeQuerySecuritySupportResponder {
3370 pub fn send(
3374 self,
3375 mut resp: &fidl_fuchsia_wlan_common::SecuritySupport,
3376 ) -> Result<(), fidl::Error> {
3377 let _result = self.send_raw(resp);
3378 if _result.is_err() {
3379 self.control_handle.shutdown();
3380 }
3381 self.drop_without_shutdown();
3382 _result
3383 }
3384
3385 pub fn send_no_shutdown_on_err(
3387 self,
3388 mut resp: &fidl_fuchsia_wlan_common::SecuritySupport,
3389 ) -> Result<(), fidl::Error> {
3390 let _result = self.send_raw(resp);
3391 self.drop_without_shutdown();
3392 _result
3393 }
3394
3395 fn send_raw(
3396 &self,
3397 mut resp: &fidl_fuchsia_wlan_common::SecuritySupport,
3398 ) -> Result<(), fidl::Error> {
3399 self.control_handle.inner.send::<MlmeQuerySecuritySupportResponse>(
3400 (resp,),
3401 self.tx_id,
3402 0x2512eb3424620151,
3403 fidl::encoding::DynamicFlags::empty(),
3404 )
3405 }
3406}
3407
3408#[must_use = "FIDL methods require a response to be sent"]
3409#[derive(Debug)]
3410pub struct MlmeQuerySpectrumManagementSupportResponder {
3411 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3412 tx_id: u32,
3413}
3414
3415impl std::ops::Drop for MlmeQuerySpectrumManagementSupportResponder {
3419 fn drop(&mut self) {
3420 self.control_handle.shutdown();
3421 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3423 }
3424}
3425
3426impl fidl::endpoints::Responder for MlmeQuerySpectrumManagementSupportResponder {
3427 type ControlHandle = MlmeControlHandle;
3428
3429 fn control_handle(&self) -> &MlmeControlHandle {
3430 &self.control_handle
3431 }
3432
3433 fn drop_without_shutdown(mut self) {
3434 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3436 std::mem::forget(self);
3438 }
3439}
3440
3441impl MlmeQuerySpectrumManagementSupportResponder {
3442 pub fn send(
3446 self,
3447 mut resp: &fidl_fuchsia_wlan_common::SpectrumManagementSupport,
3448 ) -> Result<(), fidl::Error> {
3449 let _result = self.send_raw(resp);
3450 if _result.is_err() {
3451 self.control_handle.shutdown();
3452 }
3453 self.drop_without_shutdown();
3454 _result
3455 }
3456
3457 pub fn send_no_shutdown_on_err(
3459 self,
3460 mut resp: &fidl_fuchsia_wlan_common::SpectrumManagementSupport,
3461 ) -> Result<(), fidl::Error> {
3462 let _result = self.send_raw(resp);
3463 self.drop_without_shutdown();
3464 _result
3465 }
3466
3467 fn send_raw(
3468 &self,
3469 mut resp: &fidl_fuchsia_wlan_common::SpectrumManagementSupport,
3470 ) -> Result<(), fidl::Error> {
3471 self.control_handle.inner.send::<MlmeQuerySpectrumManagementSupportResponse>(
3472 (resp,),
3473 self.tx_id,
3474 0x28ed024e9d883010,
3475 fidl::encoding::DynamicFlags::empty(),
3476 )
3477 }
3478}
3479
3480#[must_use = "FIDL methods require a response to be sent"]
3481#[derive(Debug)]
3482pub struct MlmeQueryTelemetrySupportResponder {
3483 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3484 tx_id: u32,
3485}
3486
3487impl std::ops::Drop for MlmeQueryTelemetrySupportResponder {
3491 fn drop(&mut self) {
3492 self.control_handle.shutdown();
3493 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3495 }
3496}
3497
3498impl fidl::endpoints::Responder for MlmeQueryTelemetrySupportResponder {
3499 type ControlHandle = MlmeControlHandle;
3500
3501 fn control_handle(&self) -> &MlmeControlHandle {
3502 &self.control_handle
3503 }
3504
3505 fn drop_without_shutdown(mut self) {
3506 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3508 std::mem::forget(self);
3510 }
3511}
3512
3513impl MlmeQueryTelemetrySupportResponder {
3514 pub fn send(
3518 self,
3519 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
3520 ) -> Result<(), fidl::Error> {
3521 let _result = self.send_raw(result);
3522 if _result.is_err() {
3523 self.control_handle.shutdown();
3524 }
3525 self.drop_without_shutdown();
3526 _result
3527 }
3528
3529 pub fn send_no_shutdown_on_err(
3531 self,
3532 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
3533 ) -> Result<(), fidl::Error> {
3534 let _result = self.send_raw(result);
3535 self.drop_without_shutdown();
3536 _result
3537 }
3538
3539 fn send_raw(
3540 &self,
3541 mut result: Result<&fidl_fuchsia_wlan_stats::TelemetrySupport, i32>,
3542 ) -> Result<(), fidl::Error> {
3543 self.control_handle
3544 .inner
3545 .send::<fidl::encoding::ResultType<MlmeQueryTelemetrySupportResponse, i32>>(
3546 result.map(|resp| (resp,)),
3547 self.tx_id,
3548 0x1598879b70332c99,
3549 fidl::encoding::DynamicFlags::empty(),
3550 )
3551 }
3552}
3553
3554#[must_use = "FIDL methods require a response to be sent"]
3555#[derive(Debug)]
3556pub struct MlmeGetIfaceStatsResponder {
3557 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3558 tx_id: u32,
3559}
3560
3561impl std::ops::Drop for MlmeGetIfaceStatsResponder {
3565 fn drop(&mut self) {
3566 self.control_handle.shutdown();
3567 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3569 }
3570}
3571
3572impl fidl::endpoints::Responder for MlmeGetIfaceStatsResponder {
3573 type ControlHandle = MlmeControlHandle;
3574
3575 fn control_handle(&self) -> &MlmeControlHandle {
3576 &self.control_handle
3577 }
3578
3579 fn drop_without_shutdown(mut self) {
3580 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3582 std::mem::forget(self);
3584 }
3585}
3586
3587impl MlmeGetIfaceStatsResponder {
3588 pub fn send(self, mut resp: &GetIfaceStatsResponse) -> Result<(), fidl::Error> {
3592 let _result = self.send_raw(resp);
3593 if _result.is_err() {
3594 self.control_handle.shutdown();
3595 }
3596 self.drop_without_shutdown();
3597 _result
3598 }
3599
3600 pub fn send_no_shutdown_on_err(
3602 self,
3603 mut resp: &GetIfaceStatsResponse,
3604 ) -> Result<(), fidl::Error> {
3605 let _result = self.send_raw(resp);
3606 self.drop_without_shutdown();
3607 _result
3608 }
3609
3610 fn send_raw(&self, mut resp: &GetIfaceStatsResponse) -> Result<(), fidl::Error> {
3611 self.control_handle.inner.send::<MlmeGetIfaceStatsResponse>(
3612 (resp,),
3613 self.tx_id,
3614 0xede1a8342d1b211,
3615 fidl::encoding::DynamicFlags::empty(),
3616 )
3617 }
3618}
3619
3620#[must_use = "FIDL methods require a response to be sent"]
3621#[derive(Debug)]
3622pub struct MlmeGetIfaceHistogramStatsResponder {
3623 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3624 tx_id: u32,
3625}
3626
3627impl std::ops::Drop for MlmeGetIfaceHistogramStatsResponder {
3631 fn drop(&mut self) {
3632 self.control_handle.shutdown();
3633 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3635 }
3636}
3637
3638impl fidl::endpoints::Responder for MlmeGetIfaceHistogramStatsResponder {
3639 type ControlHandle = MlmeControlHandle;
3640
3641 fn control_handle(&self) -> &MlmeControlHandle {
3642 &self.control_handle
3643 }
3644
3645 fn drop_without_shutdown(mut self) {
3646 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3648 std::mem::forget(self);
3650 }
3651}
3652
3653impl MlmeGetIfaceHistogramStatsResponder {
3654 pub fn send(self, mut resp: &GetIfaceHistogramStatsResponse) -> Result<(), fidl::Error> {
3658 let _result = self.send_raw(resp);
3659 if _result.is_err() {
3660 self.control_handle.shutdown();
3661 }
3662 self.drop_without_shutdown();
3663 _result
3664 }
3665
3666 pub fn send_no_shutdown_on_err(
3668 self,
3669 mut resp: &GetIfaceHistogramStatsResponse,
3670 ) -> Result<(), fidl::Error> {
3671 let _result = self.send_raw(resp);
3672 self.drop_without_shutdown();
3673 _result
3674 }
3675
3676 fn send_raw(&self, mut resp: &GetIfaceHistogramStatsResponse) -> Result<(), fidl::Error> {
3677 self.control_handle.inner.send::<MlmeGetIfaceHistogramStatsResponse>(
3678 (resp,),
3679 self.tx_id,
3680 0x1979c9d3449f8675,
3681 fidl::encoding::DynamicFlags::empty(),
3682 )
3683 }
3684}
3685
3686#[must_use = "FIDL methods require a response to be sent"]
3687#[derive(Debug)]
3688pub struct MlmeListMinstrelPeersResponder {
3689 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3690 tx_id: u32,
3691}
3692
3693impl std::ops::Drop for MlmeListMinstrelPeersResponder {
3697 fn drop(&mut self) {
3698 self.control_handle.shutdown();
3699 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3701 }
3702}
3703
3704impl fidl::endpoints::Responder for MlmeListMinstrelPeersResponder {
3705 type ControlHandle = MlmeControlHandle;
3706
3707 fn control_handle(&self) -> &MlmeControlHandle {
3708 &self.control_handle
3709 }
3710
3711 fn drop_without_shutdown(mut self) {
3712 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3714 std::mem::forget(self);
3716 }
3717}
3718
3719impl MlmeListMinstrelPeersResponder {
3720 pub fn send(self, mut resp: &MinstrelListResponse) -> Result<(), fidl::Error> {
3724 let _result = self.send_raw(resp);
3725 if _result.is_err() {
3726 self.control_handle.shutdown();
3727 }
3728 self.drop_without_shutdown();
3729 _result
3730 }
3731
3732 pub fn send_no_shutdown_on_err(
3734 self,
3735 mut resp: &MinstrelListResponse,
3736 ) -> Result<(), fidl::Error> {
3737 let _result = self.send_raw(resp);
3738 self.drop_without_shutdown();
3739 _result
3740 }
3741
3742 fn send_raw(&self, mut resp: &MinstrelListResponse) -> Result<(), fidl::Error> {
3743 self.control_handle.inner.send::<MlmeListMinstrelPeersResponse>(
3744 (resp,),
3745 self.tx_id,
3746 0x4ac5d1e66fe1ffd5,
3747 fidl::encoding::DynamicFlags::empty(),
3748 )
3749 }
3750}
3751
3752#[must_use = "FIDL methods require a response to be sent"]
3753#[derive(Debug)]
3754pub struct MlmeGetMinstrelStatsResponder {
3755 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3756 tx_id: u32,
3757}
3758
3759impl std::ops::Drop for MlmeGetMinstrelStatsResponder {
3763 fn drop(&mut self) {
3764 self.control_handle.shutdown();
3765 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3767 }
3768}
3769
3770impl fidl::endpoints::Responder for MlmeGetMinstrelStatsResponder {
3771 type ControlHandle = MlmeControlHandle;
3772
3773 fn control_handle(&self) -> &MlmeControlHandle {
3774 &self.control_handle
3775 }
3776
3777 fn drop_without_shutdown(mut self) {
3778 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3780 std::mem::forget(self);
3782 }
3783}
3784
3785impl MlmeGetMinstrelStatsResponder {
3786 pub fn send(self, mut resp: &MinstrelStatsResponse) -> Result<(), fidl::Error> {
3790 let _result = self.send_raw(resp);
3791 if _result.is_err() {
3792 self.control_handle.shutdown();
3793 }
3794 self.drop_without_shutdown();
3795 _result
3796 }
3797
3798 pub fn send_no_shutdown_on_err(
3800 self,
3801 mut resp: &MinstrelStatsResponse,
3802 ) -> Result<(), fidl::Error> {
3803 let _result = self.send_raw(resp);
3804 self.drop_without_shutdown();
3805 _result
3806 }
3807
3808 fn send_raw(&self, mut resp: &MinstrelStatsResponse) -> Result<(), fidl::Error> {
3809 self.control_handle.inner.send::<MlmeGetMinstrelStatsResponse>(
3810 (resp,),
3811 self.tx_id,
3812 0x2f688b1245323f4b,
3813 fidl::encoding::DynamicFlags::empty(),
3814 )
3815 }
3816}
3817
3818#[must_use = "FIDL methods require a response to be sent"]
3819#[derive(Debug)]
3820pub struct MlmeStartCaptureFramesResponder {
3821 control_handle: std::mem::ManuallyDrop<MlmeControlHandle>,
3822 tx_id: u32,
3823}
3824
3825impl std::ops::Drop for MlmeStartCaptureFramesResponder {
3829 fn drop(&mut self) {
3830 self.control_handle.shutdown();
3831 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3833 }
3834}
3835
3836impl fidl::endpoints::Responder for MlmeStartCaptureFramesResponder {
3837 type ControlHandle = MlmeControlHandle;
3838
3839 fn control_handle(&self) -> &MlmeControlHandle {
3840 &self.control_handle
3841 }
3842
3843 fn drop_without_shutdown(mut self) {
3844 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3846 std::mem::forget(self);
3848 }
3849}
3850
3851impl MlmeStartCaptureFramesResponder {
3852 pub fn send(self, mut resp: &StartCaptureFramesResponse) -> Result<(), fidl::Error> {
3856 let _result = self.send_raw(resp);
3857 if _result.is_err() {
3858 self.control_handle.shutdown();
3859 }
3860 self.drop_without_shutdown();
3861 _result
3862 }
3863
3864 pub fn send_no_shutdown_on_err(
3866 self,
3867 mut resp: &StartCaptureFramesResponse,
3868 ) -> Result<(), fidl::Error> {
3869 let _result = self.send_raw(resp);
3870 self.drop_without_shutdown();
3871 _result
3872 }
3873
3874 fn send_raw(&self, mut resp: &StartCaptureFramesResponse) -> Result<(), fidl::Error> {
3875 self.control_handle.inner.send::<MlmeStartCaptureFramesResponse>(
3876 (resp,),
3877 self.tx_id,
3878 0x23b369ed5749ee69,
3879 fidl::encoding::DynamicFlags::empty(),
3880 )
3881 }
3882}
3883
3884mod internal {
3885 use super::*;
3886
3887 impl fidl::encoding::ResourceTypeMarker for ConnectorConnectRequest {
3888 type Borrowed<'a> = &'a mut Self;
3889 fn take_or_borrow<'a>(
3890 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
3891 ) -> Self::Borrowed<'a> {
3892 value
3893 }
3894 }
3895
3896 unsafe impl fidl::encoding::TypeMarker for ConnectorConnectRequest {
3897 type Owned = Self;
3898
3899 #[inline(always)]
3900 fn inline_align(_context: fidl::encoding::Context) -> usize {
3901 4
3902 }
3903
3904 #[inline(always)]
3905 fn inline_size(_context: fidl::encoding::Context) -> usize {
3906 4
3907 }
3908 }
3909
3910 unsafe impl
3911 fidl::encoding::Encode<
3912 ConnectorConnectRequest,
3913 fidl::encoding::DefaultFuchsiaResourceDialect,
3914 > for &mut ConnectorConnectRequest
3915 {
3916 #[inline]
3917 unsafe fn encode(
3918 self,
3919 encoder: &mut fidl::encoding::Encoder<
3920 '_,
3921 fidl::encoding::DefaultFuchsiaResourceDialect,
3922 >,
3923 offset: usize,
3924 _depth: fidl::encoding::Depth,
3925 ) -> fidl::Result<()> {
3926 encoder.debug_check_bounds::<ConnectorConnectRequest>(offset);
3927 fidl::encoding::Encode::<ConnectorConnectRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
3929 (
3930 <fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.request),
3931 ),
3932 encoder, offset, _depth
3933 )
3934 }
3935 }
3936 unsafe impl<
3937 T0: fidl::encoding::Encode<
3938 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
3939 fidl::encoding::DefaultFuchsiaResourceDialect,
3940 >,
3941 >
3942 fidl::encoding::Encode<
3943 ConnectorConnectRequest,
3944 fidl::encoding::DefaultFuchsiaResourceDialect,
3945 > for (T0,)
3946 {
3947 #[inline]
3948 unsafe fn encode(
3949 self,
3950 encoder: &mut fidl::encoding::Encoder<
3951 '_,
3952 fidl::encoding::DefaultFuchsiaResourceDialect,
3953 >,
3954 offset: usize,
3955 depth: fidl::encoding::Depth,
3956 ) -> fidl::Result<()> {
3957 encoder.debug_check_bounds::<ConnectorConnectRequest>(offset);
3958 self.0.encode(encoder, offset + 0, depth)?;
3962 Ok(())
3963 }
3964 }
3965
3966 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
3967 for ConnectorConnectRequest
3968 {
3969 #[inline(always)]
3970 fn new_empty() -> Self {
3971 Self {
3972 request: fidl::new_empty!(
3973 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
3974 fidl::encoding::DefaultFuchsiaResourceDialect
3975 ),
3976 }
3977 }
3978
3979 #[inline]
3980 unsafe fn decode(
3981 &mut self,
3982 decoder: &mut fidl::encoding::Decoder<
3983 '_,
3984 fidl::encoding::DefaultFuchsiaResourceDialect,
3985 >,
3986 offset: usize,
3987 _depth: fidl::encoding::Depth,
3988 ) -> fidl::Result<()> {
3989 decoder.debug_check_bounds::<Self>(offset);
3990 fidl::decode!(
3992 fidl::encoding::Endpoint<fidl::endpoints::ServerEnd<MlmeMarker>>,
3993 fidl::encoding::DefaultFuchsiaResourceDialect,
3994 &mut self.request,
3995 decoder,
3996 offset + 0,
3997 _depth
3998 )?;
3999 Ok(())
4000 }
4001 }
4002}