Add variables to errno and socket
- to make sure they work cross platform without having to do complicated tests
This commit is contained in:
parent
b37a05fd0a
commit
d699a28e49
|
@ -22,6 +22,7 @@ depends.check_dependencies()
|
|||
import signal # Used to capture a Ctrl-C keypress so that Bitmessage can shutdown gracefully.
|
||||
# The next 3 are used for the API
|
||||
from singleinstance import singleinstance
|
||||
import errno
|
||||
import socket
|
||||
import ctypes
|
||||
from struct import pack
|
||||
|
@ -92,7 +93,16 @@ def connectToStream(streamNumber):
|
|||
a.setup(streamNumber, selfInitiatedConnections)
|
||||
a.start()
|
||||
|
||||
def _fixWinsock():
|
||||
def _fixSocket():
|
||||
if sys.platform.startswith('linux'):
|
||||
socket.SO_BINDTODEVICE = 25
|
||||
|
||||
if not sys.platform.startswith('win'):
|
||||
errno.WSAEWOULDBLOCK = errno.EWOULDBLOCK
|
||||
errno.WSAENETUNREACH = errno.ENETUNREACH
|
||||
errno.WSAECONNREFUSED = errno.ECONNREFUSED
|
||||
errno.WSAEHOSTUNREACH = errno.EHOSTUNREACH
|
||||
|
||||
if not sys.platform.startswith('win'):
|
||||
return
|
||||
|
||||
|
@ -177,7 +187,7 @@ if shared.useVeryEasyProofOfWorkForTesting:
|
|||
|
||||
class Main:
|
||||
def start(self, daemon=False):
|
||||
_fixWinsock()
|
||||
_fixSocket()
|
||||
|
||||
shared.daemon = daemon
|
||||
|
||||
|
|
Reference in New Issue
Block a user