6c7df68c7c
* Initial support for using multiple SSL certificates. * Also list IP address subjectAltNames on log. * Use Python 3.7+ way of specifying TLSv1.2 as the minimum version. Linter fixes. * isort * Cleanup, store server name for later use. Add RSA ciphers. Log rejected SNIs. * Cleanup, linter. * Alter the order of initial log messages and handling. In particular, enable debug mode early so that debug messages during init can be shown. * Store server name (SNI) to conn_info. * Update test with new error message. * Refactor for readability. * Cleanup * Replace old expired test cert with new ones and a script for regenerating them as needed. * Refactor TLS tests to a separate file. * Add cryptography to dev deps for rebuilding TLS certs. * Minor adjustment to messages. * Tests added for new TLS code. * Find the correct log row before testing for message. The order was different on CI. * More log message order fixup. The tests do not account for the logo being printed first. * Another attempt at log message indexing fixup. * Major TLS refactoring. CertSelector now allows dicts and SSLContext within its list. Server names are stored even when no list is used. SSLContext.sanic now contains a dict with any setting passed and information extracted from cert. That information is available on request.conn_info.cert. Type annotations added. More tests incl. a handler for faking hostname in tests. * Remove a problematic logger test that apparently was not adding any coverage or value to anything. * Revert accidental commit of uvloop disable. * Typing fixes / refactoring. * Additional test for cert selection. Certs recreated without DNS:localhost on sanic.example cert. * Add tests for single certificate path shorthand and SNI information. * Move TLS dict processing to CertSimple, make the names field optional and use names from the cert if absent. * Sanic CLI options --tls and --tls-strict-host to use the new features. * SSL argument typing updated * Use ValueError for internal message passing to avoid CertificateError's odd message formatting. * Linter * Test CLI TLS options. * Maybe the right codeclimate option now... * Improved TLS argument help, removed support for combining --cert/--key with --tls. * Removed support for strict checking without any certs, black forced fscked up formatting. * Update CLI tests for stricter TLS options. Co-authored-by: L. Karkkainen <tronic@users.noreply.github.com> Co-authored-by: Adam Hopkins <admhpkns@gmail.com> |
||
---|---|---|
.. | ||
benchmark | ||
certs | ||
fake | ||
performance | ||
static | ||
conftest.py | ||
skip_test_custom_protocol.py | ||
test_app.py | ||
test_asgi.py | ||
test_bad_request.py | ||
test_base.py | ||
test_blueprint_copy.py | ||
test_blueprint_group.py | ||
test_blueprints.py | ||
test_cli.py | ||
test_config.py | ||
test_constants.py | ||
test_cookies.py | ||
test_create_task.py | ||
test_custom_request.py | ||
test_dynamic_routes.py | ||
test_errorpages.py | ||
test_exceptions_handler.py | ||
test_exceptions.py | ||
test_graceful_shutdown.py | ||
test_handler_annotations.py | ||
test_headers.py | ||
test_helpers.py | ||
test_http.py | ||
test_json_encoding.py | ||
test_keep_alive_timeout.py | ||
test_logging.py | ||
test_logo.py | ||
test_middleware.py | ||
test_multiprocessing.py | ||
test_named_routes.py | ||
test_payload_too_large.py | ||
test_pipelining.py | ||
test_redirect.py | ||
test_reloader.py | ||
test_request_cancel.py | ||
test_request_data.py | ||
test_request_stream.py | ||
test_request_timeout.py | ||
test_request.py | ||
test_requests.py | ||
test_response_timeout.py | ||
test_response.py | ||
test_routes.py | ||
test_server_events.py | ||
test_signal_handlers.py | ||
test_signals.py | ||
test_static.py | ||
test_test_client_port.py | ||
test_timeout_logic.py | ||
test_tls.py | ||
test_touchup.py | ||
test_unix_socket.py | ||
test_url_building.py | ||
test_url_for_static.py | ||
test_url_for.py | ||
test_utf8.py | ||
test_utils.py | ||
test_versioning.py | ||
test_vhosts.py | ||
test_views.py | ||
test_worker.py |