You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by bn...@apache.org on 2021/10/25 18:55:58 UTC
[trafficserver] branch 10-Dev updated (4deeb25 -> 62d69ef)
This is an automated email from the ASF dual-hosted git repository.
bneradt pushed a change to branch 10-Dev
in repository https://gitbox.apache.org/repos/asf/trafficserver.git.
from 4deeb25 Revert "Remove incompatible changes for 9.2.0 (#8316)"
add c68e031 doc: Fixes curl syntax for PUSH example (#8315)
add b0987fb statichit: allow exact path matching to be optional (#8307)
add 5bbde77 Fix a compile error in rate_limit plugin (#8310)
add e1ef04d Fix a compile error in SSLCertLookup (#8309)
add 2dcfda5 Fix crash during raw connect failures (#8306)
add 922a470 Fix yamlcpp include folder by using the YAMLCPP_INCLUDE variable (#8319)
add 041df29 Cleanup url_*_get/set functions (#8237)
add c64d920 Add virtual destructor to Http2CommonSession because it now has virtual methods. (#8320)
add ccb0ca6 Removed unused dirname from LoadRefCountCacheFromPath (#8322)
add 97d4fce Add mTLS scenario documentation (#8314)
add 5019248 Cleanup: Move member function definitions of HttpSM & HttpTunnel (#8324)
add 68926ae Make separate read and write vc_handlers (#8301)
add 0ecd3fb docs: Update host_sni_policy for some behaviors (#8332)
add f8ea17a Prefetch plugin: add --fetch-query option (#8264)
add eed419a Updated the CODEOWNERS for me (#8336)
add ccbf1c8 Update age in header_rewrite_cond_cache autest (#8339)
add bd59809 Make fqdn of sni.yaml match case insensitively. (#8327)
add 1c325b0 Doc: multiplixer plugin documentation updates (#8325)
add 3b3942c Revert "Fixed issue with macOS Catalina and pcre 8.43 enabling pcre-jit (#6189)" (#8341)
add 1c72ad1 Fix missing outbound_conntrack config assigment(from master config to global parameter configs) (#8328)
add a545641 Add debug message when there is a header parse error for http/2 (#8234)
add 7a31783 SNI: updating SNI/hostname mismatch logging (#8326)
add aafc41f Add current active SNI Routing Tunnel stats (#8323)
add 4507d5e Add <limits> include to BufferWriterForward.h (#8345)
add e52009c remove unused RecConfigFileEntry from RecConfigParse (#8348)
add 92a546d Rename outbound_conntrack to global_outbound_conntrack to reduce confusion. (#8343)
add 4ec24cb remove unused RecConfigFileEntry struct (#8353)
add cd1139b crash fix (#8268)
add 0eccef0 test_MMH: fix memory leak in unit test (#8357)
add bf3d5e8 free sessions when timeout (#8356)
add 2a6156f change MemArena::make test to remove memory leak (#8352)
add 1a353b2 Stabilize regex_revalidate Au test. (#559) (#8360)
add 470c489 Locking around SSLSecret::secret_map access (#8358)
add f4274a8 check size of session, and free sessions the ATS way (#8330)
add 46bd121 [doc] Add a note for TSLifecycleHookAdd. Warn users that a contp could eventually be executed in a ET_NET when it was originally scheduled in the ET_TASK. (#8344)
add 44d1be6 Added support for verifying cacheability before attempting to force an object into cache (#8364)
add 1ae919a TSSslSecretSet: Update SSL_CTX TLS Secrets (#8368)
add cba5e85 Traffic Dump: update json-schema for new tuple requirements (#8370)
add d1e2dd8 Pre-warming TLS Tunnel (#7661)
add e7b6948 Removed references to the throttle option from the slice plugin. (#8373)
add 3d9d5e7 Added support for promoting internal (plugin-initiated) requests. (#8363)
add b53e745 Adds support for TCP_NOTSENT_LOWAT sockopt (#8354)
add 3ad1587 Doc: Add proxy.config.cacvhe.mutex_retry_delay (#8376)
add cfc83ae Doc: cleanup build errors. (#8377)
add c2d3504 Fix regex_remap plugin redirection. (#8359)
add b26795d Adding TLS session key logging capability (#8337)
add 6ccae6c Fixes issue #8329 crash in NextHopConsistentHash where when the only (#8365)
add a7c0f79 Add Au test for pqsi and pqsp log fields. (#8372)
add 870b857 Fix a potential H2 stall issue (#8381)
add d19ef80 body factory does not respect runroot (#8388)
add d2e57c4 Update the feature lists available for autest (#8392)
add a54abe7 Update CacheWrite.cc (#8405)
add 85e73b7 Fix map_with_recv_port URL remapping type. (#8406)
add d91620d Add set-body ability to header rewrite (#8411)
add 92fd44f Add stats for concurrent stream limits exceeded (#8409)
add 6c3e9d2 AuTest: Execute Test Python Scripts with sys.executable (#8412)
add 9467454 Added required checks before merging (#8413)
add adaa3f5 Don't require branch to be up to date before merging (#8416)
add bb43190 Remove operatorbody class, its not needed at this time (#8424)
add 4bdfb7d Adding doc/README.md (#8420)
add bbe578d add hacktoberfest label (#8425)
add 852d90d Enables crosscompling of ATS (#7786)
add a316345 Doc: fix typos in Strategy documentation (#8408)
add de96b04 Increased the max number of operations for marking PR and issues stale to 100 (#8394)
add b369551 Add AuTest for stats-over-http plugin (#8422)
add 3679ebe Make sure the include files are built first (#8427)
add b93900b Rename IpEndpoint member functions named port() to network_order_port(). (#8421)
add 6e10cdc Refactors and promotes the Txn Control mechanism with Get() and Set() (#8428)
add 727106e tests: Add shbang to python scripts with a main (#8430)
add c00b113 Remove empty tests/unit_tests directoy+makefile (#8429)
add 978bf0f Make header_rewrite_cond_cache test version indepdendent (#8431)
add ed66e7d Adds new API: TSVConnSslSniGet (#8313)
add 48f34d7 Fix null-pointer-subtraction warning (#8433)
add bf975cd Fix deprecated-copy warning (#8434)
add fcc7268 Fix unused-but-set-variable warnings (#8435)
add c72d433 Promote class PendingAction from HttpSM.h for use in other classes. (#8423)
add a62541f rate_limit: convert to using TSVConnSslSniGet (#8414)
add f02b045 Fix traffic_manager build when mime-sanity-check is enabled (#8438)
add 66c86c6 Fix traffic_top build when using -Werror=format-security (#8437)
add 0651c9a Update the Multiplexer Docs for Multplexed HTTPS Connections (#8440)
add 441db31 bigobj: use automake to build test utilities (#8441)
add 0746ec2 For verify_global_plugin test, check for platform independent error message (#8442)
add a0c5ac3 Make sni.yaml errors cause an unrecoverable TS crash at startup. (#8208)
add c92cef8 Fix SSLAddressLookup Test (#8436)
add 5e53758 Fix timeout checks of NetHandler::manage_active_queue() (#8287)
add 20adcb4 Exports all symbols for missing_mangled_definition.so test plugin (#8444)
add 403ab3f Include CPPFLAGS when building CompileParseRules (#8445)
add a100761 Report an error if configure can't find zlib (#8446)
add 636d42a Fix Multiplexer POST/PUT Body Handling (#8439)
new 62d69ef Merge remote-tracking branch 'upstream/master' into rebase_10_dev
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.asf.yaml | 16 +
.github/workflows/stale.yml | 1 +
.gitignore | 6 +
.vscode/c_cpp_properties.json | 55 +-
CODEOWNERS | 11 +-
Makefile.am | 2 +-
build/ax_cc_for_build.m4 | 76 ++
build/crypto.m4 | 22 +-
configure.ac | 13 +-
doc/README.md | 55 +
doc/admin-guide/files/records.config.en.rst | 78 +-
doc/admin-guide/files/sni.yaml.en.rst | 34 +-
doc/admin-guide/files/strategies.yaml.en.rst | 17 +-
doc/admin-guide/layer-4-routing.en.rst | 48 +
.../statistics/core/http-connection.en.rst | 14 +
.../monitoring/statistics/core/ssl.en.rst | 47 +
doc/admin-guide/plugins/cache_promote.en.rst | 6 +-
.../plugins/cache_range_requests.en.rst | 18 +
doc/admin-guide/plugins/header_rewrite.en.rst | 8 +
doc/admin-guide/plugins/lua.en.rst | 1 +
doc/admin-guide/plugins/multiplexer.en.rst | 67 +-
doc/admin-guide/plugins/prefetch.en.rst | 4 +
doc/admin-guide/plugins/slice.en.rst | 11 -
doc/admin-guide/security/index.en.rst | 13 +-
doc/admin-guide/security/mtls.en.rst | 166 +++
doc/admin-guide/storage/index.en.rst | 2 +-
.../api/functions/TSContScheduleOnPool.en.rst | 6 +
.../api/functions/TSHttpConnectPlugin.en.rst | 2 +-
.../api/functions/TSHttpOverridableConfig.en.rst | 1 +
...HdrReasonLookup.en.rst => TSHttpTxnCntl.en.rst} | 12 +-
doc/developer-guide/api/functions/TSTypes.en.rst | 8 +-
...ReasonLookup.en.rst => TSVConnSslSniGet.en.rst} | 7 +-
.../{TSRecordType.en.rst => TSHttpCntlType.en.rst} | 39 +-
.../api/types/TSOverridableConfigKey.en.rst | 1 +
.../testing/blackbox-testing.en.rst | 2 +
doc/uml/l4-pre-warming-overview.uml | 32 +
include/ts/apidefs.h.in | 12 +
include/ts/experimental.h | 17 -
include/ts/ts.h | 7 +
include/tscore/BufferWriterForward.h | 1 +
include/tscore/HTTPVersion.h | 2 +
include/tscore/PendingAction.h | 129 +++
include/tscore/TSSystemState.h | 21 +-
include/tscore/ink_config.h.in | 1 +
include/tscore/ink_inet.h | 70 +-
include/tscpp/util/MemSpan.h | 1 +
iocore/cache/CacheWrite.cc | 6 +-
iocore/eventsystem/I_EThread.h | 3 +
iocore/eventsystem/I_Thread.h | 1 +
iocore/hostdb/HostDB.cc | 2 +-
iocore/hostdb/P_RefCountCache.h | 2 +-
iocore/hostdb/test_RefCountCache.cc | 2 +-
iocore/net/I_NetProcessor.h | 1 +
iocore/net/I_NetVConnection.h | 5 +-
iocore/net/Makefile.am | 1 +
iocore/net/P_NetVConnection.h | 2 +-
iocore/net/P_SNIActionPerformer.h | 12 +-
iocore/net/P_SSLConfig.h | 2 +
iocore/net/P_SSLNetVConnection.h | 25 +-
iocore/net/P_SSLSNI.h | 2 +-
iocore/net/P_SSLSecret.h | 6 +
iocore/net/P_SSLUtils.h | 104 +-
iocore/net/P_UnixNetVConnection.h | 22 +-
iocore/net/ProxyProtocol.cc | 4 +-
iocore/net/QUICNetProcessor.cc | 2 +-
iocore/net/QUICNetVConnection.cc | 4 +-
iocore/net/QUICPacketHandler.cc | 2 +-
iocore/net/SSLCertLookup.cc | 6 +-
iocore/net/SSLClientCoordinator.cc | 1 +
iocore/net/SSLClientUtils.cc | 13 +-
iocore/net/SSLConfig.cc | 13 +
iocore/net/SSLNetVConnection.cc | 22 +-
iocore/net/SSLSNIConfig.cc | 19 +-
iocore/net/SSLSecret.cc | 11 +-
iocore/net/SSLSessionCache.cc | 42 +-
iocore/net/SSLSessionCache.h | 11 +-
iocore/net/SSLUtils.cc | 94 ++
iocore/net/TLSSessionResumptionSupport.cc | 3 +
iocore/net/UnixConnection.cc | 13 +-
iocore/net/UnixNet.cc | 4 +-
iocore/net/UnixNetAccept.cc | 19 +-
iocore/net/UnixNetProcessor.cc | 3 +-
iocore/net/UnixUDPNet.cc | 6 +-
iocore/net/YamlSNIConfig.cc | 64 +-
iocore/net/YamlSNIConfig.h | 16 +
iocore/net/libinknet_stub.cc | 10 +
iocore/net/quic/QUICConfig.cc | 12 +-
iocore/net/quic/QUICConfig.h | 2 -
iocore/net/quic/QUICGlobals.cc | 17 -
iocore/net/quic/QUICTLS.cc | 6 -
iocore/net/quic/QUICTLS.h | 4 +-
iocore/net/quic/QUICTLS_boringssl.cc | 8 +-
iocore/net/quic/QUICTLS_openssl.cc | 8 +-
iocore/net/quic/QUICTypes.cc | 4 +-
iocore/net/quic/QUICTypes.h | 8 +-
iocore/net/test_certlookup.cc | 22 +-
lib/perl/lib/Apache/TS/AdminClient.pm | 1 +
lib/records/P_RecDefs.h | 5 -
lib/records/RecConfigParse.cc | 7 +-
lib/records/RecRawStats.cc | 4 +-
mgmt/LocalManager.cc | 4 +-
mgmt/Makefile.am | 2 +-
mgmt/RecordsConfig.cc | 22 +-
mgmt/api/CoreAPIShared.cc | 3 -
mgmt/api/Makefile.am | 2 +-
plugins/cache_promote/cache_promote.cc | 4 +-
plugins/cache_promote/configs.cc | 4 +
plugins/cache_promote/lru_policy.h | 3 +-
plugins/cache_promote/policy.h | 13 +
plugins/cache_range_requests/README.md | 17 +
.../cache_range_requests/cache_range_requests.cc | 23 +-
plugins/esi/combo_handler.cc | 4 +-
plugins/esi/lib/EsiGunzip.cc | 2 -
plugins/esi/serverIntercept.cc | 4 +-
plugins/experimental/acme/acme.c | 2 +-
plugins/experimental/cache_fill/cache_fill.cc | 2 +-
plugins/experimental/mysql_remap/mysql_remap.cc | 2 +-
plugins/experimental/rate_limit/limiter.h | 1 +
plugins/experimental/rate_limit/rate_limit.cc | 5 -
plugins/experimental/rate_limit/sni_limiter.cc | 11 +-
plugins/experimental/rate_limit/sni_selector.cc | 5 -
plugins/experimental/rate_limit/utilities.cc | 41 -
plugins/experimental/rate_limit/utilities.h | 1 -
plugins/experimental/slice/Config.cc | 2 +-
plugins/experimental/slice/slice.cc | 8 +-
plugins/experimental/statichit/statichit.cc | 46 +-
plugins/experimental/tls_bridge/tls_bridge.cc | 2 +-
plugins/generator/generator.cc | 4 +-
plugins/header_rewrite/factory.cc | 2 +
plugins/header_rewrite/operators.cc | 30 +-
plugins/header_rewrite/operators.h | 19 +
plugins/healthchecks/healthchecks.c | 2 +-
plugins/lua/ts_lua_http.c | 4 +-
plugins/lua/ts_lua_http_cntl.c | 21 +-
plugins/lua/ts_lua_http_config.c | 4 +-
plugins/multiplexer/dispatch.cc | 9 +-
plugins/multiplexer/dispatch.h | 8 +-
plugins/prefetch/configs.cc | 6 +
plugins/prefetch/configs.h | 13 +
plugins/prefetch/fetch.cc | 2 +-
plugins/prefetch/plugin.cc | 74 +-
plugins/regex_remap/regex_remap.cc | 3 +-
plugins/stats_over_http/stats_over_http.c | 2 +-
plugins/xdebug/xdebug.cc | 8 +-
proxy/Makefile.am | 2 +-
proxy/hdrs/MIME.cc | 2 +-
proxy/hdrs/URL.cc | 175 +--
proxy/hdrs/URL.h | 102 +-
proxy/hdrs/unit_tests/test_HdrHeap.cc | 6 +-
proxy/http/HttpBodyFactory.cc | 8 +-
proxy/http/HttpConfig.cc | 14 +-
proxy/http/HttpConfig.h | 7 +-
proxy/http/HttpProxyServerMain.cc | 7 +
proxy/http/HttpSM.cc | 241 ++--
proxy/http/HttpSM.h | 173 ++-
proxy/http/HttpTransact.cc | 12 +-
proxy/http/HttpTunnel.cc | 80 ++
proxy/http/HttpTunnel.h | 28 +-
proxy/http/Makefile.am | 16 +-
proxy/http/PreWarmAlgorithm.h | 122 ++
proxy/http/PreWarmConfig.cc | 75 ++
.../http/PreWarmConfig.h | 35 +-
proxy/http/PreWarmManager.cc | 1170 ++++++++++++++++++++
proxy/http/PreWarmManager.h | 341 ++++++
proxy/http/remap/NextHopConsistentHash.cc | 356 +++---
proxy/http/remap/NextHopConsistentHash.h | 5 +-
proxy/http/remap/NextHopHealthStatus.cc | 11 +-
proxy/http/remap/RemapProcessor.cc | 7 +-
.../remap/unit-tests/test_NextHopConsistentHash.cc | 53 +-
proxy/http/unit_tests/test_PreWarm.cc | 223 ++++
proxy/http2/HTTP2.cc | 14 +-
proxy/http2/HTTP2.h | 2 +
proxy/http2/Http2CommonSession.h | 2 +
proxy/http2/Http2ConnectionState.cc | 3 +
proxy/http2/Http2Stream.cc | 8 +-
proxy/logging/LogAccess.cc | 8 +-
proxy/shared/UglyLogStubs.cc | 1 +
src/shared/overridable_txn_vars.cc | 3 +-
src/traffic_logcat/logcat.cc | 3 +-
src/traffic_quic/traffic_quic.cc | 8 +
src/traffic_server/InkAPI.cc | 141 ++-
src/traffic_server/InkAPITest.cc | 15 +-
src/traffic_server/traffic_server.cc | 2 +
src/traffic_top/traffic_top.cc | 4 +-
src/tscore/Makefile.am | 7 +-
src/tscore/Regex.cc | 8 +-
src/tscore/unit_tests/test_MMH.cc | 3 +
src/tscore/unit_tests/test_MemArena.cc | 19 +-
src/tscpp/api/Transaction.cc | 2 +-
src/tscpp/util/Makefile.am | 2 +-
tests/Makefile.am | 1 +
tests/Pipfile | 1 +
tests/README.md | 2 +
tests/gold_tests/basic/deny0.test.py | 11 +-
.../gold_tests/bigobj}/Makefile.inc | 6 +-
tests/gold_tests/bigobj/bigobj.test.py | 21 +-
.../command_argument/verify_global_plugin.test.py | 6 +-
tests/gold_tests/h2/h2active_timeout.py | 2 +
tests/gold_tests/h2/h2bigclient.py | 2 +
tests/gold_tests/h2/h2chunked.py | 2 +
tests/gold_tests/h2/h2client.py | 2 +
tests/gold_tests/h2/http2.test.py | 15 +-
tests/gold_tests/h2/httpbin.test.py | 5 +-
.../headers/domain-blacklist-30x.test.py | 31 +-
.../headers/general-connection-failure-502.test.py | 6 +-
tests/gold_tests/headers/http408.test.py | 5 +-
tests/gold_tests/logging/all_headers.test.py | 19 +-
tests/gold_tests/logging/gold/pqsi-pqsp.gold | 2 +
tests/gold_tests/logging/log_pipe.test.py | 3 +-
tests/gold_tests/logging/new_log_flds.test.py | 7 +-
tests/gold_tests/logging/pqsi-pqsp.test.py | 95 ++
tests/gold_tests/logging/sigusr2.test.py | 5 +-
.../pluginTest/combo_handler/combo_handler.test.py | 9 +-
.../gold/header_rewrite_cond_cache.gold | 18 +-
.../pluginTest/multiplexer/gold/multiplexer.gold | 1 -
.../pluginTest/multiplexer/multiplexer.test.py | 224 +++-
.../replays/multiplexer_copy.replay.yaml | 113 ++
.../multiplexer_copy_skip_post.replay.yaml} | 32 +-
.../replays/multiplexer_original.replay.yaml} | 126 +--
.../multiplexer_original_skip_post.replay.yaml} | 126 +--
.../regex_remap/gold/regex_remap_redirect.gold | 2 +-
.../pluginTest/regex_remap/regex_remap.test.py | 2 +-
.../regex_revalidate/regex_revalidate.test.py | 14 +-
.../gold/stats_over_http_0_stderr.gold | 11 +
.../gold/stats_over_http_0_stdout.gold | 4 +
.../stats_over_http/stats_over_http.test.py | 76 ++
.../pluginTest/traffic_dump/traffic_dump.test.py | 126 +--
.../traffic_dump/traffic_dump_http3.test.py | 26 +-
.../traffic_dump/traffic_dump_ip_filter.test.py | 3 +-
.../traffic_dump_response_body.test.py | 3 +-
.../traffic_dump/traffic_dump_sni_filter.test.py | 26 +-
.../pluginTest/traffic_dump/verify_replay.py | 2 +
.../xdebug/x_cache_info/x_cache_info.test.py | 4 +-
.../xdebug/x_effective_url/x_effective_url.test.py | 8 +-
.../pluginTest/xdebug/x_remap/x_remap.test.py | 8 +-
tests/gold_tests/redirect/redirect.test.py | 26 +-
tests/gold_tests/redirect/redirect_actions.test.py | 12 +-
...remap-https-200.gold => remap-https-200_3.gold} | 2 +-
.../remap/gold/{remap-200.gold => remap2-200.gold} | 4 +-
tests/gold_tests/remap/remap_http.test.py | 10 +
tests/gold_tests/remap/remap_https.test.py | 10 +
tests/gold_tests/slow_post/slow_post.test.py | 5 +-
tests/gold_tests/slow_post/slow_post_client.py | 2 +
tests/gold_tests/thread_config/check_threads.py | 2 +
.../gold_tests/thread_config/thread_config.test.py | 41 +-
tests/gold_tests/tls/ssl-post.c | 2 -
tests/gold_tests/tls/test-0rtt-s_client.py | 2 +
tests/gold_tests/tls/tls_0rtt_server.test.py | 20 +-
tests/gold_tests/tls/tls_hooks_verify.test.py | 3 +-
.../tls_session_key_logging.replay.yaml} | 27 +-
.../gold_tests/tls/tls_session_key_logging.test.py | 96 ++
tests/gold_tests/tls/tls_sni_host_policy.test.py | 78 +-
tests/tools/lib/replay_schema.json | 2 +-
tests/tools/plugins/Makefile.inc | 5 +
tests/tools/plugins/ssl_verify_test.cc | 4 +
tests/unit_tests/Makefile.am | 30 -
256 files changed, 5824 insertions(+), 1594 deletions(-)
create mode 100644 build/ax_cc_for_build.m4
create mode 100644 doc/README.md
create mode 100644 doc/admin-guide/security/mtls.en.rst
copy doc/developer-guide/api/functions/{TSHttpHdrReasonLookup.en.rst => TSHttpTxnCntl.en.rst} (62%)
copy doc/developer-guide/api/functions/{TSHttpHdrReasonLookup.en.rst => TSVConnSslSniGet.en.rst} (82%)
copy doc/developer-guide/api/types/{TSRecordType.en.rst => TSHttpCntlType.en.rst} (51%)
create mode 100644 doc/uml/l4-pre-warming-overview.uml
create mode 100644 include/tscore/PendingAction.h
create mode 100644 proxy/http/PreWarmAlgorithm.h
create mode 100644 proxy/http/PreWarmConfig.cc
copy iocore/net/P_SSLClientCoordinator.h => proxy/http/PreWarmConfig.h (51%)
create mode 100644 proxy/http/PreWarmManager.cc
create mode 100644 proxy/http/PreWarmManager.h
create mode 100644 proxy/http/unit_tests/test_PreWarm.cc
copy {plugins/cache_range_requests => tests/gold_tests/bigobj}/Makefile.inc (78%)
create mode 100644 tests/gold_tests/logging/gold/pqsi-pqsp.gold
create mode 100644 tests/gold_tests/logging/pqsi-pqsp.test.py
delete mode 100644 tests/gold_tests/pluginTest/multiplexer/gold/multiplexer.gold
create mode 100644 tests/gold_tests/pluginTest/multiplexer/replays/multiplexer_copy.replay.yaml
copy tests/gold_tests/{dns/replay/single_transaction.replay.yaml => pluginTest/multiplexer/replays/multiplexer_copy_skip_post.replay.yaml} (66%)
copy tests/gold_tests/pluginTest/{traffic_dump/replay/response_body.yaml => multiplexer/replays/multiplexer_original.replay.yaml} (50%)
copy tests/gold_tests/pluginTest/{traffic_dump/replay/response_body.yaml => multiplexer/replays/multiplexer_original_skip_post.replay.yaml} (50%)
create mode 100644 tests/gold_tests/pluginTest/stats_over_http/gold/stats_over_http_0_stderr.gold
create mode 100644 tests/gold_tests/pluginTest/stats_over_http/gold/stats_over_http_0_stdout.gold
create mode 100644 tests/gold_tests/pluginTest/stats_over_http/stats_over_http.test.py
copy tests/gold_tests/remap/gold/{remap-https-200.gold => remap-https-200_3.gold} (85%)
copy tests/gold_tests/remap/gold/{remap-200.gold => remap2-200.gold} (73%)
copy tests/gold_tests/{dns/replay/single_transaction.replay.yaml => tls/tls_session_key_logging.replay.yaml} (77%)
create mode 100644 tests/gold_tests/tls/tls_session_key_logging.test.py
delete mode 100644 tests/unit_tests/Makefile.am
[trafficserver] 01/01: Merge remote-tracking branch
'upstream/master' into rebase_10_dev
Posted by bn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
bneradt pushed a commit to branch 10-Dev
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
commit 62d69ef45a417afaa11218ea2a45914f2eac55e2
Merge: 4deeb25 636d42a
Author: Brian Neradt <br...@gmail.com>
AuthorDate: Mon Oct 25 18:43:49 2021 +0000
Merge remote-tracking branch 'upstream/master' into rebase_10_dev
.asf.yaml | 16 +
.github/workflows/stale.yml | 1 +
.gitignore | 6 +
.vscode/c_cpp_properties.json | 55 +-
CODEOWNERS | 11 +-
Makefile.am | 2 +-
build/ax_cc_for_build.m4 | 76 ++
build/crypto.m4 | 22 +-
configure.ac | 13 +-
doc/README.md | 55 +
doc/admin-guide/files/records.config.en.rst | 78 +-
doc/admin-guide/files/sni.yaml.en.rst | 34 +-
doc/admin-guide/files/strategies.yaml.en.rst | 17 +-
doc/admin-guide/layer-4-routing.en.rst | 48 +
.../statistics/core/http-connection.en.rst | 14 +
.../monitoring/statistics/core/ssl.en.rst | 47 +
doc/admin-guide/plugins/cache_promote.en.rst | 6 +-
.../plugins/cache_range_requests.en.rst | 18 +
doc/admin-guide/plugins/header_rewrite.en.rst | 8 +
doc/admin-guide/plugins/lua.en.rst | 1 +
doc/admin-guide/plugins/multiplexer.en.rst | 67 +-
doc/admin-guide/plugins/prefetch.en.rst | 4 +
doc/admin-guide/plugins/slice.en.rst | 11 -
doc/admin-guide/security/index.en.rst | 13 +-
doc/admin-guide/security/mtls.en.rst | 166 +++
doc/admin-guide/storage/index.en.rst | 2 +-
.../api/functions/TSContScheduleOnPool.en.rst | 6 +
.../api/functions/TSHttpConnectPlugin.en.rst | 2 +-
.../api/functions/TSHttpOverridableConfig.en.rst | 1 +
.../api/functions/TSHttpTxnCntl.en.rst | 36 +
doc/developer-guide/api/functions/TSTypes.en.rst | 8 +-
.../api/functions/TSVConnSslSniGet.en.rst | 33 +
.../api/types/TSHttpCntlType.en.rst | 65 ++
.../api/types/TSOverridableConfigKey.en.rst | 1 +
.../testing/blackbox-testing.en.rst | 2 +
doc/uml/l4-pre-warming-overview.uml | 32 +
include/ts/apidefs.h.in | 12 +
include/ts/experimental.h | 17 -
include/ts/ts.h | 7 +
include/tscore/BufferWriterForward.h | 1 +
include/tscore/HTTPVersion.h | 2 +
include/tscore/PendingAction.h | 129 +++
include/tscore/TSSystemState.h | 21 +-
include/tscore/ink_config.h.in | 1 +
include/tscore/ink_inet.h | 70 +-
include/tscpp/util/MemSpan.h | 1 +
iocore/cache/CacheWrite.cc | 6 +-
iocore/eventsystem/I_EThread.h | 3 +
iocore/eventsystem/I_Thread.h | 1 +
iocore/hostdb/HostDB.cc | 2 +-
iocore/hostdb/P_RefCountCache.h | 2 +-
iocore/hostdb/test_RefCountCache.cc | 2 +-
iocore/net/I_NetProcessor.h | 1 +
iocore/net/I_NetVConnection.h | 5 +-
iocore/net/Makefile.am | 1 +
iocore/net/P_NetVConnection.h | 2 +-
iocore/net/P_SNIActionPerformer.h | 12 +-
iocore/net/P_SSLConfig.h | 2 +
iocore/net/P_SSLNetVConnection.h | 25 +-
iocore/net/P_SSLSNI.h | 2 +-
iocore/net/P_SSLSecret.h | 6 +
iocore/net/P_SSLUtils.h | 104 +-
iocore/net/P_UnixNetVConnection.h | 22 +-
iocore/net/ProxyProtocol.cc | 4 +-
iocore/net/QUICNetProcessor.cc | 2 +-
iocore/net/QUICNetVConnection.cc | 4 +-
iocore/net/QUICPacketHandler.cc | 2 +-
iocore/net/SSLCertLookup.cc | 6 +-
iocore/net/SSLClientCoordinator.cc | 1 +
iocore/net/SSLClientUtils.cc | 13 +-
iocore/net/SSLConfig.cc | 13 +
iocore/net/SSLNetVConnection.cc | 22 +-
iocore/net/SSLSNIConfig.cc | 19 +-
iocore/net/SSLSecret.cc | 11 +-
iocore/net/SSLSessionCache.cc | 42 +-
iocore/net/SSLSessionCache.h | 11 +-
iocore/net/SSLUtils.cc | 94 ++
iocore/net/TLSSessionResumptionSupport.cc | 3 +
iocore/net/UnixConnection.cc | 13 +-
iocore/net/UnixNet.cc | 4 +-
iocore/net/UnixNetAccept.cc | 19 +-
iocore/net/UnixNetProcessor.cc | 3 +-
iocore/net/UnixUDPNet.cc | 6 +-
iocore/net/YamlSNIConfig.cc | 64 +-
iocore/net/YamlSNIConfig.h | 16 +
iocore/net/libinknet_stub.cc | 10 +
iocore/net/quic/QUICConfig.cc | 12 +-
iocore/net/quic/QUICConfig.h | 2 -
iocore/net/quic/QUICGlobals.cc | 17 -
iocore/net/quic/QUICTLS.cc | 6 -
iocore/net/quic/QUICTLS.h | 4 +-
iocore/net/quic/QUICTLS_boringssl.cc | 8 +-
iocore/net/quic/QUICTLS_openssl.cc | 8 +-
iocore/net/quic/QUICTypes.cc | 4 +-
iocore/net/quic/QUICTypes.h | 8 +-
iocore/net/test_certlookup.cc | 22 +-
lib/perl/lib/Apache/TS/AdminClient.pm | 1 +
lib/records/P_RecDefs.h | 5 -
lib/records/RecConfigParse.cc | 7 +-
lib/records/RecRawStats.cc | 4 +-
mgmt/LocalManager.cc | 4 +-
mgmt/Makefile.am | 2 +-
mgmt/RecordsConfig.cc | 22 +-
mgmt/api/CoreAPIShared.cc | 3 -
mgmt/api/Makefile.am | 2 +-
plugins/cache_promote/cache_promote.cc | 4 +-
plugins/cache_promote/configs.cc | 4 +
plugins/cache_promote/lru_policy.h | 3 +-
plugins/cache_promote/policy.h | 13 +
plugins/cache_range_requests/README.md | 17 +
.../cache_range_requests/cache_range_requests.cc | 23 +-
plugins/esi/combo_handler.cc | 4 +-
plugins/esi/lib/EsiGunzip.cc | 2 -
plugins/esi/serverIntercept.cc | 4 +-
plugins/experimental/acme/acme.c | 2 +-
plugins/experimental/cache_fill/cache_fill.cc | 2 +-
plugins/experimental/mysql_remap/mysql_remap.cc | 2 +-
plugins/experimental/rate_limit/limiter.h | 1 +
plugins/experimental/rate_limit/rate_limit.cc | 5 -
plugins/experimental/rate_limit/sni_limiter.cc | 11 +-
plugins/experimental/rate_limit/sni_selector.cc | 5 -
plugins/experimental/rate_limit/utilities.cc | 41 -
plugins/experimental/rate_limit/utilities.h | 1 -
plugins/experimental/slice/Config.cc | 2 +-
plugins/experimental/slice/slice.cc | 8 +-
plugins/experimental/statichit/statichit.cc | 46 +-
plugins/experimental/tls_bridge/tls_bridge.cc | 2 +-
plugins/generator/generator.cc | 4 +-
plugins/header_rewrite/factory.cc | 2 +
plugins/header_rewrite/operators.cc | 30 +-
plugins/header_rewrite/operators.h | 19 +
plugins/healthchecks/healthchecks.c | 2 +-
plugins/lua/ts_lua_http.c | 4 +-
plugins/lua/ts_lua_http_cntl.c | 21 +-
plugins/lua/ts_lua_http_config.c | 4 +-
plugins/multiplexer/dispatch.cc | 9 +-
plugins/multiplexer/dispatch.h | 8 +-
plugins/prefetch/configs.cc | 6 +
plugins/prefetch/configs.h | 13 +
plugins/prefetch/fetch.cc | 2 +-
plugins/prefetch/plugin.cc | 74 +-
plugins/regex_remap/regex_remap.cc | 3 +-
plugins/stats_over_http/stats_over_http.c | 2 +-
plugins/xdebug/xdebug.cc | 8 +-
proxy/Makefile.am | 2 +-
proxy/hdrs/MIME.cc | 2 +-
proxy/hdrs/URL.cc | 175 +--
proxy/hdrs/URL.h | 102 +-
proxy/hdrs/unit_tests/test_HdrHeap.cc | 6 +-
proxy/http/HttpBodyFactory.cc | 8 +-
proxy/http/HttpConfig.cc | 14 +-
proxy/http/HttpConfig.h | 7 +-
proxy/http/HttpProxyServerMain.cc | 7 +
proxy/http/HttpSM.cc | 241 ++--
proxy/http/HttpSM.h | 173 ++-
proxy/http/HttpTransact.cc | 12 +-
proxy/http/HttpTunnel.cc | 80 ++
proxy/http/HttpTunnel.h | 28 +-
proxy/http/Makefile.am | 16 +-
proxy/http/PreWarmAlgorithm.h | 122 ++
proxy/http/PreWarmConfig.cc | 75 ++
proxy/http/PreWarmConfig.h | 57 +
proxy/http/PreWarmManager.cc | 1170 ++++++++++++++++++++
proxy/http/PreWarmManager.h | 341 ++++++
proxy/http/remap/NextHopConsistentHash.cc | 356 +++---
proxy/http/remap/NextHopConsistentHash.h | 5 +-
proxy/http/remap/NextHopHealthStatus.cc | 11 +-
proxy/http/remap/RemapProcessor.cc | 7 +-
.../remap/unit-tests/test_NextHopConsistentHash.cc | 53 +-
proxy/http/unit_tests/test_PreWarm.cc | 223 ++++
proxy/http2/HTTP2.cc | 14 +-
proxy/http2/HTTP2.h | 2 +
proxy/http2/Http2CommonSession.h | 2 +
proxy/http2/Http2ConnectionState.cc | 3 +
proxy/http2/Http2Stream.cc | 8 +-
proxy/logging/LogAccess.cc | 8 +-
proxy/shared/UglyLogStubs.cc | 1 +
src/shared/overridable_txn_vars.cc | 3 +-
src/traffic_logcat/logcat.cc | 3 +-
src/traffic_quic/traffic_quic.cc | 8 +
src/traffic_server/InkAPI.cc | 141 ++-
src/traffic_server/InkAPITest.cc | 15 +-
src/traffic_server/traffic_server.cc | 2 +
src/traffic_top/traffic_top.cc | 4 +-
src/tscore/Makefile.am | 7 +-
src/tscore/Regex.cc | 8 +-
src/tscore/unit_tests/test_MMH.cc | 3 +
src/tscore/unit_tests/test_MemArena.cc | 19 +-
src/tscpp/api/Transaction.cc | 2 +-
src/tscpp/util/Makefile.am | 2 +-
tests/Makefile.am | 1 +
tests/Pipfile | 1 +
tests/README.md | 2 +
tests/gold_tests/basic/deny0.test.py | 11 +-
.../Makefile.am => gold_tests/bigobj/Makefile.inc} | 16 +-
tests/gold_tests/bigobj/bigobj.test.py | 21 +-
.../command_argument/verify_global_plugin.test.py | 6 +-
tests/gold_tests/h2/h2active_timeout.py | 2 +
tests/gold_tests/h2/h2bigclient.py | 2 +
tests/gold_tests/h2/h2chunked.py | 2 +
tests/gold_tests/h2/h2client.py | 2 +
tests/gold_tests/h2/http2.test.py | 15 +-
tests/gold_tests/h2/httpbin.test.py | 5 +-
.../headers/domain-blacklist-30x.test.py | 31 +-
.../headers/general-connection-failure-502.test.py | 6 +-
tests/gold_tests/headers/http408.test.py | 5 +-
tests/gold_tests/logging/all_headers.test.py | 19 +-
tests/gold_tests/logging/gold/pqsi-pqsp.gold | 2 +
tests/gold_tests/logging/log_pipe.test.py | 3 +-
tests/gold_tests/logging/new_log_flds.test.py | 7 +-
tests/gold_tests/logging/pqsi-pqsp.test.py | 95 ++
tests/gold_tests/logging/sigusr2.test.py | 5 +-
.../pluginTest/combo_handler/combo_handler.test.py | 9 +-
.../gold/header_rewrite_cond_cache.gold | 18 +-
.../pluginTest/multiplexer/gold/multiplexer.gold | 1 -
.../pluginTest/multiplexer/multiplexer.test.py | 224 +++-
.../replays/multiplexer_copy.replay.yaml | 113 ++
.../multiplexer_copy_skip_post.replay.yaml} | 69 +-
.../replays/multiplexer_original.replay.yaml | 122 ++
.../multiplexer_original_skip_post.replay.yaml | 122 ++
.../regex_remap/gold/regex_remap_redirect.gold | 2 +-
.../pluginTest/regex_remap/regex_remap.test.py | 2 +-
.../regex_revalidate/regex_revalidate.test.py | 14 +-
.../gold/stats_over_http_0_stderr.gold | 11 +
.../gold/stats_over_http_0_stdout.gold | 4 +
.../stats_over_http/stats_over_http.test.py | 76 ++
.../pluginTest/traffic_dump/traffic_dump.test.py | 126 +--
.../traffic_dump/traffic_dump_http3.test.py | 26 +-
.../traffic_dump/traffic_dump_ip_filter.test.py | 3 +-
.../traffic_dump_response_body.test.py | 3 +-
.../traffic_dump/traffic_dump_sni_filter.test.py | 26 +-
.../pluginTest/traffic_dump/verify_replay.py | 2 +
.../xdebug/x_cache_info/x_cache_info.test.py | 4 +-
.../xdebug/x_effective_url/x_effective_url.test.py | 8 +-
.../pluginTest/xdebug/x_remap/x_remap.test.py | 8 +-
tests/gold_tests/redirect/redirect.test.py | 26 +-
tests/gold_tests/redirect/redirect_actions.test.py | 12 +-
tests/gold_tests/remap/gold/remap-https-200_3.gold | 13 +
tests/gold_tests/remap/gold/remap2-200.gold | 14 +
tests/gold_tests/remap/remap_http.test.py | 10 +
tests/gold_tests/remap/remap_https.test.py | 10 +
tests/gold_tests/slow_post/slow_post.test.py | 5 +-
tests/gold_tests/slow_post/slow_post_client.py | 2 +
tests/gold_tests/thread_config/check_threads.py | 2 +
.../gold_tests/thread_config/thread_config.test.py | 41 +-
tests/gold_tests/tls/ssl-post.c | 2 -
tests/gold_tests/tls/test-0rtt-s_client.py | 2 +
tests/gold_tests/tls/tls_0rtt_server.test.py | 20 +-
tests/gold_tests/tls/tls_hooks_verify.test.py | 3 +-
.../tls/tls_session_key_logging.replay.yaml} | 38 +-
.../gold_tests/tls/tls_session_key_logging.test.py | 96 ++
tests/gold_tests/tls/tls_sni_host_policy.test.py | 78 +-
tests/tools/lib/replay_schema.json | 2 +-
tests/tools/plugins/Makefile.inc | 5 +
tests/tools/plugins/ssl_verify_test.cc | 4 +
255 files changed, 6150 insertions(+), 1407 deletions(-)
diff --cc doc/developer-guide/api/functions/TSContScheduleOnPool.en.rst
index 3acf484,1009187..e044e4f
--- a/doc/developer-guide/api/functions/TSContScheduleOnPool.en.rst
+++ b/doc/developer-guide/api/functions/TSContScheduleOnPool.en.rst
@@@ -138,5 -129,7 +143,6 @@@ the same continuation on two different
See Also
========
-:doc:`TSContSchedule.en`
-:doc:`TSContScheduleEvery.en`
+:doc:`TSContScheduleEveryOnPool.en`
:doc:`TSContScheduleOnThread.en`
+ :doc:`TSLifecycleHookAdd.en`
diff --cc proxy/http/HttpConfig.cc
index 79ba532,9b8f372..0cf48e4
--- a/proxy/http/HttpConfig.cc
+++ b/proxy/http/HttpConfig.cc
@@@ -1430,11 -1443,22 +1439,13 @@@ HttpConfig::reconfigure(
params->disable_ssl_parenting = INT_TO_BOOL(m_master.disable_ssl_parenting);
params->oride.forward_connect_method = INT_TO_BOOL(m_master.oride.forward_connect_method);
- params->server_max_connections = m_master.server_max_connections;
- params->max_websocket_connections = m_master.max_websocket_connections;
- params->oride.outbound_conntrack = m_master.oride.outbound_conntrack;
- params->global_outbound_conntrack = m_master.global_outbound_conntrack;
-
- // If queuing for outbound connection tracking is enabled without enabling max connections, it is meaningless, so we'll warn
- if (params->global_outbound_conntrack.queue_size > 0 &&
- !(params->oride.outbound_conntrack.max > 0 || params->oride.outbound_conntrack.min > 0)) {
- Warning("'%s' is set, but neither '%s' nor '%s' are "
- "set, please correct your %s",
- OutboundConnTrack::CONFIG_VAR_QUEUE_SIZE.data(), OutboundConnTrack::CONFIG_VAR_MAX.data(),
- OutboundConnTrack::CONFIG_VAR_MIN.data(), ts::filename::RECORDS);
- }
+ params->server_max_connections = m_master.server_max_connections;
+ params->max_websocket_connections = m_master.max_websocket_connections;
+ params->oride.outbound_conntrack = m_master.oride.outbound_conntrack;
++ params->global_outbound_conntrack = m_master.global_outbound_conntrack;
params->oride.attach_server_session_to_client = m_master.oride.attach_server_session_to_client;
params->oride.max_proxy_cycles = m_master.oride.max_proxy_cycles;
+ params->oride.tunnel_activity_check_period = m_master.oride.tunnel_activity_check_period;
params->http_request_line_max_size = m_master.http_request_line_max_size;
params->http_hdr_field_max_size = m_master.http_hdr_field_max_size;
diff --cc proxy/http/HttpSM.cc
index 81ed57e,aef9fc4..cb06c12
--- a/proxy/http/HttpSM.cc
+++ b/proxy/http/HttpSM.cc
@@@ -5225,10 -5263,33 +5262,10 @@@ HttpSM::do_http_server_open(bool raw
if (ccount > t_state.txn_conf->outbound_conntrack.max) {
ct_state.release();
- ink_assert(pending_action.is_empty()); // in case of reschedule must not have already pending.
+ ink_assert(pending_action.empty()); // in case of reschedule must not have already pending.
- // If the queue is disabled, reschedule.
- if (t_state.http_config_param->global_outbound_conntrack.queue_size < 0) {
- ct_state.enqueue();
- ct_state.rescheduled();
- pending_action = eventProcessor.schedule_in(
- this, HRTIME_MSECONDS(t_state.http_config_param->global_outbound_conntrack.queue_delay.count()));
- } else if (t_state.http_config_param->global_outbound_conntrack.queue_size > 0) { // queue enabled, check for a slot
- auto wcount = ct_state.enqueue();
- if (wcount < t_state.http_config_param->global_outbound_conntrack.queue_size) {
- ct_state.rescheduled();
- SMDebug("http", "%s", lbw().print("[{}] queued for {}\0", sm_id, t_state.current.server->dst_addr).data());
- pending_action = eventProcessor.schedule_in(
- this, HRTIME_MSECONDS(t_state.http_config_param->global_outbound_conntrack.queue_delay.count()));
- } else { // the queue is full
- ct_state.dequeue(); // release the queue slot
- ct_state.blocked(); // note the blockage.
- HTTP_INCREMENT_DYN_STAT(http_origin_connections_throttled_stat);
- send_origin_throttled_response();
- }
- } else { // queue size is 0, always block.
- ct_state.blocked();
- HTTP_INCREMENT_DYN_STAT(http_origin_connections_throttled_stat);
- send_origin_throttled_response();
- }
-
+ ct_state.blocked();
+ HTTP_INCREMENT_DYN_STAT(http_origin_connections_throttled_stat);
ct_state.Warn_Blocked(&t_state.txn_conf->outbound_conntrack, sm_id, ccount - 1, &t_state.current.server->dst_addr.sa,
debug_on && is_debug_tag_set("http") ? "http" : nullptr);
send_origin_throttled_response();