Pol Henarejos
9ca3647695
Do not include OTP FIDO in the CCID interface if not available.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-20 14:34:46 +01:00
Pol Henarejos
a9ac2779b7
Clean SRAM on reset to BOOTSEL to avoid memory dumps.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-18 18:53:54 +01:00
Pol Henarejos
8aad7bdef9
Fix build for openssl backend.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-09 11:02:31 +01:00
Pol Henarejos
e5079e510f
Remove redundant declaration.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-08 21:49:00 +01:00
Pol Henarejos
8e6c6c1fcc
Apply strict build.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-03-08 19:27:23 +01:00
Pol Henarejos
6c7b254183
Add openssl backend.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-25 23:30:54 +01:00
Pol Henarejos
1be3691a95
Increase buffer size for non-pico.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-25 19:33:28 +01:00
Pol Henarejos
5dd2f7fa73
Optimitzations to reduce number of interruptions.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-02-19 15:47:13 +01:00
Pol Henarejos
474e8b8b46
Fix crash when only CCID is enabled
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-28 00:53:34 +01:00
Pol Henarejos
668b1ac1dd
Fix emulation build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-26 01:27:07 +01:00
Pol Henarejos
20f2b3b74b
Fix interface strings when are not all enabled.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-26 01:19:56 +01:00
Pol Henarejos
50488cc890
Add sanity check in case too large packets are sent.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-26 01:19:31 +01:00
Pol Henarejos
42267cb237
Use new descriptors allocated to picokeys.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2026-01-22 12:30:12 +01:00
Pol Henarejos
d0dea3d0c5
Fix MSOS/BOS descriptor.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-03 16:34:05 +01:00
Pol Henarejos
53d3a7ac91
Fix OTP button press in ESP32.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-12-02 14:38:07 +01:00
Pol Henarejos
e6c0227996
Fix VIDPID PHY Read.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-11-15 21:11:57 +01:00
Pol Henarejos
9b6d6f6736
Fix build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-28 09:36:41 +01:00
Pol Henarejos
8f907b25ba
Relicense project under the GNU Affero General Public License v3 (AGPLv3)
...
and add the Enterprise / Commercial licensing option.
Main changes:
- Replace GPLv3 headers with AGPLv3 headers in source files.
- Update LICENSE file to the full AGPLv3 text.
- Add ENTERPRISE.md describing the dual-licensing model:
* Community Edition: AGPLv3 (strong copyleft, including network use).
* Enterprise / Commercial Edition: proprietary license for production /
multi-user / OEM use without the obligation to disclose derivative code.
- Update README with a new "License and Commercial Use" section pointing to
ENTERPRISE.md and clarifying how companies can obtain a commercial license.
Why this change:
- AGPLv3 ensures that modified versions offered as a service or deployed
in production environments must provide corresponding source code.
- The Enterprise / Commercial edition provides organizations with an
alternative proprietary license that allows internal, large-scale, or OEM
use (bulk provisioning, policy enforcement, inventory / revocation,
custom attestation, signed builds) without AGPL disclosure obligations.
This commit formally marks the first release that is dual-licensed:
AGPLv3 for the Community Edition and a proprietary commercial license
for Enterprise customers.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-26 20:06:16 +01:00
Pol Henarejos
233e6594c6
Add casts to fix warnings.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-10-12 18:52:07 +02:00
Pol Henarejos
9b294b9685
Fix build
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-30 17:25:55 +02:00
Pol Henarejos
d63ed56e0e
Fix phy_data idVendor/idProduct when not set.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-28 20:28:28 +02:00
Pol Henarejos
afe2b28fab
Merge remote-tracking branch 'origin/main'
2025-09-24 01:12:07 +02:00
Pol Henarejos
838f342877
Fix HID processing only for CTAP_HID.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-24 01:11:45 +02:00
Pol Henarejos
1a1d03ab2f
Add compatibility for non-pico boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-24 01:11:19 +02:00
Pol Henarejos
70c0c1bf81
Fix conditional build for non-pico platforms.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-23 16:59:59 +02:00
Pol Henarejos
cff3f8f677
Fix interface conditional builds.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-23 16:56:34 +02:00
Pol Henarejos
0b49fe4e1b
Fix build for non-pico boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-22 23:52:47 +02:00
Pol Henarejos
4edc506759
Fix build for non-pico boards.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-22 23:35:46 +02:00
Pol Henarejos
202d32d13d
Fix descriptor description when there are disabled interfaces.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-09-02 01:20:07 +02:00
Pol Henarejos
5984d1f72d
NK compatibility improvements.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-08-25 01:33:46 +02:00
Pol Henarejos
a324477a8a
Fix interface descriptor when HID is disabled.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-05-02 18:28:38 +02:00
Pol Henarejos
3990e7643a
Fix EPNUM counting for ESP32. It fixes the problem of not sending KB.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-04-06 18:31:01 +02:00
Pol Henarejos
a75fd6b815
CTAP_RESP should be 0ed before sending.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-30 18:12:06 +02:00
Pol Henarejos
5f79a8c8ed
Fix ESP32 dynamic USB interfaces.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-24 09:22:25 +01:00
Pol Henarejos
a08abaed0f
Enable each USB interface independently depending on PHY parameters.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-22 23:25:31 +01:00
Pol Henarejos
f1b1382300
USB descriptors are now created dynamically.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-03-21 15:30:50 +01:00
Pol Henarejos
f06cb3a96d
Fix multiple interfaces in older PCSC versions.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-02-12 13:25:23 +01:00
Pol Henarejos
350f0da763
Fix USB keyboard descriptor.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-29 13:21:17 +01:00
Pol Henarejos
a081a2bde6
LibCCID allows propietary class for CCID (ALLOW_PROPIETARY_CLASS in LibCCID). Then both interfaces are loaded but since both belong to same device, only the last is opened.
...
We change maxSlot value even it breaks the ICCD spec to cause a timeout in LibCCID and deactivate WebCCID interface.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2025-01-17 20:56:03 +01:00
Pol Henarejos
9e2b6ac4b6
Remove comment
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-24 02:05:50 +01:00
Pol Henarejos
046bac42e3
Update CCID descriptor to reflect max USB transport size.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-24 02:05:07 +01:00
Pol Henarejos
c59fb91540
Set stack size depending on the number of enabled interfaces.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-24 01:42:33 +01:00
Pol Henarejos
8e68e6cae9
Use BE/LE functions for packing uint16.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-23 21:00:38 +01:00
Pol Henarejos
585a6d77e3
Use USB product field in the descriptor.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-17 16:27:11 +01:00
Pol Henarejos
86999d8cdd
Do not debug after write the buffer.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-16 18:42:42 +01:00
Pol Henarejos
1431f91281
In pure U2F mode, no keepalive is sent by authenticator. Instead, client sends commands to know the status.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-11 22:36:24 +01:00
Pol Henarejos
f58bcaecf1
In pure U2F mode, no keepalive is sent by authenticator. Instead, client sends commands to know the status.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-11 22:36:09 +01:00
Pol Henarejos
cb4e2ba0eb
Fixes for ESP32-S3:
...
- It only supports 4 IN endpoints, so 1 EP must be removed (INT of CCID).
- It only supports 8 strings max.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-11 12:14:31 +01:00
Pol Henarejos
e9875b358c
Fix cancel command.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-03 08:35:20 +01:00
Pol Henarejos
fcae98eecc
Add support for tinyusb 0.17 in ESP32.
...
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es >
2024-12-01 01:23:56 +01:00