On 2025-03-23 09:11, Ulli Horlacher <frams...@rus.uni-stuttgart.de> wrote:
> Ich hab das nun so probiert:
>
>     sock = socket.create_connection((server,port))
>     (...)
>     SSLContext = ssl.create_default_context()

Du willst es den Lesern Deines Codes auch künstlich schwer machen, oder?
Eine Variable so zu nennen wie eine Klasse der Library, die man gerade
verwendet, ist ziemlich verwirrend.

>     sock = SSLContext.wrap_socket(sock)
>
> Das ergibt leider die Fehlermeldung:
>
>   File "/local/home/framstag/python/./fexit.py", line 906, in http_connect
>     sock = SSLContext.wrap_socket(sock)
>   File "/usr/lib/python3.10/ssl.py", line 513, in wrap_socket
>     return self.sslsocket_class._create(
>   File "/usr/lib/python3.10/ssl.py", line 1028, in _create
>     raise ValueError("check_hostname requires server_hostname")
> ValueError: check_hostname requires server_hostname

Dann gib den Namen halt an. wrap_socket hat einen Parameter dafür:

https://docs.python.org/3/library/ssl.html#ssl.SSLContext.wrap_socket


> Dabei hattte ich doch den Server hostname angegeben bei Erzeugung von sock.

Ich glaube nicht, dass sich ein Socket merkt, welchen Hostnamen Du beim
connect angegeben hast. Nach dem DNS-Lookup braucht er den schließlich
nicht mehr.

#v+
>>> import socket
>>> s = socket.create_connection(("mail.hjp.at", 25))
>>> s
<socket.socket fd=3, family=2, type=1, proto=6, laddr=('212.17.106.130', 
54278), raddr=('212.17.106.138', 25)>
#v-

        hjp
_______________________________________________
python-de Mailingliste -- python-de@python.org
Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an 
python-de-le...@python.org
https://mail.python.org/mailman3/lists/python-de.python.org/
Mitgliedsadresse: arch...@mail-archive.com

Reply via email to