Log bluetooth snoop packets and provide them to clients.
ClientIdrepresents the unique identifier for a client that has connected to the bt-snoop service.
Generates 64-bit ids in increasing order with wrap around behavior at
u64::MAXIds will be unique, as long as there is not a client that lives longer than the next 2^63-1 clients.
Root directory of all HCI devices
Handle a client request to dump the packet log, subscribe to future events or do both. Returns an error if the client channel does not accept a response that it requested.
Handle an event on the virtual filesystem in the HCI device directory. This should log or internally handle most errors that come from the stream of filesystem watch events. Only errors in the
Watcheritself result in returning an Error to the caller.
Handle a possible incoming packet. Returns an error if the snoop channel is closed and cannot be reopened.
Initializes syslog with tags and verbosity
Parse program arguments, call the main loop, and log any unrecoverable errors.
Create a lossy
Stringclone of a
Register a new client.
Setup the main loop of execution in a Task and run it.
A request is a tuple of the client id, the optional next request, and the rest of the stream.
Streamthat holds a collection of client request streams and will return the item from the next ready stream.
Streamthat holds a collection of snooper streams and will return the item from the next ready stream.
DeviceIdrepresents the name of a host device within the HCI_DEVICE_CLASS_PATH.