This is an automated email from the ASF dual-hosted git repository. zwoop pushed a change to branch quic-latest in repository https://gitbox.apache.org/repos/asf/trafficserver.git.
from 8cc22df Fix #2494 Generate Stateless Reset Token with a configurable value add 2519add Added constructor for ats_scoped_str of std::string and string_view add 244288f cachekey/cacheurl key string compatibility enhancements. add f941be8 Doc: Adding proxy.config.ssl.server.multicert.exit_on_load_fail information add 30b2b9f Add state information add 1c135f6 Fix the wrong pop in Http2DependencyTree deactive add 2d1abee TS-4976: Regularize plugins - server_transform. add 14233c0 Doc: Fix LaTex paper size options to work and not generate a warning. add 10ab755 Doc: Fix warning for footnote in cache arch docs. add 395a742 Doc: Add documentation for MIME header plugin API functions. add 84bc7ab Add null pointer check to server response set status add a0aca6f Fix clang-format add 05f2822 Add missing checks for request url add 813f2f8 Doc: Session and transaction arg functions. add c9213ae Doc: Provide better explanation of HSTS example in header_rewrite. add 79a4045 Test: IpMap update More tests from Larry. conversion to Catch unit test framework. add 8177554 Update TSContSchedule.en.rst add 27cec04 New layout structure with std string & basic string view add 56839d0 Regularize the debug message with rcv_headers_frame add 8733de6 Bump docs version to 7.1.x add 49b4eee cqtq,cqtn,cqtd,cqtt timestamp blog format to be INT again add 84865cc Cleanup / correct buffer sizes for UUIDs add beac658 Stop looping refreshing stale hostDB records add b0c492f Removing the old record when the DNS lookup failed with NXDOMAIN add 9b1d720 Add initializer list for constructor add 60fa5c1 Fixes, I think, coverity issues 1379288 add 42e56e9 Coverity 1379271: Dereference null return add 30c2c35 Added traffic_runroot feature to generate sandbox for programs to run add a50aaf1 Remove the wrong entry from priority queue and insert the new node into queue add 35e5995 coverity 1379269: dereference after null check add c746df2 Fix traffic_layout to not add messages to --json add 7c05be8 Session ticket resumption needs consistent CA-certificate version add 01494e0 Coverity 1379270 Out-of-bounds write add 4836218 Doc: Adding proxy.config.http2.accept_no_activity_timeout and proxy.config.http2.no_activity_timeout_in information add ee9477d Add check on Environment input to validate it exists add 90d8eee TS-4976: Regularize plugins - session_hooks (nee session-1). add e115703 Metalink Plugin: Must not destroy the Transform Contp, only shutdown write on it while received WRITE_COMPLETE add 9270d4f make hostdb.round_robin_max_count configurable add 4849f95 Clean up DNS macros 1. using const int instead of macros. 2. The only limit of DNS response is MAX_DNS_PACKET_LEN based on which other limits can be calculated. add f33e6b1 Adding three connection modes for DNS queries: UDP_ONLY, TCP_RETRY, TCP_ONLY add fddd7d8 Clean up Diags add 7f3df8c Fix the queue when reprioritize add 87ab525 Change from SHA1 to SHA512 add 023cc7f Make swap() in Vec.h a member function of Vec class add ea354cc Doc: Adding API documentation for TSHttpTxnAborted add b4dd48b Redirect test for ATS add 0005909 Removes DES-CBC3-SHA from the default cipher list add a4cae55 corrects HTTP status 0 to 302 on redirect add 7530f77 Issue #2269: self detection. add fe996a8 Optimize NetHandler & PollCont and reduce the redundant code add 6395adc Avoid closing the last netvc if accept_till_done is set add 0eeedac TS-4976: Regularize plugins - ssl_preaccept. add 25a0de4 Out-of-bounds while get port from host field add f6f41f2 Fix map_with_refer to work and add tests for it. add a32f7ed Correctly Handle EVENT_NONE in UnixNetVConnection::acceptEvent add d31adce Resign server.pem for autests to 10 years add b4128c5 Coverity 1379933: Control flow issues (DEADCODE) add a197ef5 microDNS add eb601a3 update README.md add a7be6ec Format python code with autopep8 add dc6e7ea Coverity CID 1380022: FORWARD_NULL add 048815a Optimize acceptFastEvent(): Replace the dup code of UnixNetVConnection::acceptEvent by calling it directly add fa7190b Add 'BufferWriter' class for constructing strings/sequences of characters. add 2aed3f6 Fix coverity issues 1379739 - 1379741 add 103ef38 Fix coverity issues 1379739 add 3bcc7ce Unit tests for AWS Signature Version 4 add 7dc2033 clarifies traffic_ctl dependency on traffic_manager add 9a645fe Test: fix body factory gold files to ignore irrelevant headers. add 8c5ac5b Make sure the length of socket filename do not exceed the sizeof(sun_path) add e3e3577 Coverity: CID 1380037: Resource leaks (RESOURCE_LEAK) add 9ded874 FD leaks when ep.start() failed or cancelled in acceptEvent or con.connect() failed add 06229c0 Corrects validation regex pattern for a config add 0d1ebfa Ran clan-tidy with modernize-use-nullptr add 3e20b07 AWS auth v4: fixed query param value URI-encoding add 1c6c1ae Modernize literal 0 to nullptr add 3f48a26 Ticket file reload shouldn't kill traffic_server process add 7c5737b Updated version of the jenkins autest build script add 2ab5899 TS-4976: Regularize plugins - ssl_sni add 46b6c73 bug fix for event thread names add 7d893d5 Coverity: CID 1380042:Resource leaks (RESOURCE_LEAK) add 23a3f24 S3_auth:uri(En|De)code() pass by ref,not val(master) add 17ae9e7 Build: Change --enable-example-plugins to control both build and install. add 2c26e5a fixing memory leak when ATS serves stale records add f367a30 Fix the implementation of Http2DependencyTree add bc90e20 null transform test add 432c277 test with microDNS add 38d6891 Explain how # of parents relates to fail_threshold total_connect_attempts add 55f7449 Coverity: CID 1380282: Error handling issues (CHECKED_RETURN) add acab1e2 TS-4976: Regularize plugins - ssl_sni_whitelist. add 9c07093 Fix logging of cache stale miss connecton error being reported as TCP_HIT/502 to ERR_CONNECT_FAIL/502. add 338b8ab Fix sizeofDoc silliness. add 2941c0b Fix OS X build. add 6cdc114 Change proxy/logging/LogAccessHttp.h from using 'virtual' to 'override'. add cd5b0c2 TS-9476: Regularize plugins - statistic. add 5946ae2 Cleanup ats_tcp_somaxconn to use std::ifstream. add 132236d Fix logging escapified multi-valued fields so the separator is escapified as well. add ca446aa Improve error message for ts_lua plugin add 2006b17 Optimize: Add startIO & stopIO for NetHandler add 8ba4398 TS-4976: Regularize plugins - thread_1 add 97db22d TS-4976: Regularize plugins - thread_pool. add 896bf81 Delay creation of transaction until user agent sends request. add 59d38ee Docs: Fix warning for statistic.cc include. add ff2c847 Log fields for Connection ID and HTTP/2 Stream ID. add dc1202e updates pre-commit hook to use specific clang-format add e661933 Add option to disable libunwind add 25f302e Error if enable is explicitly passed add 3df8e50 Fix timing error in the tls_hook10 test. add bf64ec2 ink_memory.cc: musl support tiny fix add a29feea Fix lib/perl to do better on 'make clean' to handle changes in the build configuration. add 712823e TS-4976: Regularize plugins - txn_data_sink. add c1a656e Add a metric for tracking RSS of traffic_server add c70e58e Tests: Add logging field test base. Initially test essh for multi-values. add 5b7aabc Optimize: Add startCop & stopCop for InactivityCop add 6999c3d TS-4128: select alternate hook not working for ts_lua plugin add 1b5be26 consolidates functionality into one tcp_client add 19ee9a4 config directory read-only notes add db04b03 TS-4976: Regularize plugins - version add 2eb7d8b uses backoff to launch ts if crash was recent add a26aef8 improves readability add b5b1ab7 uses std::min instead the internal macro add e6cca8a Add forgotten inline keywords in BufferWriter.h . add 3661d50 @OPENSSL_LIBS@ added into automake file add 22733a3 Avoid sending duplicate push promise on same client session #2205 add e638e7d Use std::min and std::max globally add e84cf75 Coverity CID #1224619 Uninitialized members add 6112a9a Add V=1 to the make check builds add 7a3a3f1 Adding plugin to test transaction/session order add 21062b9 Test two continuations for HTTP_*_CLOSE add bbc4b79 Re-arrange ink_platform.h. (Issue #2444) 1) Move unconditional includes to top of file. 2) Remove duplicates. add ccab10c Add milestones for SSL Handshake timings add 388ab2c YTSATS-1464: Support set-redirect with READ_REQUEST_PRE_REMAP_HOOK add 90cb072 Doc: Minor fixups for duplicated milestones and stat typo. add 7438c1a Cleanup: Fix traffic_manager so its checks run if WCCP is enabled. add a3eb650 Replace proxy.config.http.normalize_ae_gzip with normalize_ae w/ Brotli support Issue # 2100 add 8d045df Add string literal support to ts::string_view. add eef4a46 Doc: Clean up comments in null_transform example plugin. add 5a8a0e6 add new TLS milestones add bbd8921 Update document add db77d5e Tests: Clean up file extensions in lib/ts unit tests. add 9fad29f Preserve Accept-Encoding header for H2 Server Push promise. add a8db2e7 Test: Fix timing issues with txn and double tests. Also tweak test_UDPNet to report errors better and use a less common port. add 558347c Make sure all files in the sandbox are readable add b8ce117 Ignoring unit tests add 879fe70 BufferWriter: Add data() method for access to the internal buffer for API consistency with std:string and ts::string_view. add dd7870d Update s3auth test, removed cpp file and added the Catch main define in the unit test file add ba76aea Cleanup: fix rollback to use elevating file operations. add f773210 Support dynamic registration to StatPages. add 3f80dc8 UDPNet: Yet another timing fix for test_UDPnet. add d91662d Add support for Forwarded HTTP header tag (RFC7239). add 22af898 ESI: Make maximum file count runtime configurable. new b44224f Merge branch 'master' into quic-latest 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: .gitignore | 3 + Makefile.am | 4 +- ci/jenkins/bin/autest.sh | 35 +- ci/jenkins/bin/github.sh | 2 +- ci/jenkins/bin/regression.sh | 2 +- cmd/traffic_cop/traffic_cop.cc | 51 +- cmd/traffic_crashlog/traffic_crashlog.cc | 7 +- cmd/traffic_ctl/traffic_ctl.cc | 3 + cmd/traffic_layout/traffic_layout.cc | 32 +- cmd/traffic_manager/Makefile.am | 23 +- cmd/traffic_manager/metrics.cc | 2 +- cmd/traffic_manager/traffic_manager.cc | 66 +- cmd/traffic_top/traffic_top.cc | 1 + configure.ac | 41 +- doc/Makefile.am | 7 +- .../transparent-forward-proxying.en.rst | 3 + doc/admin-guide/files/records.config.en.rst | 104 ++- doc/admin-guide/files/ssl_multicert.config.en.rst | 11 + doc/admin-guide/logging/formatting.en.rst | 27 +- .../monitoring/statistics/core/general.en.rst | 5 + doc/admin-guide/plugins/cachekey.en.rst | 52 ++ doc/admin-guide/plugins/gzip.en.rst | 4 +- doc/admin-guide/plugins/header_rewrite.en.rst | 5 + doc/admin-guide/plugins/ts_lua.en.rst | 9 +- doc/appendices/command-line/traffic_ctl.en.rst | 2 + doc/conf.py | 5 + .../api/functions/TSContSchedule.en.rst | 2 +- .../api/functions/TSHttpArgs.en.rst | 76 ++ .../api/functions/TSHttpOverridableConfig.en.rst | 3 +- ...rFieldCreate.en.rst => TSHttpTxnAborted.en.rst} | 20 +- .../api/functions/TSHttpTxnMilestoneGet.en.rst | 16 +- .../api/functions/TSMimeHdrFieldAppend.en.rst | 21 +- .../api/functions/TSMimeHdrFieldCreate.en.rst | 18 +- .../api/functions/TSUuidCreate.en.rst | 5 +- .../api/types/TSOverridableConfigKey.en.rst | 2 +- .../cache-architecture/data-structures.en.rst | 2 +- .../plugins/adding-statistics.en.rst | 4 +- .../plugins/example-plugins/index.en.rst | 6 +- .../plugins/http-transformations/index.en.rst | 2 +- doc/ext/traffic-server.py | 17 +- doc/static/languages.json | 4 +- example/Makefile.am | 38 +- example/null_transform/null_transform.c | 13 +- .../server_transform.c} | 98 +-- .../session-1.c => session_hooks/session_hooks.c} | 50 +- example/ssl-preaccept/ats-util.h | 64 -- .../ssl_preaccept.cc} | 37 +- .../ssl_preaccept.config | 0 example/{ssl-sni/ssl-sni.cc => ssl_sni/ssl_sni.cc} | 42 +- example/{ssl-sni => ssl_sni}/ssl_sni.config | 0 .../ssl_sni_whitelist.cc} | 26 +- .../ssl_sni_whitelist.config | 0 example/statistic/statistic.cc | 18 +- example/{thread-1 => thread_1}/readme.txt | 2 - .../{thread-1/thread-1.c => thread_1/thread_1.c} | 26 +- example/{thread-pool => thread_pool}/README.txt | 5 +- example/{thread-pool => thread_pool}/TESTPLAN.txt | 12 +- .../include/Makefile.am | 0 example/{thread-pool => thread_pool}/include/gen.c | 0 .../include/gen_inc.sh | 0 example/{thread-pool => thread_pool}/psi.c | 73 +- .../test/SDKTest/SDKtest_server.config | 0 .../test/SDKTest/psi_server.c | 0 .../test/SynTest/Tests/Psi/1.cfg | 0 .../test/SynTest/Tests/Psi/10.cfg | 0 .../test/SynTest/Tests/Psi/11.cfg | 0 .../test/SynTest/Tests/Psi/12.cfg | 0 .../test/SynTest/Tests/Psi/13.cfg | 0 .../test/SynTest/Tests/Psi/2.cfg | 0 .../test/SynTest/Tests/Psi/3.cfg | 0 .../test/SynTest/Tests/Psi/4.cfg | 0 .../test/SynTest/Tests/Psi/5.cfg | 0 .../test/SynTest/Tests/Psi/6.cfg | 0 .../test/SynTest/Tests/Psi/7.cfg | 0 .../test/SynTest/Tests/Psi/8.cfg | 0 .../test/SynTest/Tests/Psi/9.cfg | 0 .../test/SynTest/Tests/Psi/psi_files/tc10_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc11_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc12_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc13_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc1_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc2_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc3_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc4_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc5_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc6_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc7_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc8_file.txt | 0 .../test/SynTest/Tests/Psi/psi_files/tc9_file.txt | 0 .../test/SynTest/system.cfg | 0 .../test/SynTest/tests_psi.cfg | 0 example/{thread-pool => thread_pool}/thread.c | 4 +- example/{thread-pool => thread_pool}/thread.h | 2 + .../txn_data_sink.c} | 4 +- example/version/version.c | 19 +- iocore/cache/Cache.cc | 14 +- iocore/cache/CacheDir.cc | 4 +- iocore/cache/CacheRead.cc | 4 +- iocore/cache/CacheWrite.cc | 16 +- iocore/cache/P_CacheBC.h | 7 +- iocore/cache/P_CacheVol.h | 15 +- iocore/cache/Store.cc | 14 +- iocore/dns/DNS.cc | 276 ++++-- iocore/dns/DNSConnection.cc | 3 + iocore/dns/I_DNSProcessor.h | 17 +- iocore/dns/P_DNSConnection.h | 17 + iocore/dns/P_DNSProcessor.h | 9 +- iocore/dns/SRV.h | 5 +- iocore/eventsystem/I_Continuation.h | 2 +- iocore/eventsystem/I_SocketManager.h | 8 +- iocore/eventsystem/P_UnixSocketManager.h | 2 +- iocore/eventsystem/UnixEventProcessor.cc | 4 +- iocore/hostdb/HostDB.cc | 46 +- iocore/hostdb/I_HostDBProcessor.h | 5 +- iocore/hostdb/P_HostDBProcessor.h | 23 +- iocore/net/Makefile.am | 2 +- iocore/net/NetVCTest.cc | 2 +- iocore/net/P_InkBulkIO.h | 2 +- iocore/net/P_SSLConfig.h | 2 +- iocore/net/P_SSLNetVConnection.h | 2 + iocore/net/P_UnixNet.h | 107 ++- iocore/net/P_UnixNetVConnection.h | 1 + iocore/net/SSLConfig.cc | 41 +- iocore/net/SSLNetVConnection.cc | 59 +- iocore/net/SSLUtils.cc | 20 +- iocore/net/UnixNet.cc | 189 ++-- iocore/net/UnixNetAccept.cc | 54 +- iocore/net/UnixNetVConnection.cc | 123 ++- iocore/net/UnixUDPNet.cc | 4 +- iocore/net/test_I_UDPNet.cc | 37 +- iocore/utils/I_Machine.h | 8 + iocore/utils/Machine.cc | 125 ++- lib/cppapi/Transaction.cc | 4 +- lib/perl/Makefile.am | 5 +- lib/records/I_RecCore.h | 27 +- lib/records/RecCore.cc | 38 +- lib/records/RecHttp.cc | 2 +- lib/ts/BufferWriter.h | 336 ++++++++ lib/ts/Diags.cc | 161 ++-- lib/ts/Diags.h | 36 +- lib/ts/HashSip.cc | 2 +- lib/ts/I_Layout.h | 62 +- lib/ts/IpMap.h | 38 +- lib/ts/IpMapTest.cc | 283 ------ lib/ts/Layout.cc | 206 +++-- lib/ts/Makefile.am | 8 +- lib/ts/PriorityQueue.h | 18 + lib/ts/apidefs.h.in | 9 +- lib/ts/ink_args.cc | 3 + lib/ts/ink_args.h | 4 + lib/ts/ink_cap.cc | 11 + lib/ts/ink_cap.h | 2 + lib/ts/ink_defs.h | 27 - lib/ts/ink_inet.cc | 16 +- lib/ts/ink_memory.cc | 4 +- lib/ts/ink_memory.h | 48 ++ lib/ts/ink_platform.h | 81 +- lib/ts/ink_sock.cc | 5 + lib/ts/runroot.cc | 144 ++++ lib/ts/string_view.h | 13 +- lib/ts/test_PriorityQueue.cc | 93 ++ lib/ts/unit-tests/test_BufferWriter.cc | 322 +++++++ lib/ts/unit-tests/test_IpMap.cc | 606 +++++++++++++ lib/ts/unit-tests/test_layout.cc | 89 ++ .../{string_view.cpp => test_string_view.cc} | 63 +- lib/ts/unit-tests/{main.cpp => unit_test_main.cc} | 4 +- mgmt/Alarms.cc | 2 +- mgmt/FileManager.cc | 2 +- mgmt/LocalManager.cc | 24 +- mgmt/ProcessManager.cc | 17 +- mgmt/RecordsConfig.cc | 15 +- mgmt/Rollback.cc | 11 +- mgmt/api/CoreAPIRemote.cc | 2 +- mgmt/api/NetworkUtilsRemote.cc | 15 +- mgmt/utils/MgmtSocket.cc | 20 + mgmt/utils/MgmtSocket.h | 6 + plugins/esi/README.combo | 7 + plugins/esi/combo_handler.cc | 76 +- plugins/esi/lib/HandlerManager.h | 2 +- plugins/experimental/cachekey/cachekey.cc | 13 +- plugins/experimental/cachekey/cachekey.h | 5 +- plugins/experimental/cachekey/configs.cc | 40 +- plugins/experimental/cachekey/configs.h | 26 +- plugins/experimental/cachekey/pattern.cc | 24 +- plugins/experimental/cachekey/pattern.h | 5 +- plugins/experimental/cachekey/plugin.cc | 12 +- .../header_normalize/header_normalize.cc | 1 + plugins/experimental/metalink/metalink.cc | 19 +- plugins/experimental/ts_lua/ts_lua.c | 16 +- plugins/experimental/ts_lua/ts_lua_common.h | 2 - plugins/experimental/ts_lua/ts_lua_hook.c | 14 - plugins/experimental/ts_lua/ts_lua_http_config.c | 6 +- .../experimental/ts_lua/ts_lua_http_milestone.c | 8 +- plugins/experimental/ts_lua/ts_lua_log.c | 2 +- .../experimental/ts_lua/ts_lua_server_request.c | 4 + .../experimental/ts_lua/ts_lua_server_response.c | 8 +- plugins/experimental/ts_lua/ts_lua_util.c | 9 - plugins/header_rewrite/operators.cc | 96 ++- plugins/header_rewrite/operators.h | 11 + plugins/s3_auth/Makefile.inc | 8 + plugins/s3_auth/aws_auth_v4.cc | 49 +- plugins/s3_auth/aws_auth_v4.h | 105 +-- .../s3_auth/{aws_auth_v4.h => aws_auth_v4_wrap.h} | 90 +- plugins/s3_auth/s3_auth.cc | 3 +- plugins/s3_auth/unit-tests/test_aws_auth_v4.cc | 953 +++++++++++++++++++++ plugins/s3_auth/unit-tests/test_aws_auth_v4.h | 146 ++++ plugins/tcpinfo/tcpinfo.cc | 2 +- proxy/Crash.cc | 2 +- proxy/InkAPI.cc | 75 +- proxy/InkAPITest.cc | 236 ++--- proxy/InkAPITestTool.cc | 4 +- proxy/Main.cc | 85 +- proxy/ParentSelection.cc | 46 +- proxy/ParentSelection.h | 1 + proxy/Plugin.cc | 8 +- proxy/PluginVC.cc | 12 +- proxy/ProxyClientTransaction.h | 5 + proxy/StatPages.cc | 3 + proxy/StatPages.h | 1 + proxy/config/records.config.default.in | 2 +- proxy/hdrs/HTTP.cc | 7 +- proxy/hdrs/HTTP.h | 2 +- proxy/hdrs/HdrToken.cc | 12 +- proxy/hdrs/HttpCompat.cc | 2 +- proxy/hdrs/MIME.cc | 8 +- proxy/hdrs/MIME.h | 2 + proxy/hdrs/Makefile.am | 2 +- proxy/http/ForwardedConfig.cc | 189 ++++ proxy/http/Http1ClientSession.cc | 2 +- proxy/http/Http1ClientSession.h | 4 +- proxy/http/Http1ClientTransaction.h | 10 + proxy/http/HttpConfig.cc | 49 +- proxy/http/HttpConfig.h | 41 +- proxy/http/HttpSM.cc | 5 + proxy/http/HttpTransact.cc | 63 +- proxy/http/HttpTransact.h | 2 +- proxy/http/HttpTransactCache.cc | 30 +- proxy/http/HttpTransactCache.h | 9 +- proxy/http/HttpTransactHeaders.cc | 315 ++++++- proxy/http/HttpTransactHeaders.h | 9 + proxy/http/HttpTunnel.cc | 6 +- proxy/http/Makefile.am | 17 +- proxy/http/remap/RemapConfig.cc | 2 +- proxy/http/remap/RemapProcessor.cc | 3 +- proxy/http/unit-tests/sym-links/MemView.cc | 1 + proxy/http/unit-tests/test_ForwardedConfig.cc | 169 ++++ .../http/unit-tests/test_ForwardedConfig_mocks.cc | 86 ++ proxy/http2/HTTP2.cc | 4 +- proxy/http2/HTTP2.h | 1 + proxy/http2/Http2ClientSession.cc | 6 + proxy/http2/Http2ClientSession.h | 23 + proxy/http2/Http2ConnectionState.cc | 51 +- proxy/http2/Http2ConnectionState.h | 2 +- proxy/http2/Http2DependencyTree.h | 260 +++--- proxy/http2/Http2Stream.cc | 4 +- proxy/http2/Http2Stream.h | 18 +- proxy/http2/Makefile.am | 2 +- proxy/http2/test_Http2DependencyTree.cc | 367 ++++++-- proxy/logcat.cc | 5 +- proxy/logging/Log.cc | 26 +- proxy/logging/LogAccess.cc | 62 +- proxy/logging/LogAccess.h | 22 +- proxy/logging/LogAccessHttp.cc | 160 ++-- proxy/logging/LogAccessHttp.h | 183 ++-- proxy/logging/LogConfig.cc | 2 +- proxy/logging/LogField.cc | 2 + proxy/logging/LogStandalone.cc | 6 +- proxy/logstats.cc | 11 +- tests/bootstrap.py | 3 +- tests/gold_tests/autest-site/microDNS.test.ext | 77 ++ tests/gold_tests/autest-site/ports.py | 6 +- .../gold_tests/body_factory/gold/http-get-200.gold | 4 +- .../gold_tests/body_factory/gold/http-get-304.gold | 5 +- .../body_factory/gold/http-head-200.gold | 4 +- .../body_factory/http204_response.test.py | 8 +- .../body_factory/http204_response_plugin.test.py | 6 +- .../body_factory/http304_response.test.py | 2 +- tests/gold_tests/continuations/double.test.py | 124 +++ tests/gold_tests/h2/http2.test.py | 5 +- tests/gold_tests/headers/data/www.http408.test.txt | 5 + .../headers/data/www.redirect0.test_get.txt | 2 + .../headers/domain-blacklist-30x.test.py | 95 +- tests/gold_tests/headers/forwarded-observer.py | 63 ++ tests/gold_tests/headers/forwarded.gold | 41 + tests/gold_tests/headers/forwarded.test.py | 289 +++++++ tests/gold_tests/headers/http408.test.py | 22 +- tests/gold_tests/headers/normalize_ae.gold | 104 +++ tests/gold_tests/headers/normalize_ae.test.py | 145 ++++ .../headers/normalize_ae_observer.py} | 31 +- tests/gold_tests/headers/redirect0_get.gold | 22 + tests/gold_tests/logging/ccid_ctid.test.py | 107 +++ .../logging/ccid_ctid_observer.py} | 45 +- tests/gold_tests/logging/gold/field-test.gold | 3 + tests/gold_tests/logging/log-field.test.py | 102 +++ .../null_transform/gold/null_transform-200.gold | 14 + .../null_transform/gold/null_transform-tag.gold | 1 + .../null_transform/null_transform.test.py | 84 ++ tests/gold_tests/redirect/gold/redirect.gold | 5 + tests/gold_tests/redirect/redirect.test.py | 63 ++ tests/gold_tests/remap/gold/remap-DNS-200.gold | 14 + tests/gold_tests/remap/gold/remap-redirect.gold | 15 + tests/gold_tests/remap/gold/remap-referer-hit.gold | 14 + .../gold_tests/remap/gold/remap-referer-miss.gold | 15 + tests/gold_tests/remap/remap_http.test.py | 51 +- tests/gold_tests/tls_hooks/tls_hooks12.test.py | 6 +- tests/gold_tests/transaction/txn.test.py | 121 +++ tests/tools/microDNS/README.md | 46 + tests/tools/microDNS/sample_zonefile.json | 9 + tests/tools/microDNS/uDNS.py | 181 ++++ tests/tools/plugins/continuations_verify.cc | 178 ++++ .../tools/plugins}/null_transform.c | 0 tests/tools/plugins/ssl_hook_test.cc | 2 +- tests/tools/plugins/ssntxnorder_verify.cc | 328 +++++++ tests/tools/tcp_408_client.py | 63 -- tests/tools/tcp_client.py | 23 +- tests/tools/traffic-replay/Config.py | 2 +- tests/tools/traffic-replay/RandomReplay.py | 13 +- tests/tools/traffic-replay/WorkerTask.py | 2 +- tests/tools/traffic-replay/__main__.py | 13 +- tests/tools/traffic-replay/mainProcess.py | 2 +- .../include => tests/unit_tests}/Makefile.am | 11 +- tools/clang-format.sh | 103 ++- tools/git/pre-commit | 4 +- tools/jtest/jtest.cc | 4 +- 324 files changed, 9596 insertions(+), 3007 deletions(-) create mode 100644 doc/developer-guide/api/functions/TSHttpArgs.en.rst copy doc/developer-guide/api/functions/{TSMimeHdrFieldCreate.en.rst => TSHttpTxnAborted.en.rst} (65%) rename example/{server-transform/server-transform.c => server_transform/server_transform.c} (85%) rename example/{session-1/session-1.c => session_hooks/session_hooks.c} (61%) delete mode 100644 example/ssl-preaccept/ats-util.h rename example/{ssl-preaccept/ssl-preaccept.cc => ssl_preaccept/ssl_preaccept.cc} (86%) rename example/{ssl-preaccept => ssl_preaccept}/ssl_preaccept.config (100%) rename example/{ssl-sni/ssl-sni.cc => ssl_sni/ssl_sni.cc} (84%) rename example/{ssl-sni => ssl_sni}/ssl_sni.config (100%) rename example/{ssl-sni-whitelist/ssl-sni-whitelist.cc => ssl_sni_whitelist/ssl_sni_whitelist.cc} (87%) rename example/{ssl-sni-whitelist => ssl_sni_whitelist}/ssl_sni_whitelist.config (100%) rename example/{thread-1 => thread_1}/readme.txt (96%) rename example/{thread-1/thread-1.c => thread_1/thread_1.c} (78%) rename example/{thread-pool => thread_pool}/README.txt (97%) rename example/{thread-pool => thread_pool}/TESTPLAN.txt (90%) copy example/{thread-pool => thread_pool}/include/Makefile.am (100%) rename example/{thread-pool => thread_pool}/include/gen.c (100%) rename example/{thread-pool => thread_pool}/include/gen_inc.sh (100%) rename example/{thread-pool => thread_pool}/psi.c (94%) rename example/{thread-pool => thread_pool}/test/SDKTest/SDKtest_server.config (100%) rename example/{thread-pool => thread_pool}/test/SDKTest/psi_server.c (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/1.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/10.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/11.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/12.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/13.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/2.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/3.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/4.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/5.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/6.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/7.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/8.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/9.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc10_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc11_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc12_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc13_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc1_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc2_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc3_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc4_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc5_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc6_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc7_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc8_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/Tests/Psi/psi_files/tc9_file.txt (100%) rename example/{thread-pool => thread_pool}/test/SynTest/system.cfg (100%) rename example/{thread-pool => thread_pool}/test/SynTest/tests_psi.cfg (100%) rename example/{thread-pool => thread_pool}/thread.c (96%) rename example/{thread-pool => thread_pool}/thread.h (98%) rename example/{txn-data-sink/txn-data-sink.c => txn_data_sink/txn_data_sink.c} (98%) create mode 100644 lib/ts/BufferWriter.h delete mode 100644 lib/ts/IpMapTest.cc create mode 100644 lib/ts/runroot.cc create mode 100644 lib/ts/unit-tests/test_BufferWriter.cc create mode 100644 lib/ts/unit-tests/test_IpMap.cc create mode 100644 lib/ts/unit-tests/test_layout.cc rename lib/ts/unit-tests/{string_view.cpp => test_string_view.cc} (91%) rename lib/ts/unit-tests/{main.cpp => unit_test_main.cc} (96%) copy plugins/s3_auth/{aws_auth_v4.h => aws_auth_v4_wrap.h} (53%) create mode 100644 plugins/s3_auth/unit-tests/test_aws_auth_v4.cc create mode 100644 plugins/s3_auth/unit-tests/test_aws_auth_v4.h create mode 100644 proxy/http/ForwardedConfig.cc create mode 120000 proxy/http/unit-tests/sym-links/MemView.cc create mode 100644 proxy/http/unit-tests/test_ForwardedConfig.cc create mode 100644 proxy/http/unit-tests/test_ForwardedConfig_mocks.cc create mode 100644 tests/gold_tests/autest-site/microDNS.test.ext create mode 100644 tests/gold_tests/continuations/double.test.py create mode 100644 tests/gold_tests/headers/data/www.http408.test.txt create mode 100644 tests/gold_tests/headers/data/www.redirect0.test_get.txt create mode 100644 tests/gold_tests/headers/forwarded-observer.py create mode 100644 tests/gold_tests/headers/forwarded.gold create mode 100644 tests/gold_tests/headers/forwarded.test.py create mode 100644 tests/gold_tests/headers/normalize_ae.gold create mode 100644 tests/gold_tests/headers/normalize_ae.test.py copy tests/{tools/traffic-replay/Config.py => gold_tests/headers/normalize_ae_observer.py} (58%) create mode 100644 tests/gold_tests/headers/redirect0_get.gold create mode 100644 tests/gold_tests/logging/ccid_ctid.test.py copy tests/{tools/traffic-replay/Config.py => gold_tests/logging/ccid_ctid_observer.py} (52%) create mode 100644 tests/gold_tests/logging/gold/field-test.gold create mode 100644 tests/gold_tests/logging/log-field.test.py create mode 100644 tests/gold_tests/null_transform/gold/null_transform-200.gold create mode 100644 tests/gold_tests/null_transform/gold/null_transform-tag.gold create mode 100644 tests/gold_tests/null_transform/null_transform.test.py create mode 100644 tests/gold_tests/redirect/gold/redirect.gold create mode 100644 tests/gold_tests/redirect/redirect.test.py create mode 100644 tests/gold_tests/remap/gold/remap-DNS-200.gold create mode 100644 tests/gold_tests/remap/gold/remap-redirect.gold create mode 100644 tests/gold_tests/remap/gold/remap-referer-hit.gold create mode 100644 tests/gold_tests/remap/gold/remap-referer-miss.gold create mode 100644 tests/gold_tests/transaction/txn.test.py create mode 100644 tests/tools/microDNS/README.md create mode 100644 tests/tools/microDNS/sample_zonefile.json create mode 100644 tests/tools/microDNS/uDNS.py create mode 100644 tests/tools/plugins/continuations_verify.cc copy {example/null_transform => tests/tools/plugins}/null_transform.c (100%) create mode 100644 tests/tools/plugins/ssntxnorder_verify.cc delete mode 100644 tests/tools/tcp_408_client.py rename {example/thread-pool/include => tests/unit_tests}/Makefile.am (89%) -- To stop receiving notification emails like this one, please contact ['"commits@trafficserver.apache.org" <commits@trafficserver.apache.org>'].