Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upstream changes broke list_devices #378

Closed
blade2005 opened this issue Jan 21, 2021 · 2 comments
Closed

Upstream changes broke list_devices #378

blade2005 opened this issue Jan 21, 2021 · 2 comments

Comments

@blade2005
Copy link

blade2005 commented Jan 21, 2021

for dev in CtapHidDevice.list_devices(descriptor_filter):

https://github.com/Yubico/python-fido2/blame/63c3d8e360104ccb669da2100ee24f51c3663d9b/fido2/hid/__init__.py#L245-L248

Upstream no longer expects an argument to be passed. This causes brokenness.

  File "/usr/bin/ykman", line 11, in <module>
    load_entry_point('yubikey-manager==3.1.1', 'console_scripts', 'ykman')()
  File "/usr/lib/python3/dist-packages/ykman/cli/__main__.py", line 273, in main
    cli(obj={})
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/cdavis/.local/lib/python3.8/site-packages/click/decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/usr/lib/python3/dist-packages/ykman/cli/mode.py", line 113, in mode
    dev = ctx.obj['dev']
  File "/usr/lib/python3/dist-packages/ykman/cli/util.py", line 127, in __getitem__
    self.resolve()
  File "/usr/lib/python3/dist-packages/ykman/cli/util.py", line 124, in resolve
    self._objects[k] = f()
  File "/usr/lib/python3/dist-packages/ykman/cli/__main__.py", line 194, in resolve_device
    dev = _run_cmd_for_single(ctx, subcmd.name, transports, reader)
  File "/usr/lib/python3/dist-packages/ykman/cli/__main__.py", line 132, in _run_cmd_for_single
    return descriptor.open_device(transports)
  File "/usr/lib/python3/dist-packages/ykman/descriptor.py", line 96, in open_device
    for drv in _list_drivers(transports):
  File "/usr/lib/python3/dist-packages/ykman/descriptor.py", line 164, in _list_drivers
    for dev in open_fido():
  File "/usr/lib/python3/dist-packages/ykman/driver_fido.py", line 97, in open_devices
    for dev in CtapHidDevice.list_devices(descriptor_filter):
TypeError: list_devices() takes 1 positional argument but 2 were given

for the command

$ ykman mode f
@dainnilsson
Copy link
Member

Confirmed. A hotfix will be released shortly. Downgrading to python-fido2 0.8.1 is a possible workaround for now.

@dainnilsson
Copy link
Member

Thanks for reporting this! yubikey-manager 3.1.2 has now been released as a fix to this (using python-fido2 0.8.1). A new version fully compatible with python-fido2 0.9 will be released at a later date.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants