diff --git a/sys/fido2/Kconfig b/sys/fido2/Kconfig index 1b94a5b221..bd2edac28b 100644 --- a/sys/fido2/Kconfig +++ b/sys/fido2/Kconfig @@ -4,4 +4,17 @@ # General Public License v2.1. See the file LICENSE in the top level # directory for more details. +menuconfig MODULE_FIDO2 + bool "FIDO2" + help + FIDO2 is an authentication standard that seeks to solve the password + problem by enabling passwordless authentication. FIDO2 consists of the + W3C Web Authentication specification (WebAuthn) and the Client to + Authenticator Protocol (CTAP). For more information visit + https://fidoalliance.org/fido2. + +if MODULE_FIDO2 + rsource "ctap/Kconfig" + +endif # MODULE_FIDO2 diff --git a/sys/fido2/ctap/Kconfig b/sys/fido2/ctap/Kconfig index ce5c673bff..d64921ec1e 100644 --- a/sys/fido2/ctap/Kconfig +++ b/sys/fido2/ctap/Kconfig @@ -4,13 +4,37 @@ # General Public License v2.1. See the file LICENSE in the top level # directory for more details. -menuconfig KCONFIG_USEMODULE_FIDO2_CTAP +menuconfig MODULE_FIDO2_CTAP bool "FIDO2 CTAP" - depends on USEMODULE_FIDO2_CTAP + depends on HAS_PERIPH_FLASHPAGE + depends on HAS_PERIPH_GPIO + depends on HAS_PERIPH_GPIO_IRQ + depends on MODULE_FIDO2 + depends on TEST_KCONFIG + select PACKAGE_TINYCBOR + select PACKAGE_MICRO-ECC + select PACKAGE_TINY-ASN1 + select MODULE_PERIPH_GPIO + select MODULE_PERIPH_GPIO_IRQ + select MODULE_EVENT + select MODULE_EVENT_TIMEOUT + select MODULE_ZTIMER + select MODULE_ZTIMER_MSEC + select MODULE_MTD + select MODULE_MTD_FLASHPAGE + select MODULE_MTD_WRITE_PAGE + select MODULE_RANDOM + select MODULE_CRYPTO_AES_256 + select MODULE_CIPHER_MODES + select MODULE_HASHES help - Configure a FIDO2 CTAP authenticator via KConfig. + Y to enable CTAP protocol support. The Client-to-Authenticator + Protocol (CTAP) is an application layer protocol for the communication + between an authenticator and a host. CTAP is part of the FIDO2 Project. + For more information visit https://fidoalliance.org/fido2. -if KCONFIG_USEMODULE_FIDO2_CTAP + +if MODULE_FIDO2_CTAP config FIDO2_CTAP_STACK_SIZE int "CTAP thread stack size" @@ -93,4 +117,4 @@ config FIDO2_CTAP_FLASH_START_PAGE rsource "transport/Kconfig" -endif # KCONFIG_USEMODULE_FIDO2_CTAP +endif # MODULE_FIDO2_CTAP diff --git a/sys/fido2/ctap/transport/Kconfig b/sys/fido2/ctap/transport/Kconfig index 5ec3a7e824..b9525f2cb6 100644 --- a/sys/fido2/ctap/transport/Kconfig +++ b/sys/fido2/ctap/transport/Kconfig @@ -4,4 +4,9 @@ # General Public License v2.1. See the file LICENSE in the top level # directory for more details. +menuconfig MODULE_FIDO2_CTAP_TRANSPORT + bool "FIDO2 CTAP transport" + depends on MODULE_FIDO2_CTAP + depends on TEST_KCONFIG + rsource "hid/Kconfig" diff --git a/sys/fido2/ctap/transport/hid/Kconfig b/sys/fido2/ctap/transport/hid/Kconfig index b989225a11..20af9313c3 100644 --- a/sys/fido2/ctap/transport/hid/Kconfig +++ b/sys/fido2/ctap/transport/hid/Kconfig @@ -4,13 +4,16 @@ # General Public License v2.1. See the file LICENSE in the top level # directory for more details. -menuconfig KCONFIG_USEMODULE_FIDO2_CTAP_TRANSPORT_HID - bool "FIDO2 CTAP TRANSPORT HID" - depends on USEMODULE_FIDO2_CTAP_TRANSPORT_HID +menuconfig MODULE_FIDO2_CTAP_TRANSPORT_HID + bool "FIDO2 CTAP transport HID" + depends on MODULE_FIDO2_CTAP_TRANSPORT + depends on TEST_KCONFIG + select MODULE_ISRPIPE + select MODULE_USBUS_HID help Configure a FIDO2 CTAP authenticator via KConfig. -if KCONFIG_USEMODULE_FIDO2_CTAP_TRANSPORT_HID +if MODULE_FIDO2_CTAP_TRANSPORT_HID config FIDO2_CTAP_TRANSPORT_HID_TRANSACTION_TIMEOUT int "CTAPHID Transaction timeout in milliseconds" @@ -20,4 +23,4 @@ config FIDO2_CTAP_TRANSPORT_HID_TRANSACTION_TIMEOUT of time to prevent the authenticator from being locked by a stalling application. -endif # KCONFIG_USEMODULE_FIDO2_CTAP_TRANSPORT_HID +endif # MODULE_FIDO2_CTAP_TRANSPORT_HID diff --git a/tests/sys_fido2_ctap/app.config.test b/tests/sys_fido2_ctap/app.config.test new file mode 100644 index 0000000000..04d26692af --- /dev/null +++ b/tests/sys_fido2_ctap/app.config.test @@ -0,0 +1,6 @@ +CONFIG_MODULE_AUTO_INIT_USBUS=n +CONFIG_MODULE_USBUS=y +CONFIG_MODULE_FIDO2=y +CONFIG_MODULE_FIDO2_CTAP=y +CONFIG_MODULE_FIDO2_CTAP_TRANSPORT=y +CONFIG_MODULE_FIDO2_CTAP_TRANSPORT_HID=y