Tornado requires two sockets to support IPv6
Tornado sets setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 1) to force IPv6 sockets to only be used for IPv6 connections. create a separate socket to allow for CouchPotato to be used over IPv6.
This commit is contained in:
@@ -244,11 +244,13 @@ def runCouchPotato(options, base_path, args, data_dir = None, log_dir = None, En
|
||||
|
||||
# Basic config
|
||||
host = Env.setting('host', default = '0.0.0.0')
|
||||
host6 = Env.setting('host6', default = '::')
|
||||
# app.debug = development
|
||||
config = {
|
||||
'use_reloader': reloader,
|
||||
'port': tryInt(Env.setting('port', default = 5050)),
|
||||
'host': host if host and len(host) > 0 else '0.0.0.0',
|
||||
'host6': host6 if host6 and len(host6) > 0 else '::',
|
||||
'ssl_cert': Env.setting('ssl_cert', default = None),
|
||||
'ssl_key': Env.setting('ssl_key', default = None),
|
||||
}
|
||||
@@ -331,6 +333,7 @@ def runCouchPotato(options, base_path, args, data_dir = None, log_dir = None, En
|
||||
while try_restart:
|
||||
try:
|
||||
server.listen(config['port'], config['host'])
|
||||
server.listen(config['port'], config['host6'])
|
||||
loop.start()
|
||||
server.close_all_connections()
|
||||
server.stop()
|
||||
|
||||
Reference in New Issue
Block a user