Nitrokey / pynitrokey

Python client for Nitrokey devices
Apache License 2.0
93 stars 28 forks source link

Exception while listing credentials for Nitrokey 3 #355

Closed szszszsz closed 1 year ago

szszszsz commented 1 year ago

Exception occurs while listing credentials for Nitrokey 3. Details: https://support.nitrokey.com/t/unboundlocalerror-local-variable-client-token-referenced-before-assignment/4931

$ nitropy fido2 list-credentials
Command line tool to interact with Nitrokey devices 0.4.34
Please provide pin: 
Critical error:
An unhandled exception occurred
    Exception encountered: UnboundLocalError("local variable 'client_token' referenced before assignment")
robin-nitrokey commented 1 year ago
Traceback (most recent call last):
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/pynitrokey/cli/__init__.py", line 130, in main
    nitropy()
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/pynitrokey/cli/fido2.py", line 211, in list_credentials
    cred_manager = nk_client.cred_mgmt(serial, pin)
  File "/home/user/.local/pipx/venvs/pynitrokey/lib64/python3.9/site-packages/pynitrokey/fido2/client.py", line 362, in cred_mgmt
    return CredentialManagement(device.ctap2, client_pin.protocol, client_token)
UnboundLocalError: local variable 'client_token' referenced before assignment