This repository has been archived by the owner on Dec 19, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix "make init" and "pip install" after upstream fido2 library change
- Loading branch information
Showing
3 changed files
with
116 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
From 02bb791f3c32c8f93a3f5bc4d256a5a6c77d7528 Mon Sep 17 00:00:00 2001 | ||
From: Kendrick Shaw <[email protected]> | ||
Date: Thu, 9 Jun 2022 23:16:43 +0000 | ||
Subject: [PATCH] Update to fido2 library 1.0 API | ||
|
||
The fido2 library has changed the names of the CTAP1 class to Ctap1 and | ||
the CTAP2 class to Ctap2; this commit updates the solo1-cli code to use | ||
the new names. | ||
--- | ||
solo/devices/base.py | 10 +++++----- | ||
solo/devices/solo_v1.py | 8 ++++---- | ||
solo/solotool.py | 4 ++-- | ||
3 files changed, 11 insertions(+), 11 deletions(-) | ||
|
||
diff --git a/solo/devices/base.py b/solo/devices/base.py | ||
index 2e030f4..6afe01a 100644 | ||
--- a/solo/devices/base.py | ||
+++ b/solo/devices/base.py | ||
@@ -3,7 +3,7 @@ | ||
from cryptography import x509 | ||
from cryptography.hazmat.backends import default_backend | ||
from fido2.attestation import Attestation | ||
-from fido2.ctap2 import CTAP2, CredentialManagement | ||
+from fido2.ctap2 import Ctap2, CredentialManagement | ||
from fido2.hid import CTAPHID | ||
from fido2.utils import hmac_sha256 | ||
from fido2.webauthn import PublicKeyCredentialCreationOptions | ||
@@ -76,7 +76,7 @@ def ping(self, data="pong"): | ||
def reset( | ||
self, | ||
): | ||
- CTAP2(self.get_current_hid_device()).reset() | ||
+ Ctap2(self.get_current_hid_device()).reset() | ||
|
||
def change_pin(self, old_pin, new_pin): | ||
client = self.get_current_fido_client() | ||
@@ -114,7 +114,7 @@ def make_credential(self, pin=None): | ||
def cred_mgmt(self, pin): | ||
client = self.get_current_fido_client() | ||
token = client.client_pin.get_pin_token(pin) | ||
- ctap2 = CTAP2(self.get_current_hid_device()) | ||
+ ctap2 = Ctap2(self.get_current_hid_device()) | ||
return CredentialManagement(ctap2, client.client_pin.protocol, token) | ||
|
||
def enter_solo_bootloader( | ||
@@ -137,11 +137,11 @@ def is_solo_bootloader( | ||
pass | ||
|
||
def program_kbd(self, cmd): | ||
- ctap2 = CTAP2(self.get_current_hid_device()) | ||
+ ctap2 = Ctap2(self.get_current_hid_device()) | ||
return ctap2.send_cbor(0x51, cmd) | ||
|
||
def sign_hash(self, credential_id, dgst, pin): | ||
- ctap2 = CTAP2(self.get_current_hid_device()) | ||
+ ctap2 = Ctap2(self.get_current_hid_device()) | ||
client = self.get_current_fido_client() | ||
if pin: | ||
pin_token = client.client_pin.get_pin_token(pin) | ||
diff --git a/solo/devices/solo_v1.py b/solo/devices/solo_v1.py | ||
index 0c4328f..fd64c22 100644 | ||
--- a/solo/devices/solo_v1.py | ||
+++ b/solo/devices/solo_v1.py | ||
@@ -8,8 +8,8 @@ | ||
|
||
from fido2.client import Fido2Client | ||
from fido2.ctap import CtapError | ||
-from fido2.ctap1 import CTAP1 | ||
-from fido2.ctap2 import CTAP2 | ||
+from fido2.ctap1 import Ctap1 | ||
+from fido2.ctap2 import Ctap2 | ||
from fido2.hid import CTAPHID, CtapHidDevice | ||
from intelhex import IntelHex | ||
|
||
@@ -64,9 +64,9 @@ def find_device(self, dev=None, solo_serial=None): | ||
dev = devices[0] | ||
self.dev = dev | ||
|
||
- self.ctap1 = CTAP1(dev) | ||
+ self.ctap1 = Ctap1(dev) | ||
try: | ||
- self.ctap2 = CTAP2(dev) | ||
+ self.ctap2 = Ctap2(dev) | ||
except CtapError: | ||
self.ctap2 = None | ||
|
||
diff --git a/solo/solotool.py b/solo/solotool.py | ||
index ca01454..9c4cddb 100644 | ||
--- a/solo/solotool.py | ||
+++ b/solo/solotool.py | ||
@@ -32,8 +32,8 @@ | ||
from fido2.attestation import Attestation | ||
from fido2.client import ClientError, Fido2Client | ||
from fido2.ctap import CtapError | ||
-from fido2.ctap1 import CTAP1, ApduError | ||
-from fido2.ctap2 import CTAP2 | ||
+from fido2.ctap1 import Ctap1, ApduError | ||
+from fido2.ctap2 import Ctap2 | ||
from fido2.hid import CTAPHID, CtapHidDevice | ||
from intelhex import IntelHex | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters