mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 09:02:15 -06:00
handle bind error
This commit is contained in:
parent
465cc8882f
commit
b59deb8d8d
|
@ -24,12 +24,8 @@ class TcpSrv(object):
|
||||||
self.log_mutex = threading.Lock()
|
self.log_mutex = threading.Lock()
|
||||||
self.next_day = 0
|
self.next_day = 0
|
||||||
|
|
||||||
def run(self):
|
|
||||||
bind_ip = self.args.i
|
|
||||||
bind_port = self.args.p
|
|
||||||
|
|
||||||
ip = "127.0.0.1"
|
ip = "127.0.0.1"
|
||||||
if bind_ip != ip:
|
if self.args.i != ip:
|
||||||
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||||
try:
|
try:
|
||||||
s.connect(("10.255.255.255", 1))
|
s.connect(("10.255.255.255", 1))
|
||||||
|
@ -38,14 +34,26 @@ class TcpSrv(object):
|
||||||
pass
|
pass
|
||||||
s.close()
|
s.close()
|
||||||
|
|
||||||
self.log("root", "available @ http://{0}:{1}/".format(ip, bind_port))
|
self.log("root", "available @ http://{0}:{1}/".format(ip, self.args.p))
|
||||||
|
|
||||||
srv = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
self.srv = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
self.srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
||||||
srv.bind((bind_ip, bind_port))
|
try:
|
||||||
srv.listen(self.args.nc)
|
self.srv.bind((self.args.i, self.args.p))
|
||||||
|
except OSError as ex:
|
||||||
|
if ex.errno != 98:
|
||||||
|
raise
|
||||||
|
|
||||||
self.log("root", "listening @ {0}:{1}".format(bind_ip, bind_port))
|
raise Exception(
|
||||||
|
"\033[1;31mport {} is busy on interface {}\033[0m".format(
|
||||||
|
self.args.p, self.args.i
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
self.srv.listen(self.args.nc)
|
||||||
|
|
||||||
|
self.log("root", "listening @ {0}:{1}".format(self.args.i, self.args.p))
|
||||||
|
|
||||||
self.httpsrv = self.create_server()
|
self.httpsrv = self.create_server()
|
||||||
while True:
|
while True:
|
||||||
|
@ -53,7 +61,7 @@ class TcpSrv(object):
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
sck, addr = srv.accept()
|
sck, addr = self.srv.accept()
|
||||||
self.httpsrv.accept(sck, addr)
|
self.httpsrv.accept(sck, addr)
|
||||||
|
|
||||||
def shutdown(self):
|
def shutdown(self):
|
||||||
|
|
Loading…
Reference in a new issue