61 Commits

Author SHA1 Message Date
Robin Krahl 912d009fe4 Update trussed 2026-06-09 20:39:18 +02:00
Robin Krahl 47ad52d743 Release v0.1.0-rc.1 2026-06-09 10:54:22 +02:00
Robin Krahl 93a6163af1 ci: Add publishing check 2026-06-09 10:50:51 +02:00
Robin Krahl ca193da359 Document all features on docs.rs 2026-06-09 10:48:47 +02:00
Robin Krahl 560f40a44f Update to trussed v0.2.0-rc.1 2026-06-09 10:47:41 +02:00
Robin Krahl 017921df09 Update to trussed-core v0.2 2026-03-25 16:48:06 +01:00
Sosthène Guédon d0effc5485 Bump to heapless 0.9 2025-10-06 17:18:28 +02:00
Robin Krahl 504674453c Update to ctaphid-dispatch v0.3.0 and usbd-ctaphid v0.3.0 2025-03-25 22:39:58 +01:00
Robin Krahl 2a002fdbcb Update trussed to use safe Platform trait 2025-03-11 09:23:17 +01:00
Robin Krahl d0774abda2 Update trussed to the simplified Store trait 2025-03-07 12:24:47 +01:00
Robin Krahl a0e9b85580 Update trussed to remove clients-? features
This patch updates trussed to remove the need for the clients-? feature
and manage the endpoints in the runner instead.
2025-01-23 11:54:40 +01:00
Robin Krahl 4fe4e4e287 Use released dependencies 2025-01-10 14:43:39 +01:00
Robin Krahl 60c58eb806 Update dependencies 2025-01-08 10:12:00 +01:00
Robin Krahl 8d36e78e93 Update apdu-dispatch to v0.3.0 2024-10-21 15:12:35 +02:00
Robin Krahl 8d66d425f7 Add CI workflow
Fixes: https://github.com/trussed-dev/pc-usbip-runner/issues/3
2024-06-06 15:24:11 +02:00
Robin Krahl ea45e12638 Replace FIDO example with a dummy app
Maintaining a working setup for the FIDO and admin app is a lot of work
and is redundant to the usbip runner provided as part of the Nitrokey 3
firmware.  Therefore, this patch replaces the fido example with a much
simpler example that just sets up a dummy client responding to a vendor
command that requests random data.

This is sufficient for basic testing and getting started.  For more
advanced use cases, the Nitrokey 3 runner should be used.

Fixes: https://github.com/trussed-dev/pc-usbip-runner/issues/31
2024-06-06 15:04:20 +02:00
Robin Krahl 7aed9ff347 Update usbd-ccid 2024-06-06 13:25:06 +02:00
Robin Krahl 28cae73bc0 Remove ClientBuilder trait
Previously, we used our own ClientBuilder trait as a wrapper around
trussed’s own ClientBuilder struct so that Apps implementors don’t need
to pass around the service and syscall.  But this limits the way the
runner can access the service, and is incompatible with recent changes
to the Nitrokey 3 firmware runner:
        https://github.com/Nitrokey/nitrokey-3-firmware/pull/504

Therefore, this patch removes the ClientBuilder trait.  Apps
implementers directly receive the Service and Syscall and can use
trussed::client::ClientBuilder to construct the clients, like they would
normally.
2024-06-05 10:25:06 +02:00
Robin Krahl f962f80a2d Move Trussed processing to separate thread
Fixes: https://github.com/trussed-dev/pc-usbip-runner/issues/30
2024-05-28 14:41:04 +02:00
Robin Krahl 43655c47e1 Add timeouts for keepalive messages
Our initial implementation of CTAPHID and CCID keepalive messages was a
bit too simple by potentially sending keepalive messages every five
milliseconds.  This could overwhelm clients and, most importantly, spams
the log output.

This patch adds proper keepalive timeout handling, respecting the
timeout returned by the USB classes (currently 250 ms for CTAPHID and
1 s for CCID).  This is also closer to the behavior on hardware.
2023-07-27 16:21:57 +02:00
Robin Krahl d002d47f33 Add keepalive messages
This patch adds keepalive messages for ctaphid and ccid.  To send
correct ctaphid keepalive messages, runners need to call set_waiting
from their UI implementation.

Fixes: https://github.com/trussed-dev/pc-usbip-runner/issues/27
2023-07-12 15:50:34 +02:00
Sosthène Guédon e78883847f Adapt to interrupt changes 2023-06-20 18:01:50 +02:00
Sosthène Guédon 083fca7693 Use upstream PRs 2023-06-20 16:25:25 +02:00
Sosthène Guédon 0a939a8c5a Fix compilation 2023-06-20 16:25:25 +02:00
Sosthène Guédon ed63097d0b Use dependencies with interchange 0.3.0 support 2023-06-20 16:25:25 +02:00