pub enum RollingPacketCaptureRequest {
Detach {
name: String,
control_handle: RollingPacketCaptureControlHandle,
},
StopAndDownload {
channel: ServerEnd<FileMarker>,
control_handle: RollingPacketCaptureControlHandle,
},
Discard {
control_handle: RollingPacketCaptureControlHandle,
},
}Expand description
Rolling packet capture.
Once a rolling packet capture has stopped either because [StopAndDownload]
has been called or the capture stopped for some other reason and the server
has emitted [OnEnded], and there is no client connected to this protocol
for some time, the server discards the contents of the packet capture.
This timeout resets every time a client reconnects to this protocol, and
exists to provide resilience against disconnections.
Variants§
Detach
Detaches the lifetime of this protocol from the underlying packet capture.
After calling Detach, closing the client end no longer results in
the packet capture from being terminated. The passed string names this
packet capture and can be used once to reconnect via
[PacketCaptureProvider.ReconnectRolling]. This gives the client the
option of ensuring the packet capture is resilient against
disconnections.
Detach can be called multiple times, but only the name passed in the
most recent call is valid and previously passed names are invalidated.
StopAndDownload
Stop and make this rolling packet capture downloadable.
It is implicit by calling this method that the packet capture is stopped
due to user request, so the [RollingPacketCapture.OnEnded] event is
not emitted.
This method can be called multiple times, including across disconnects: a client can call this method, disconnect, reconnect, and call this method again.
The server discards the contents of the packet capture once this method has been called and there is no client connected to this protocol for some time.
Discard
Discard this rolling packet capture.
Clients should call this method when they have successfully downloaded the packet capture, or if they no longer need it for any reason.
When this method is called, the server closes all readers initialized
via [StopAndDownload] and all future interactions on this protocol
are invalid.
Fields
control_handle: RollingPacketCaptureControlHandleImplementations§
Source§impl RollingPacketCaptureRequest
impl RollingPacketCaptureRequest
pub fn into_detach(self) -> Option<(String, RollingPacketCaptureControlHandle)>
pub fn into_stop_and_download( self, ) -> Option<(ServerEnd<FileMarker>, RollingPacketCaptureControlHandle)>
pub fn into_discard(self) -> Option<RollingPacketCaptureControlHandle>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL