Skip to content

OpenSSL 3.0 uses different version scheme #90272

Closed

Description

@penguinolog
BPO 46114
Nosy @tiran, @stratakis, @hroncok, @miss-islington, @penguinolog
PRs
  • bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170) #30170
  • [3.10] bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170) #30172
  • [3.9] bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170) (GH-30173) #30173
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2021-12-17.10:51:19.891>
    labels = ['expert-SSL', 'type-bug', '3.9', '3.10', '3.11', 'tests']
    title = 'OpenSSL 3.0 uses different version scheme'
    updated_at = <Date 2022-03-22.23:20:19.195>
    user = 'https://github.com/penguinolog'

    bugs.python.org fields:

    activity = <Date 2022-03-22.23:20:19.195>
    actor = 'cstratak'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Tests', 'SSL']
    creation = <Date 2021-12-17.10:51:19.891>
    creator = 'penguinolog'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 46114
    keywords = ['patch']
    message_count = 12.0
    messages = ['408770', '408773', '408776', '408779', '408788', '408792', '408795', '415499', '415502', '415504', '415517', '415839']
    nosy_count = 5.0
    nosy_names = ['christian.heimes', 'cstratak', 'hroncok', 'miss-islington', 'penguinolog']
    pr_nums = ['30170', '30172', '30173']
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue46114'
    versions = ['Python 3.9', 'Python 3.10', 'Python 3.11']

    Activity

    1. penguinolog commented on Dec 17, 2021

      penguinologmannequin
      MannequinAuthor

      Documentation: https://www.openssl.org/docs/manmaster/man3/OpenSSL_version_num.html

      Python build fail with OpenSSL 3.0.1
      (looks like OpenSSL broken deprecated API)

    2. penguinolog commented on Dec 17, 2021

      penguinologmannequin
      MannequinAuthor

      Error example:
      test_ssl: testing with 'OpenSSL 3.0.1 14 Dec 2021' (3, 0, 0, 1, 0)
      ...
      AssertionError: False is not true : ('OpenSSL 3.0.1 14 Dec 2021', (3, 0, 0, 1, 0), '0x30000010')

    3. tiran commented on Dec 17, 2021

      @tiran
      Member

      The test case does not work for OpenSSL >= 3.0.1. The test assumes that the version starts with M.NN.FF, but OpenSSL 3 uses M.NN.PP. The FF (fix) part is always 00. The issue didn't show up before because fix and patch level were 0 for 3.0.0 alphas and betas.

    4. 8 remaining items

    5. tiran commented on Dec 17, 2021

      @tiran
      Member

      FYI, OpenSSL_version_num() is not deprecated and Python does not fail to build with OpenSSL 3.0.1. One test case is failing because OpenSSL 3 changed the version scheme slightly.

    6. changed the title [-]OpenSSL deprecated OpenSSL_version_num() since version 3.0.0[/-] [+]OpenSSL 3.0 uses different version scheme[/+] on Dec 17, 2021
    7. changed the title [-]OpenSSL deprecated OpenSSL_version_num() since version 3.0.0[/-] [+]OpenSSL 3.0 uses different version scheme[/+] on Dec 17, 2021
    8. tiran commented on Dec 17, 2021

      @tiran
      Member

      New changeset 2985fea by Christian Heimes in branch 'main':
      bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170)
      2985fea

    9. miss-islington commented on Dec 17, 2021

      @miss-islington
      Contributor

      New changeset 251d2ea by Miss Islington (bot) in branch '3.10':
      bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170)
      251d2ea

    10. tiran commented on Dec 17, 2021

      @tiran
      Member

      New changeset a9b3edb by Christian Heimes in branch '3.9':
      [3.9] bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170) (GH-30173)
      a9b3edb

    11. hroncok commented on Mar 18, 2022

      hroncokmannequin
      Mannequin

      3.8 is security only, so I suppose there is no chance of getting the test fixed as well?

    12. tiran commented on Mar 18, 2022

      @tiran
      Member

      Correct, I didn't backport this fix and several other OpenSSL 3.0 related fixes to Python 3.8 because 3.8 is in security-only mode.

    13. hroncok commented on Mar 18, 2022

      hroncokmannequin
      Mannequin

      Ack, will do it downstream-only.

    14. stratakis commented on Mar 18, 2022

      stratakismannequin
      Mannequin

      3.8 builds are still running on the buildbots so not fixing 3.8 will cause them to fail.

    15. stratakis commented on Mar 22, 2022

      stratakismannequin
      Mannequin
    16. transferred this issue fromon Apr 10, 2022
    17. vstinner commented on May 19, 2022

      @vstinner
      Member

      I created a backport to 3.8: #92954

    18. kumaraditya303 commented on May 22, 2022

      @kumaraditya303
      Contributor

      Fixed by #30170

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

    Metadata

    Metadata

    Assignees

    No one assigned

      Labels

      3.10 (EOL)end of life3.11only security fixes3.9 (EOL)end of lifetestsTests in the Lib/test dirtopic-SSLtype-bugAn unexpected behavior, bug, or error

      Projects

      No projects

        Milestone

        No milestone

        Relationships

        None yet

        Development

        No branches or pull requests

        Issue actions