Skip to content

Plugin is broken on Python 3.12 #50

@AaronAtDuo

Description

@AaronAtDuo

Description

The plugin does not appear to work with Python 3.12, instead it errors out before 2FA can occur.
The error seems to be with the six.moves module not being importable.

Expected Behavior

Plugin should perform Duo 2FA

Actual Behavior

Plugin errors out in Python 3.12 with

Traceback (most recent call last):
  File "/opt/duo/duo_openvpn.py", line 21, in <module>
    from six.moves import http_client
ModuleNotFoundError: No module named 'six.moves'

Steps to Reproduce

  1. Install the plugin as documented on a system using Python 3.12 (such as Ubuntu 24)
  2. Attempt to invoke the plugin via authentication
  3. No 2FA occurs and see the above error in system logging

Workarounds

Downgrade Python

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions