This repository has been archived by the owner on Sep 13, 2024. It is now read-only.
Allow clients to subscribe to setReport calls on devices #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements the
setReport()
method on the foohid device. This gets called when a report needs to be sent back to the device by whatever client is using it. To get these reports back into userland, this PR implements an external userclient method for subscribing tosetReport
calls for a given device. The subscribe method registers a callback function that gets called from the userclient when a device receives asetReport()
call. This approach allows the userland HID implementation to receivesetReport()
calls without having to constantly poll the userclient.I'm copying this approach from the SoftU2F driver I wrote. I'm hoping to include this change in foohid because Apple hasn't responded to my request for a kernel extension signing certificate.
I added a simple U2F example to this repository to demonstrate subscribing to
setReport()
calls.Fixes #7