You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2017/11/28 23:51:51 UTC
[trafficserver] branch quic-latest updated (7db8876 -> 837b022)
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 7db8876 Remove timestamp section from ACK frame
add 2fd91a3 Cleanup of Continuation class initialization
add 4d4283e Unify H2 log format
add 22e6bf6 YTSATS-1222: SNI based Configuration for traffic server
add 89e388e corrects calls to TSContSchedule
add 323f0f7 fix traffic_wccp makefile
add 9a93d32 Cancel closing if Http2SendDataFrameResult is NO_WINDOW
add caff1db Get rid of include unordered_map
add 8a53cf1 TsLuaConfig: Fix virtual destructor issue.
add 98a2d2d Add support for TSIpAddrParse as a conveninent function to parse IP address
add 5f4271b fix text width for documentation
add d07b79c Change function name
add 79c31f3 fix typo
add d77aa3f use string_view
add 626f589 Remove multiprocessing.Queue.qsize() from traffic_replay
add 4209cb6 Doc: Updates to cache internals.
add 41876c8 modified uDNS AuTest extension
add 3669b0c Fix compile error on Ubuntu.
add 334d4a9 Do not try to open the resolv_conf file if it's nullptr. ASAN related fix.
add b75e4e1 Fix for macOSX build error
add 3fbd0d2 expands TSHostLookup documentation
add a64817a Fix include issue in null_transform
add e7534ac corrects response reason when failing to connect to origin
add d8c814a Add configuration for per-client IP debugging
add e2bccd5 Fix a crash that a SSL callback gets netvc from a wrong place
add 84b2e8b Move ts/Vec to ts/Map
add 7a242d2 header_rewrite: Allow set-debug in READ_RESPONSE_HDR_HOOK.
add 329c021 TS API and hooks to manipulate the ATS specific session cache and session ticket keys.
add 2354e7a add openssh flags that we need to build plugins with custom SSL correctly
add 683df9a Doc: Fix up TSOverridable config values. Copied directly from source. Also changed from member to macro because I think macro overall works better in this aspect.
add f43af44 Fixed broken build on OSX where st_mtim is not defined
add 4b5218f add autest for post redirection
add 5019209 make it python3 compatible
add 9dd7597 Clean up tls test
add 2aee00a Fixed build on Ubuntu, errors ignoring return value
add 74027a1 Doc: Fix build warnings - SSL Session, Overridable Config.
add a0b5bd7 Coverity: removing null pointer dereference
add 7524922 Rename prepare_plugin to PreparePlugin to follow naming convention
add 943f789 Fixed another build issue on Ubuntu, errors ignoring return value
add d1fdba4 coverity 1382795: Pointer to local outside scope
add 5526cb2 coverity 1382799, 1382796: Unchecked return value
add 6c66e54 Delete ssl_SNI.config from tests/min_cfg
add 5347ac9 coverity 1382722: Unchecked return value
add 91f1bb7 Doc: Add Layer 4 / SNI Routing documentation.
add 69343fe Move NetHandler initialization to be static and not per thread. Remove update race conditions. Related to issue #2761
add 18c76c5 Adds some basic documentation for traffic_logstats
add 313508c Add protocol metrics to traffic_logstats
add 2f3f868 Enable WCCP building on the Github builds
add ecb9b9c Fix a number of tests
add edbb969 Cleans up some build issue and unecessary casts
new 837b022 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:
Makefile.am | 2 +-
ci/jenkins/bin/github.sh | 1 +
cmd/traffic_layout/engine.cc | 9 +-
cmd/traffic_layout/traffic_layout.cc | 1 +
cmd/traffic_manager/AddConfigFilesHere.cc | 1 +
cmd/traffic_manager/traffic_manager.cc | 2 +
cmd/traffic_wccp/Makefile.am | 1 +
doc/admin-guide/files/index.en.rst | 6 +-
doc/admin-guide/files/records.config.en.rst | 13 +-
.../files/ssl_server_name.config.en.rst | 141 +++
doc/admin-guide/index.en.rst | 2 +-
doc/admin-guide/layer-4-routing.en.rst | 128 +++
doc/admin-guide/plugins/header_rewrite.en.rst | 132 +--
.../command-line/traffic_logstats.en.rst | 24 +-
doc/conf.py | 5 +
.../api/functions/TSHostLookup.en.rst | 6 +
.../api/functions/TSHostLookupResultAddrGet.en.rst | 14 +
.../api/functions/TSHttpOverridableConfig.en.rst | 211 ++--
...xnServerPush.en.rst => TSIpStringToAddr.en.rst} | 28 +-
.../api/functions/TSSslSession.en.rst | 67 ++
doc/developer-guide/api/functions/TSTypes.en.rst | 2 +
doc/developer-guide/api/types/CoreTypes.en.rst | 12 +
doc/developer-guide/api/types/SystemTypes.en.rst | 7 +
.../api/types/TSOverridableConfigKey.en.rst | 217 ++--
.../types/TSSslSession.en.rst} | 35 +-
.../cache-architecture/architecture.en.rst | 71 +-
.../cache-architecture/data-structures.en.rst | 182 +++-
.../cache-architecture/images/span-header.svg | 1 +
.../cache-architecture/images/stripe-header.svg | 1 +
doc/developer-guide/plugins/actions/index.en.rst | 4 +-
.../plugins/hooks-and-transactions/index.en.rst | 1 +
.../hooks-and-transactions/ssl-session-api.en.rst | 82 ++
.../ats_pagespeed/gzip => doc/uml}/Makefile | 13 +-
doc/uml/images/.gitignore | 5 +
doc/uml/images/l4-basic-sequence.svg | 30 +
doc/uml/images/l4-example-cdn-layout.svg | 27 +
doc/uml/images/l4-sni-routing-seq.svg | 34 +
doc/uml/l4-basic-sequence.uml | 24 +
doc/uml/l4-example-cdn-layout.uml | 21 +
doc/uml/l4-sni-routing-seq.uml | 28 +
doc/uml/l4-tcp-routing.uml | 23 +
example/null_transform/null_transform.c | 8 +-
iocore/cache/Cache.cc | 1 +
iocore/dns/DNS.cc | 3 +-
iocore/eventsystem/I_Continuation.h | 22 +-
iocore/eventsystem/Thread.cc | 2 +-
iocore/net/LuaSNIConfig.cc | 127 +++
iocore/net/LuaSNIConfig.h | 114 ++
iocore/net/Makefile.am | 13 +
iocore/net/P_SNIActionPerformer.h | 100 ++
iocore/net/P_SSLConfig.h | 17 +-
iocore/net/P_SSLNetVConnection.h | 8 +
iocore/net/P_SSLSNI.h | 85 ++
iocore/net/P_SSLUtils.h | 63 ++
iocore/net/P_UnixNet.h | 74 +-
iocore/net/P_UnixNetVConnection.h | 1 +
iocore/{dns/P_DNS.h => net/SNIActionPerformer.cc} | 43 +-
iocore/net/SSLCertLookup.cc | 20 +-
iocore/net/SSLConfig.cc | 64 +-
iocore/net/SSLNetProcessor.cc | 4 +-
iocore/net/SSLNetVConnection.cc | 92 +-
iocore/net/SSLSNIConfig.cc | 240 +++++
iocore/net/SSLSessionCache.cc | 81 +-
iocore/net/SSLSessionCache.h | 23 +-
iocore/net/SSLUtils.cc | 61 +-
iocore/net/UnixNet.cc | 191 ++--
iocore/net/UnixNetProcessor.cc | 4 +
iocore/net/UnixNetVConnection.cc | 2 +-
iocore/net/test_I_UDPNet.cc | 4 +-
lib/Makefile.am | 2 +-
lib/ts/ContFlags.cc | 32 +-
lib/ts/ContFlags.h | 10 +-
lib/ts/Diags.cc | 4 +-
lib/ts/Diags.h | 14 +-
lib/ts/Makefile.am | 2 -
lib/ts/Map.h | 1094 ++++++++++++++++++-
lib/ts/Vec.cc | 210 ----
lib/ts/Vec.h | 1114 --------------------
lib/ts/apidefs.h.in | 17 +-
lib/ts/ink_res_init.cc | 2 +-
lib/ts/test_Vec.cc | 177 +++-
lib/tsconfig/Makefile.am | 6 +-
.../tsconfig/TsConfigLua.cc | 41 +-
lib/tsconfig/TsConfigLua.h | 195 ++++
mgmt/ProxyConfig.cc | 1 -
mgmt/RecordsConfig.cc | 6 +
mgmt/utils/MgmtUtils.h | 2 +
plugins/experimental/ts_lua/ts_lua_fetch.c | 40 +-
plugins/header_rewrite/operators.cc | 1 +
proxy/InkAPI.cc | 76 ++
proxy/InkAPIInternal.h | 1 +
proxy/InkAPITest.cc | 3 +-
proxy/Main.cc | 29 +-
proxy/Makefile.am | 1 +
proxy/ParentSelectionStrategy.cc | 1 +
proxy/api/ts/experimental.h | 3 +
proxy/api/ts/ts.h | 5 +
proxy/config/Makefile.am | 1 +
proxy/config/ssl_server_name.config.default | 36 +
proxy/http/HttpDebugNames.cc | 2 +
proxy/http/HttpSM.cc | 71 +-
proxy/http/HttpServerSession.cc | 2 +
proxy/http/HttpTransact.cc | 46 +-
proxy/http/remap/RemapConfig.cc | 2 +-
proxy/http/remap/RemapProcessor.cc | 1 -
proxy/http2/Http2ConnectionState.cc | 116 +-
proxy/http2/Http2ConnectionState.h | 14 +-
proxy/http2/Http2Stream.cc | 41 +-
proxy/logstats.cc | 42 +-
proxy/shared/DiagsConfig.cc | 2 +-
proxy/tests/logstats.json | 4 +
proxy/tests/logstats.summary | 6 +
tests/README.md | 98 +-
tests/gold_tests/autest-site/build.test.ext | 53 +
tests/gold_tests/autest-site/conditions.test.ext | 5 +
tests/gold_tests/autest-site/init.cli.ext | 4 +-
tests/gold_tests/autest-site/microDNS.test.ext | 88 +-
tests/gold_tests/autest-site/microserver.test.ext | 7 +-
tests/gold_tests/autest-site/setup.cli.ext | 42 +-
.../gold_tests/autest-site/trafficserver.test.ext | 19 +-
.../autest-site/trafficserver_plugins.test.ext | 3 +
tests/gold_tests/basic/basic-manager.test.py | 3 +-
.../body_factory/http204_response_plugin.test.py | 2 +-
tests/gold_tests/continuations/double.test.py | 6 +-
.../headers/general-connection-failure-502.gold | 7 +
.../general-connection-failure-502.test.py} | 31 +-
.../null_transform/gold/null_transform-200.gold | 9 +-
.../null_transform/null_transform.test.py | 15 +-
tests/gold_tests/redirect/redirect.test.py | 23 +-
.../{redirect.test.py => redirect_post.test.py} | 27 +-
tests/gold_tests/redirect/zone.json | 8 +
tests/gold_tests/remap/remap_http.test.py | 4 +-
tests/gold_tests/tls/ssl-post.c | 4 +-
tests/gold_tests/tls/tls.test.py | 21 +-
tests/gold_tests/tls_hooks/tls_hooks.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks10.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks11.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks12.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks2.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks3.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks4.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks6.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks7.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks8.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks9.test.py | 2 +-
tests/gold_tests/transaction/txn.test.py | 50 +-
tests/tools/plugins/null_transform.c | 21 +-
tests/tools/traffic-replay/Scheduler.py | 1 -
tools/check-unused-dependencies | 4 +-
tools/tsxs.in | 13 +-
150 files changed, 4799 insertions(+), 2367 deletions(-)
create mode 100644 doc/admin-guide/files/ssl_server_name.config.en.rst
create mode 100644 doc/admin-guide/layer-4-routing.en.rst
copy doc/developer-guide/api/functions/{TSHttpTxnServerPush.en.rst => TSIpStringToAddr.en.rst} (59%)
create mode 100644 doc/developer-guide/api/functions/TSSslSession.en.rst
copy doc/developer-guide/{plugins/getting-started/plugin-registration-and-version-checking.en.rst => api/types/TSSslSession.en.rst} (52%)
create mode 100644 doc/developer-guide/cache-architecture/images/span-header.svg
create mode 100755 doc/developer-guide/cache-architecture/images/stripe-header.svg
create mode 100644 doc/developer-guide/plugins/hooks-and-transactions/ssl-session-api.en.rst
copy {plugins/experimental/ats_pagespeed/gzip => doc/uml}/Makefile (74%)
create mode 100644 doc/uml/images/.gitignore
create mode 100644 doc/uml/images/l4-basic-sequence.svg
create mode 100644 doc/uml/images/l4-example-cdn-layout.svg
create mode 100644 doc/uml/images/l4-sni-routing-seq.svg
create mode 100644 doc/uml/l4-basic-sequence.uml
create mode 100644 doc/uml/l4-example-cdn-layout.uml
create mode 100644 doc/uml/l4-sni-routing-seq.uml
create mode 100644 doc/uml/l4-tcp-routing.uml
create mode 100644 iocore/net/LuaSNIConfig.cc
create mode 100644 iocore/net/LuaSNIConfig.h
create mode 100644 iocore/net/P_SNIActionPerformer.h
create mode 100644 iocore/net/P_SSLSNI.h
copy iocore/{dns/P_DNS.h => net/SNIActionPerformer.cc} (57%)
create mode 100644 iocore/net/SSLSNIConfig.cc
delete mode 100644 lib/ts/Vec.cc
delete mode 100644 lib/ts/Vec.h
copy plugins/experimental/ats_pagespeed/ats_log_message_handler.h => lib/tsconfig/TsConfigLua.cc (61%)
create mode 100644 lib/tsconfig/TsConfigLua.h
create mode 100644 proxy/config/ssl_server_name.config.default
create mode 100644 tests/gold_tests/autest-site/build.test.ext
copy proxy/config/body_factory/default/connect#failed_connect => tests/gold_tests/headers/general-connection-failure-502.gold (63%)
copy tests/gold_tests/{body_factory/http_head_no_origin.test.py => headers/general-connection-failure-502.test.py} (57%)
copy tests/gold_tests/redirect/{redirect.test.py => redirect_post.test.py} (61%)
create mode 100644 tests/gold_tests/redirect/zone.json
--
To stop receiving notification emails like this one, please contact
['"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>'].
[trafficserver] 01/01: Merge branch 'master' into quic-latest
Posted by zw...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch quic-latest
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
commit 837b02218eef2ec8fb3ca48b382efc8422b89dfe
Merge: 7db8876 edbb969
Author: Leif Hedstrom <zw...@apache.org>
AuthorDate: Tue Nov 28 16:49:18 2017 -0700
Merge branch 'master' into quic-latest
* master: (49 commits)
Cleans up some build issue and unecessary casts
Fix a number of tests
Enable WCCP building on the Github builds
Add protocol metrics to traffic_logstats
Adds some basic documentation for traffic_logstats
Move NetHandler initialization to be static and not per thread. Remove update race conditions. Related to issue #2761
Doc: Add Layer 4 / SNI Routing documentation.
coverity 1382722: Unchecked return value
Delete ssl_SNI.config from tests/min_cfg
coverity 1382799, 1382796: Unchecked return value
coverity 1382795: Pointer to local outside scope
Fixed another build issue on Ubuntu, errors ignoring return value
Rename prepare_plugin to PreparePlugin to follow naming convention
Coverity: removing null pointer dereference
Doc: Fix build warnings - SSL Session, Overridable Config.
Fixed build on Ubuntu, errors ignoring return value
Clean up tls test
make it python3 compatible
add autest for post redirection
Fixed broken build on OSX where st_mtim is not defined
...
Conflicts:
proxy/Main.cc
Makefile.am | 2 +-
ci/jenkins/bin/github.sh | 1 +
cmd/traffic_layout/engine.cc | 9 +-
cmd/traffic_layout/traffic_layout.cc | 1 +
cmd/traffic_manager/AddConfigFilesHere.cc | 1 +
cmd/traffic_manager/traffic_manager.cc | 2 +
cmd/traffic_wccp/Makefile.am | 1 +
doc/admin-guide/files/index.en.rst | 6 +-
doc/admin-guide/files/records.config.en.rst | 13 +-
.../files/ssl_server_name.config.en.rst | 141 +++
doc/admin-guide/index.en.rst | 2 +-
doc/admin-guide/layer-4-routing.en.rst | 128 +++
doc/admin-guide/plugins/header_rewrite.en.rst | 132 +--
.../command-line/traffic_logstats.en.rst | 24 +-
doc/conf.py | 5 +
.../api/functions/TSHostLookup.en.rst | 6 +
.../api/functions/TSHostLookupResultAddrGet.en.rst | 14 +
.../api/functions/TSHttpOverridableConfig.en.rst | 211 ++--
...TSHostLookup.en.rst => TSIpStringToAddr.en.rst} | 30 +-
.../api/functions/TSSslSession.en.rst | 67 ++
doc/developer-guide/api/functions/TSTypes.en.rst | 2 +
doc/developer-guide/api/types/CoreTypes.en.rst | 12 +
doc/developer-guide/api/types/SystemTypes.en.rst | 7 +
.../api/types/TSOverridableConfigKey.en.rst | 217 ++--
.../api/types/TSSslSession.en.rst} | 63 +-
.../cache-architecture/architecture.en.rst | 71 +-
.../cache-architecture/data-structures.en.rst | 182 +++-
.../cache-architecture/images/span-header.svg | 1 +
.../cache-architecture/images/stripe-header.svg | 1 +
doc/developer-guide/plugins/actions/index.en.rst | 4 +-
.../plugins/hooks-and-transactions/index.en.rst | 1 +
.../hooks-and-transactions/ssl-session-api.en.rst | 82 ++
.../autest-site/init.cli.ext => doc/uml/Makefile | 24 +-
doc/uml/images/.gitignore | 5 +
doc/uml/images/l4-basic-sequence.svg | 30 +
doc/uml/images/l4-example-cdn-layout.svg | 27 +
doc/uml/images/l4-sni-routing-seq.svg | 34 +
doc/uml/l4-basic-sequence.uml | 24 +
doc/uml/l4-example-cdn-layout.uml | 21 +
doc/uml/l4-sni-routing-seq.uml | 28 +
doc/uml/l4-tcp-routing.uml | 23 +
example/null_transform/null_transform.c | 8 +-
iocore/cache/Cache.cc | 1 +
iocore/dns/DNS.cc | 3 +-
iocore/eventsystem/I_Continuation.h | 22 +-
iocore/eventsystem/Thread.cc | 2 +-
iocore/net/LuaSNIConfig.cc | 127 +++
iocore/net/LuaSNIConfig.h | 114 ++
iocore/net/Makefile.am | 13 +
iocore/net/P_SNIActionPerformer.h | 100 ++
iocore/net/P_SSLConfig.h | 17 +-
iocore/net/P_SSLNetVConnection.h | 8 +
iocore/net/P_SSLSNI.h | 85 ++
iocore/net/P_SSLUtils.h | 63 ++
iocore/net/P_UnixNet.h | 74 +-
iocore/net/P_UnixNetVConnection.h | 1 +
iocore/net/SNIActionPerformer.cc | 53 +
iocore/net/SSLCertLookup.cc | 20 +-
iocore/net/SSLConfig.cc | 64 +-
iocore/net/SSLNetProcessor.cc | 4 +-
iocore/net/SSLNetVConnection.cc | 92 +-
iocore/net/SSLSNIConfig.cc | 240 +++++
iocore/net/SSLSessionCache.cc | 81 +-
iocore/net/SSLSessionCache.h | 23 +-
iocore/net/SSLUtils.cc | 61 +-
iocore/net/UnixNet.cc | 191 ++--
iocore/net/UnixNetProcessor.cc | 4 +
iocore/net/UnixNetVConnection.cc | 2 +-
iocore/net/test_I_UDPNet.cc | 4 +-
lib/Makefile.am | 2 +-
lib/ts/ContFlags.cc | 32 +-
lib/ts/ContFlags.h | 10 +-
lib/ts/Diags.cc | 4 +-
lib/ts/Diags.h | 14 +-
lib/ts/Makefile.am | 2 -
lib/ts/Map.h | 1094 ++++++++++++++++++-
lib/ts/Vec.cc | 210 ----
lib/ts/Vec.h | 1114 --------------------
lib/ts/apidefs.h.in | 17 +-
lib/ts/ink_res_init.cc | 2 +-
lib/ts/test_Vec.cc | 177 +++-
lib/tsconfig/Makefile.am | 6 +-
lib/tsconfig/TsConfigLua.cc | 55 +
lib/tsconfig/TsConfigLua.h | 195 ++++
mgmt/ProxyConfig.cc | 1 -
mgmt/RecordsConfig.cc | 6 +
mgmt/utils/MgmtUtils.h | 2 +
plugins/experimental/ts_lua/ts_lua_fetch.c | 40 +-
plugins/header_rewrite/operators.cc | 1 +
proxy/InkAPI.cc | 76 ++
proxy/InkAPIInternal.h | 1 +
proxy/InkAPITest.cc | 3 +-
proxy/Main.cc | 29 +-
proxy/Makefile.am | 1 +
proxy/ParentSelectionStrategy.cc | 1 +
proxy/api/ts/experimental.h | 3 +
proxy/api/ts/ts.h | 5 +
proxy/config/Makefile.am | 1 +
proxy/config/ssl_server_name.config.default | 36 +
proxy/http/HttpDebugNames.cc | 2 +
proxy/http/HttpSM.cc | 71 +-
proxy/http/HttpServerSession.cc | 2 +
proxy/http/HttpTransact.cc | 46 +-
proxy/http/remap/RemapConfig.cc | 2 +-
proxy/http/remap/RemapProcessor.cc | 1 -
proxy/http2/Http2ConnectionState.cc | 116 +-
proxy/http2/Http2ConnectionState.h | 14 +-
proxy/http2/Http2Stream.cc | 41 +-
proxy/logstats.cc | 42 +-
proxy/shared/DiagsConfig.cc | 2 +-
proxy/tests/logstats.json | 4 +
proxy/tests/logstats.summary | 6 +
tests/README.md | 98 +-
tests/gold_tests/autest-site/build.test.ext | 53 +
tests/gold_tests/autest-site/conditions.test.ext | 5 +
tests/gold_tests/autest-site/init.cli.ext | 4 +-
tests/gold_tests/autest-site/microDNS.test.ext | 88 +-
tests/gold_tests/autest-site/microserver.test.ext | 7 +-
tests/gold_tests/autest-site/setup.cli.ext | 42 +-
.../gold_tests/autest-site/trafficserver.test.ext | 19 +-
.../autest-site/trafficserver_plugins.test.ext | 3 +
tests/gold_tests/basic/basic-manager.test.py | 3 +-
.../body_factory/http204_response_plugin.test.py | 2 +-
tests/gold_tests/continuations/double.test.py | 6 +-
.../headers/general-connection-failure-502.gold | 21 +
.../headers/general-connection-failure-502.test.py | 44 +
.../null_transform/gold/null_transform-200.gold | 9 +-
.../null_transform/null_transform.test.py | 15 +-
tests/gold_tests/redirect/redirect.test.py | 23 +-
.../{redirect.test.py => redirect_post.test.py} | 27 +-
tests/gold_tests/redirect/zone.json | 8 +
tests/gold_tests/remap/remap_http.test.py | 4 +-
tests/gold_tests/tls/ssl-post.c | 4 +-
tests/gold_tests/tls/tls.test.py | 21 +-
tests/gold_tests/tls_hooks/tls_hooks.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks10.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks11.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks12.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks2.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks3.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks4.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks6.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks7.test.py | 2 +-
tests/gold_tests/tls_hooks/tls_hooks8.test.py | 7 +-
tests/gold_tests/tls_hooks/tls_hooks9.test.py | 2 +-
tests/gold_tests/transaction/txn.test.py | 50 +-
tests/tools/plugins/null_transform.c | 21 +-
tests/tools/traffic-replay/Scheduler.py | 1 -
tools/check-unused-dependencies | 4 +-
tools/tsxs.in | 13 +-
150 files changed, 4901 insertions(+), 2357 deletions(-)
diff --cc lib/ts/apidefs.h.in
index 4f289cd,ee480d2..9bfb826
--- a/lib/ts/apidefs.h.in
+++ b/lib/ts/apidefs.h.in
@@@ -877,6 -882,16 +882,16 @@@ typedef struct TSFetchUrlParams
struct TSFetchUrlParams *next;
} TSFetchUrlParams_t;
+ // This is a duplicate of the SSL_MAX_SSL_SESSION_ID_LENGTH constant
+ // Redefining here so we don't include the openssl/ssl.h file here
-#define TS_SSL_MAX_SSL_SESSION_ID_LENGTH 32
++#define TS_SSL_MAX_SSL_SESSION_ID_LENGTH 32
+
+ // This mirrors the internal data structure SSLSessionID
+ typedef struct TSSslSessionID_s {
+ size_t len;
+ char bytes[TS_SSL_MAX_SSL_SESSION_ID_LENGTH];
+ } TSSslSessionID;
+
/* --------------------------------------------------------------------------
Init */
diff --cc lib/tsconfig/TsConfigLua.cc
index 0000000,46a2f54..f1cc457
mode 000000,100644..100644
--- a/lib/tsconfig/TsConfigLua.cc
+++ b/lib/tsconfig/TsConfigLua.cc
@@@ -1,0 -1,53 +1,55 @@@
+ /** @file
+
+ Implementation of the handler for parsing events.
+
+ @section license License
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ */
+
+ #include "TsConfigLua.h"
+
-ts::Errata TsConfigInt::loader(lua_State* s)
++ts::Errata
++TsConfigInt::loader(lua_State *s)
+ {
- ts::Errata zret;
- ref = lua_tonumber(s,-1);
- return zret;
++ ts::Errata zret;
++ ref = lua_tonumber(s, -1);
++ return zret;
+ }
+
-ts::Errata TsConfigString::loader(lua_State* s)
++ts::Errata
++TsConfigString::loader(lua_State *s)
+ {
- ts::Errata zret;
- ref = lua_tostring(s,-1);
- return zret;
-
++ ts::Errata zret;
++ ref = lua_tostring(s, -1);
++ return zret;
+ }
+
-ts::Errata TsConfigBool::loader(lua_State* s)
++ts::Errata
++TsConfigBool::loader(lua_State *s)
+ {
- ts::Errata zret;
- ref = lua_toboolean(s,-1);
- return zret;
++ ts::Errata zret;
++ ref = lua_toboolean(s, -1);
++ return zret;
+ }
+
-//template <>
-//ts::Errata TsConfigEnum<Level>::loader(lua_State* s)
++// template <>
++// ts::Errata TsConfigEnum<Level>::loader(lua_State* s)
+ //{
+ // ts::Errata zret;
+ // return zret;
+ //}
diff --cc lib/tsconfig/TsConfigLua.h
index 0000000,fb3b90d..a0196a2
mode 000000,100644..100644
--- a/lib/tsconfig/TsConfigLua.h
+++ b/lib/tsconfig/TsConfigLua.h
@@@ -1,0 -1,184 +1,195 @@@
+ /** @file
+
+ @section license License
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ */
+
+ /*
+ * File: TSConfigLua.h
+ * Author: persia
+ *
+ * Created on September 21, 2017, 4:04 PM
+ */
+
-
+ #ifndef TSCONFIGLUA_H
+ #define TSCONFIGLUA_H
+
-
+ #include "tsconfig/Errata.h"
+ #include <unordered_map>
+ #include "luajit/src/lua.hpp"
+ #include <iostream>
+ #include <ts/string_view.h>
+ #include <ts/HashFNV.h>
+
+ /// Hash functor for @c string_view
-inline size_t TsLuaConfigSVHash(ts::string_view const& sv)
++inline size_t
++TsLuaConfigSVHash(ts::string_view const &sv)
+ {
+ ATSHash64FNV1a h;
+ h.update(sv.data(), sv.size());
+ return h.get();
+ }
+
+ /** Static schema data for a configuration value.
+
+ This is a base class for data about a configuration value. This is intended to be a singleton
+ static instance that contains schema data that is the same for all instances of the
+ configuration value.
+ */
+ struct TsConfigDescriptor {
+ /// Type of the configuration value.
+ enum class Type {
- ARRAY, ///< A homogenous array of nested values.
++ ARRAY, ///< A homogenous array of nested values.
+ OBJECT, ///< A set of fields, each a name / value pair.
- INT, ///< Integer value.
- FLOAT, ///< Floating point value.
++ INT, ///< Integer value.
++ FLOAT, ///< Floating point value.
+ STRING, ///< String.
+ BOOL,
+ ENUM ///< Enumeration (specialized).
+ };
-/* TsConfigDescriptor() : type_name(nullptr),name(nullptr),description(nullptr) {}
- TsConfigDescriptor(Type typ,std::initializer_list<std::string> str_list): type(typ)
- {
- for (auto str :str_list) {
- std::cout << str << std::endl;
- }
- }
- * */
- Type type; ///< Value type.
- ts::string_view type_name; ///< Literal type name used in the schema.
- ts::string_view name; ///< Name of the configuration value.
++ /* TsConfigDescriptor() : type_name(nullptr),name(nullptr),description(nullptr) {}
++ TsConfigDescriptor(Type typ,std::initializer_list<std::string> str_list): type(typ)
++ {
++ for (auto str :str_list) {
++ std::cout << str << std::endl;
++ }
++ }
++ * */
++ Type type; ///< Value type.
++ ts::string_view type_name; ///< Literal type name used in the schema.
++ ts::string_view name; ///< Name of the configuration value.
+ ts::string_view description; ///< Description of the value.
+ };
+
+ /** Configuration item instance data.
+
+ This is an abstract base class for data about an instance of the value in a configuration
+ struct. Actual instances will be a subclass for a supported configuration item type. This holds
+ data that is per instance and therefore must be dynamically constructed as part of the
+ configuration struct construction. The related description classes in contrast are data that is
+ schema based and therefore can be static and shared among instances of the configuration struct.
+ */
-class TsConfigBase {
++class TsConfigBase
++{
+ public:
+ /// Source of the value in the config struct.
+ enum class Source {
- NONE, ///< No source, the value is default constructed.
++ NONE, ///< No source, the value is default constructed.
+ SCHEMA, ///< Value set in schema.
- CONFIG ///< Value set in configuration file.
++ CONFIG ///< Value set in configuration file.
+ };
+ /// Constructor - need the static descriptor.
- TsConfigBase(TsConfigDescriptor const& d) : descriptor(d) {}
- TsConfigDescriptor const& descriptor; ///< Static schema data.
- Source source = Source::NONE; ///< Where the instance data came from.
- virtual ~TsConfigBase()
- {}
++ TsConfigBase(TsConfigDescriptor const &d) : descriptor(d) {}
++ TsConfigDescriptor const &descriptor; ///< Static schema data.
++ Source source = Source::NONE; ///< Where the instance data came from.
++ virtual ~TsConfigBase() {}
+ /// Load the instance data from the Lua stack.
- virtual ts::Errata loader(lua_State* s) = 0;
++ virtual ts::Errata loader(lua_State *s) = 0;
+ };
+
-class TsConfigInt : public TsConfigBase {
++class TsConfigInt : public TsConfigBase
++{
+ public:
- TsConfigInt(TsConfigDescriptor const& d, int& i):TsConfigBase(d),ref(i){}
- ts::Errata loader(lua_State* s) override;
++ TsConfigInt(TsConfigDescriptor const &d, int &i) : TsConfigBase(d), ref(i) {}
++ ts::Errata loader(lua_State *s) override;
++
+ private:
- int & ref;
++ int &ref;
+ };
+
-class TsConfigBool : public TsConfigBase {
++class TsConfigBool : public TsConfigBase
++{
+ public:
- TsConfigBool(TsConfigDescriptor const& d, bool& i):TsConfigBase(d), ref(i) {}
- ts::Errata loader(lua_State* s) override;
-private:
- bool &ref;
++ TsConfigBool(TsConfigDescriptor const &d, bool &i) : TsConfigBase(d), ref(i) {}
++ ts::Errata loader(lua_State *s) override;
+
++private:
++ bool &ref;
+ };
+
-class TsConfigString : public TsConfigBase {
++class TsConfigString : public TsConfigBase
++{
+ public:
- TsConfigString(TsConfigDescriptor const& d, std::string& str) : TsConfigBase(d), ref(str) {}
-// TsConfigString& operator= (const TsConfigString& other)
-// {
-// ref = other.ref;
-// return *this;
-// }
- ts::Errata loader(lua_State* s) override;
++ TsConfigString(TsConfigDescriptor const &d, std::string &str) : TsConfigBase(d), ref(str) {}
++ // TsConfigString& operator= (const TsConfigString& other)
++ // {
++ // ref = other.ref;
++ // return *this;
++ // }
++ ts::Errata loader(lua_State *s) override;
++
+ private:
- std::string& ref;
++ std::string &ref;
+ };
+
-
-
-class TsConfigArrayDescriptor : public TsConfigDescriptor {
++class TsConfigArrayDescriptor : public TsConfigDescriptor
++{
+ public:
- TsConfigArrayDescriptor(TsConfigDescriptor const& d) : item(d) {}
- const TsConfigDescriptor& item;
++ TsConfigArrayDescriptor(TsConfigDescriptor const &d) : item(d) {}
++ const TsConfigDescriptor &item;
+ };
+
-class TsConfigEnumDescriptor : public TsConfigDescriptor {
- using self_type = TsConfigEnumDescriptor;
++class TsConfigEnumDescriptor : public TsConfigDescriptor
++{
++ using self_type = TsConfigEnumDescriptor;
+ using super_type = TsConfigDescriptor;
++
+ public:
- struct Pair { ts::string_view key; int value; };
- TsConfigEnumDescriptor(Type t, ts::string_view t_name, ts::string_view n, ts::string_view d, std::initializer_list<Pair> pairs)
++ struct Pair {
++ ts::string_view key;
++ int value;
++ };
++ TsConfigEnumDescriptor(Type t, ts::string_view t_name, ts::string_view n, ts::string_view d, std::initializer_list<Pair> pairs)
+ : super_type{t, t_name, n, d}, values{pairs.size(), &TsLuaConfigSVHash}, keys{pairs.size()}
+ {
- for ( auto& p : pairs ) {
++ for (auto &p : pairs) {
+ values[p.key] = p.value;
+ keys[p.value] = p.key;
+ }
+ }
- std::unordered_map<ts::string_view, int, size_t(*)(ts::string_view const&) > values;
++ std::unordered_map<ts::string_view, int, size_t (*)(ts::string_view const &)> values;
+ std::unordered_map<int, ts::string_view> keys;
- int get(ts::string_view key)
++ int
++ get(ts::string_view key)
+ {
- return values[key];
++ return values[key];
+ }
+ };
+
-class TsConfigObjectDescriptor : public TsConfigDescriptor {
- std::unordered_map<std::string, TsConfigDescriptor const*> fields;
++class TsConfigObjectDescriptor : public TsConfigDescriptor
++{
++ std::unordered_map<std::string, TsConfigDescriptor const *> fields;
+ };
+
-template < typename E >
-class TsConfigEnum : public TsConfigBase {
++template <typename E> class TsConfigEnum : public TsConfigBase
++{
+ public:
- TsConfigEnum(TsConfigEnumDescriptor const& d, int& i) : TsConfigBase(d),edescriptor(d), ref(i) {}
- TsConfigEnumDescriptor edescriptor;
- int& ref;
- ts::Errata loader(lua_State* L) override
- {
++ TsConfigEnum(TsConfigEnumDescriptor const &d, int &i) : TsConfigBase(d), edescriptor(d), ref(i) {}
++ TsConfigEnumDescriptor edescriptor;
++ int &ref;
++ ts::Errata
++ loader(lua_State *L) override
++ {
+ ts::Errata zret;
- std::string key(lua_tostring(L,-1));
++ std::string key(lua_tostring(L, -1));
+ ref = edescriptor.get(ts::string_view(key));
+ return zret;
- }
++ }
+ };
+
+ #endif /* TSCONFIGLUA_H */
diff --cc proxy/Main.cc
index 829bbfe,1269f82..4bae3d8
--- a/proxy/Main.cc
+++ b/proxy/Main.cc
@@@ -92,10 -92,9 +92,13 @@@ extern "C" int plock(int)
#include "I_Tasks.h"
#include "InkAPIInternal.h"
#include "HTTP2.h"
+ #include "ts/ink_config.h"
+ #include "P_SSLSNI.h"
+
+#if TS_USE_QUIC == 1
+#include "HQ.h"
+#endif
+
#include <ts/ink_cap.h>
#if TS_HAS_PROFILER
--
To stop receiving notification emails like this one, please contact
"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>.