mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-08-23 17:47:31 +00:00
Revert "socket.getaddrinfo on win32: do our own dns resolution outside the lock"
This reverts commit fc6cb70c80
.
This commit is contained in:
parent
3d0e830734
commit
10f037c40c
1 changed files with 1 additions and 21 deletions
|
@ -31,12 +31,8 @@ from collections import defaultdict
|
||||||
import threading
|
import threading
|
||||||
import socket
|
import socket
|
||||||
import json
|
import json
|
||||||
import sys
|
|
||||||
|
|
||||||
import dns
|
|
||||||
import dns.resolver
|
|
||||||
import socks
|
import socks
|
||||||
|
|
||||||
from . import util
|
from . import util
|
||||||
from . import bitcoin
|
from . import bitcoin
|
||||||
from .bitcoin import COIN
|
from .bitcoin import COIN
|
||||||
|
@ -448,22 +444,6 @@ class Network(util.DaemonThread):
|
||||||
socket.getaddrinfo = lambda *args: [(socket.AF_INET, socket.SOCK_STREAM, 6, '', (args[0], args[1]))]
|
socket.getaddrinfo = lambda *args: [(socket.AF_INET, socket.SOCK_STREAM, 6, '', (args[0], args[1]))]
|
||||||
else:
|
else:
|
||||||
socket.socket = socket._socketobject
|
socket.socket = socket._socketobject
|
||||||
if sys.platform == 'win32':
|
|
||||||
# on Windows, socket.getaddrinfo takes a mutex, and might hold it for up to 10 seconds
|
|
||||||
# when dns-resolving. to speed it up drastically, we resolve dns ourselves, outside that lock
|
|
||||||
def fast_getaddrinfo(host, *args, **kwargs):
|
|
||||||
try:
|
|
||||||
if str(host) not in ('localhost', 'localhost.',):
|
|
||||||
answers = dns.resolver.query(host)
|
|
||||||
addr = str(answers[0])
|
|
||||||
else:
|
|
||||||
addr = host
|
|
||||||
except:
|
|
||||||
raise socket.gaierror(11001, 'getaddrinfo failed')
|
|
||||||
else:
|
|
||||||
return socket._getaddrinfo(addr, *args, **kwargs)
|
|
||||||
socket.getaddrinfo = fast_getaddrinfo
|
|
||||||
else:
|
|
||||||
socket.getaddrinfo = socket._getaddrinfo
|
socket.getaddrinfo = socket._getaddrinfo
|
||||||
|
|
||||||
@with_interface_lock
|
@with_interface_lock
|
||||||
|
|
Loading…
Add table
Reference in a new issue