diff --git a/.github/workflows/test-only.yml b/.github/workflows/test-only.yml index f6d5a872..7fdb5128 100644 --- a/.github/workflows/test-only.yml +++ b/.github/workflows/test-only.yml @@ -68,6 +68,9 @@ jobs: # Should return 0 (no error) when grep finds it curl -s http://localhost:5556 |grep -q checkbox-uuid curl -s http://localhost:5556/rss|grep -q rss-specification + # and IPv6 + curl -s -g -6 "http://[::1]:5556"|grep -q checkbox-uuid + curl -s -g -6 "http://[::1]:5556/rss"|grep -q rss-specification #export WEBDRIVER_URL=http://localhost:4444/wd/hub #pytest tests/fetchers/test_content.py diff --git a/changedetectionio/changedetection.py b/changedetectionio/changedetection.py index 9d508a4a..4ed88f4a 100755 --- a/changedetectionio/changedetection.py +++ b/changedetectionio/changedetection.py @@ -9,6 +9,7 @@ import getopt import os import signal import sys +import socket from . import store, changedetection_app, content_fetcher from . import __version__ @@ -126,11 +127,11 @@ def main(): if ssl_mode: # @todo finalise SSL config, but this should get you in the right direction if you need it. - eventlet.wsgi.server(eventlet.wrap_ssl(eventlet.listen((host, port)), + eventlet.wsgi.server(eventlet.wrap_ssl(eventlet.listen((host, port), socket.AF_INET6), certfile='cert.pem', keyfile='privkey.pem', server_side=True), app) else: - eventlet.wsgi.server(eventlet.listen((host, int(port))), app) + eventlet.wsgi.server(eventlet.listen((host, int(port)), socket.AF_INET6), app)