From 6a2c048a9d6df90a394bf7fb7d357b81e3d8e470 Mon Sep 17 00:00:00 2001 From: karfas Date: Sat, 27 Nov 2021 12:01:55 +0100 Subject: [PATCH] ESP32: Workaround for faulty getaddrinfo() with ".local" adresses. On the ESP32, socket.getaddrinfo() might return SOCK_DGRAM instead of SOCK_STREAM. As a HTTP request is always a TCP stream, we don't need to rely on the values returned by getaddrinfo. --- python-ecosys/urequests/urequests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-ecosys/urequests/urequests.py b/python-ecosys/urequests/urequests.py index 75a145702..76d404e59 100644 --- a/python-ecosys/urequests/urequests.py +++ b/python-ecosys/urequests/urequests.py @@ -55,7 +55,7 @@ def request(method, url, data=None, json=None, headers={}, stream=None): ai = usocket.getaddrinfo(host, port, 0, usocket.SOCK_STREAM) ai = ai[0] - s = usocket.socket(ai[0], ai[1], ai[2]) + s = usocket.socket(ai[0], usocket.SOCK_STREAM, ai[2]) try: s.connect(ai[-1]) if proto == "https:":