Signal if there is an OpenSSL major version mismatch

Offen
#99,951 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
python
Bereich
security

Rechercherichtung

Prüfe zuerst den verknüpften PR gh-100641 und verfolge anschließend, wie der eingebettete Interpreter seine OpenSSL-Version gegenüber der beim Build von Python verwendeten Version offenlegt oder prüft. Die Aufgabe ist abgeschlossen, wenn bei einer Abweichung der Hauptversion eine klare Warnung oder ein fataler Fehler ausgegeben wird, sodass stille Kompatibilitätsfehler vermieden werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

extension-modules topic-SSL type-feature

Feature or enhancement

Implement some kind of obvious warning or even fatal error when the runtime OpenSSL major version does not match the one Python was compiled against.

Pitch

This is especially valid when using the embedded interpreter. I am developing a Node.js/Python compatiblity layer (https://github.com/mmomtchev/pymport) and Node.js exports the OpenSSL symbols it was built with. Python on Ubuntu 22.04 was compiled with libssl3 and it can't be used in any software compiled with libssl1. There is no magic solution to this problem, but printing a warning or even quitting with a fatal error would avoid wasting many hours debugging very hard to find crashes.

As we are currently right in the middle of the painful switch from OpenSSL 1 to OpenSSL 3, I am sure many will be thankful for this feature.

Previous discussion

This is a two-liner

Linked PRs
  • gh-100641
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
36k
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
558

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus python/cpython

Alle Issues in python/cpython

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.