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/02 17:54:23 UTC
[trafficserver] branch quic-latest updated (7e1cd27 -> 5869822)
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 7e1cd27 QUIC_TLS* defines are extra to IETF QUIC draft
add c1960a4 runroot of traffic_layout fix and lib/ts/layout fix
add 909cb11 added delay argument in microserver
add dcb6f09 CID 1226158: Uninitialized members
add 5e0ebc4 Skipping tests if a plugin doesn't exist
add ce31263 Set ua_session of Http2ConnectionState nullptr when ua_session is freed
add 8b40e36 added flag for port number in microdns, microserver extension.
add 4df19d2 Optimize: define UnixUDPConnection::inQueue by ASLL macro
add e920894 Optimize: define UDPQueue::atomicQueue by ASLL macro and rename to outQueue
add 0b52a1a Within UDPConnection::Release(), it should calls the ep.stop() only if the UDPConnection will be closed
add 495be0e Prevent releasing streams simultaneously
add 46a7fb8 coverity 1376260: Uninitialized scalar field
add 83e50f5 Rework the new udp connection
add b6c0e55 Getting rid of ts::Vec implementation and replacing it with std::vector
add 0be3931 fix 2707, assign server_session to nullptr after do `chain_abort_all`
add a16780f More NULL to nullptr conversion
add 48c3e7b added tests for different thread configurations, thread information is verified using gdb
add 6a1eb38 include cstring to make the compiler stop complaining about strlen
add ccf008f updated abbreviations in README
add ed592c1 Implement zero-copy within UDPNetProcessorInternal::udp_read_from_net
add f9badea Doc: Minor fixes - some MimeHdr functions, traffic_layout, event loop metrics.
add 1f07ce3 Treat SSL_ERROR_SSL as EPIPE within SSLNetVC::load_buffer_and_write()
add 54df615 More header_rewrite examples
add 4f25328 Correct comment about TS_HTTP_SSN_CLOSE_HOOK.
add be4cdc6 list packages for building in Ubuntu
add 76834d0 Removes the Configuration Context Manager
add 372e9de Removes the rest of the CfgContext files and objects
add af92bb6 This removes all configuration Element ctor/dtor code
new 5869822 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:
README | 4 +-
cmd/traffic_layout/engine.cc | 26 +-
cmd/traffic_layout/traffic_layout.cc | 8 +-
cmd/traffic_manager/metrics.cc | 12 +-
configure.ac | 3 +
doc/admin-guide/installation/index.en.rst | 8 +-
.../monitoring/statistics/core/misc.en.rst | 25 +-
doc/admin-guide/plugins/header_rewrite.en.rst | 31 +-
doc/appendices/command-line/traffic_layout.en.rst | 64 +-
.../functions/TSMimeHdrFieldValueStringSet.en.rst | 16 +
.../api/functions/TSMimeHdrFieldValuesCount.en.rst | 2 +
iocore/eventsystem/I_EThread.h | 2 +-
iocore/eventsystem/I_SocketManager.h | 1 +
iocore/eventsystem/P_UnixSocketManager.h | 11 +
iocore/eventsystem/UnixEventProcessor.cc | 7 +-
iocore/hostdb/P_RefCountCache.h | 7 +-
iocore/hostdb/P_RefCountCacheSerializer.h | 10 +-
iocore/net/I_UDPPacket.h | 6 +
iocore/net/P_UDPNet.h | 29 +-
iocore/net/P_UDPPacket.h | 16 +-
iocore/net/P_UnixUDPConnection.h | 10 +-
iocore/net/SSLNetVConnection.cc | 3 +-
iocore/net/SSLUtils.cc | 29 +-
iocore/net/UnixNetProcessor.cc | 5 +-
iocore/net/UnixUDPConnection.cc | 55 +-
iocore/net/UnixUDPNet.cc | 239 +-
lib/perl/lib/Apache/TS/AdminClient.pm | 43 +-
lib/records/I_RecHttp.h | 30 +-
lib/records/RecHttp.cc | 36 +-
lib/ts/Layout.cc | 65 +-
lib/ts/PriorityQueue.h | 45 +-
lib/ts/apidefs.h.in | 2 +-
lib/ts/runroot.cc | 27 +-
lib/ts/test_PriorityQueue.cc | 4 +-
mgmt/FileManager.cc | 31 +-
mgmt/LocalManager.cc | 8 +-
mgmt/api/APITestCliRemote.cc | 711 +----
mgmt/api/CfgContextDefs.h | 73 -
mgmt/api/CfgContextImpl.cc | 2135 ---------------
mgmt/api/CfgContextImpl.h | 435 ---
mgmt/api/CfgContextManager.cc | 560 ----
mgmt/api/CfgContextManager.h | 74 -
mgmt/api/CfgContextUtils.cc | 2756 --------------------
mgmt/api/CfgContextUtils.h | 194 --
mgmt/api/CoreAPI.cc | 61 +-
mgmt/api/CoreAPI.h | 11 +-
mgmt/api/CoreAPIRemote.cc | 61 +-
mgmt/api/EventControlMain.cc | 1 -
mgmt/api/INKMgmtAPI.cc | 974 +------
mgmt/api/Makefile.am | 7 -
mgmt/api/NetworkMessage.cc | 6 -
mgmt/api/NetworkMessage.h | 1 -
mgmt/api/TSControlMain.cc | 40 -
mgmt/api/include/mgmtapi.h | 541 +---
plugins/experimental/cachekey/configs.cc | 1 +
proxy/ControlBase.cc | 19 +-
proxy/ControlBase.h | 4 +-
proxy/IPAllow.cc | 6 +-
proxy/IPAllow.h | 6 +-
proxy/InkAPI.cc | 2 +-
proxy/InkAPITest.cc | 6 +-
proxy/InkAPITestTool.cc | 2 +-
proxy/http/HttpProxyServerMain.cc | 14 +-
proxy/http/HttpSM.cc | 4 +-
proxy/http/HttpTransact.cc | 2 +-
proxy/http/HttpTransact.h | 14 +-
proxy/http/HttpTransactHeaders.h | 2 +-
proxy/http2/HPACK.cc | 20 +-
proxy/http2/HPACK.h | 5 +-
proxy/http2/Http2ClientSession.cc | 6 +-
proxy/http2/Http2ConnectionState.h | 1 +
proxy/http2/Http2Stream.cc | 1 +
proxy/logging/LogObject.cc | 60 +-
proxy/logging/LogObject.h | 8 +-
tests/gold_tests/autest-site/microDNS.test.ext | 7 +-
tests/gold_tests/autest-site/microserver.test.ext | 15 +-
tests/gold_tests/basic/runroot-layout.test.py | 8 +-
.../pluginTest/multiplexer/multiplexer.test.py | 3 +-
.../gold/http_200.gold} | 5 -
.../thread_config/gold/thread_100_0.gold | 101 +
.../thread_config/gold/thread_100_1.gold | 102 +
.../thread_config/gold/thread_100_10.gold | 111 +
.../gold_tests/thread_config/gold/thread_1_0.gold | 2 +
.../gold_tests/thread_config/gold/thread_1_1.gold | 3 +
.../gold_tests/thread_config/gold/thread_1_10.gold | 12 +
.../gold_tests/thread_config/gold/thread_2_0.gold | 3 +
.../gold_tests/thread_config/gold/thread_2_1.gold | 4 +
.../gold_tests/thread_config/gold/thread_2_10.gold | 13 +
.../gold_tests/thread_config/gold/thread_32_0.gold | 33 +
.../gold_tests/thread_config/gold/thread_32_1.gold | 34 +
.../thread_config/gold/thread_32_10.gold | 43 +
.../gold_tests/thread_config/thread_100_0.test.py | 61 +
.../gold_tests/thread_config/thread_100_1.test.py | 62 +
.../gold_tests/thread_config/thread_100_10.test.py | 61 +
tests/gold_tests/thread_config/thread_1_0.test.py | 61 +
tests/gold_tests/thread_config/thread_1_1.test.py | 61 +
tests/gold_tests/thread_config/thread_1_10.test.py | 61 +
tests/gold_tests/thread_config/thread_2_0.test.py | 61 +
tests/gold_tests/thread_config/thread_2_1.test.py | 61 +
tests/gold_tests/thread_config/thread_2_10.test.py | 61 +
tests/gold_tests/thread_config/thread_32_0.test.py | 61 +
tests/gold_tests/thread_config/thread_32_1.test.py | 61 +
.../gold_tests/thread_config/thread_32_10.test.py | 61 +
tests/tools/microServer/uWServer.py | 11 +-
104 files changed, 1892 insertions(+), 9095 deletions(-)
delete mode 100644 mgmt/api/CfgContextDefs.h
delete mode 100644 mgmt/api/CfgContextImpl.cc
delete mode 100644 mgmt/api/CfgContextImpl.h
delete mode 100644 mgmt/api/CfgContextManager.cc
delete mode 100644 mgmt/api/CfgContextManager.h
delete mode 100644 mgmt/api/CfgContextUtils.cc
delete mode 100644 mgmt/api/CfgContextUtils.h
copy tests/gold_tests/{remap/gold/remap-referer-hit.gold => thread_config/gold/http_200.gold} (59%)
create mode 100644 tests/gold_tests/thread_config/gold/thread_100_0.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_100_1.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_100_10.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_1_0.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_1_1.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_1_10.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_2_0.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_2_1.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_2_10.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_32_0.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_32_1.gold
create mode 100644 tests/gold_tests/thread_config/gold/thread_32_10.gold
create mode 100644 tests/gold_tests/thread_config/thread_100_0.test.py
create mode 100644 tests/gold_tests/thread_config/thread_100_1.test.py
create mode 100644 tests/gold_tests/thread_config/thread_100_10.test.py
create mode 100644 tests/gold_tests/thread_config/thread_1_0.test.py
create mode 100644 tests/gold_tests/thread_config/thread_1_1.test.py
create mode 100644 tests/gold_tests/thread_config/thread_1_10.test.py
create mode 100644 tests/gold_tests/thread_config/thread_2_0.test.py
create mode 100644 tests/gold_tests/thread_config/thread_2_1.test.py
create mode 100644 tests/gold_tests/thread_config/thread_2_10.test.py
create mode 100644 tests/gold_tests/thread_config/thread_32_0.test.py
create mode 100644 tests/gold_tests/thread_config/thread_32_1.test.py
create mode 100644 tests/gold_tests/thread_config/thread_32_10.test.py
--
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 5869822270e857da897a95a0efd99c4b623f71dc
Merge: 7e1cd27 af92bb6
Author: Leif Hedstrom <zw...@apache.org>
AuthorDate: Thu Nov 2 11:53:52 2017 -0600
Merge branch 'master' into quic-latest
* master: (27 commits)
This removes all configuration Element ctor/dtor code
Removes the rest of the CfgContext files and objects
Removes the Configuration Context Manager
list packages for building in Ubuntu
Correct comment about TS_HTTP_SSN_CLOSE_HOOK.
More header_rewrite examples
Treat SSL_ERROR_SSL as EPIPE within SSLNetVC::load_buffer_and_write()
Doc: Minor fixes - some MimeHdr functions, traffic_layout, event loop metrics.
Implement zero-copy within UDPNetProcessorInternal::udp_read_from_net
updated abbreviations in README
include cstring to make the compiler stop complaining about strlen
added tests for different thread configurations, thread information is verified using gdb
More NULL to nullptr conversion
fix 2707, assign server_session to nullptr after do `chain_abort_all`
Getting rid of ts::Vec implementation and replacing it with std::vector
Rework the new udp connection
coverity 1376260: Uninitialized scalar field
Prevent releasing streams simultaneously
Within UDPConnection::Release(), it should calls the ep.stop() only if the UDPConnection will be closed
Optimize: define UDPQueue::atomicQueue by ASLL macro and rename to outQueue
...
Conflicts:
iocore/net/P_UnixUDPConnection.h
lib/records/I_RecHttp.h
lib/records/RecHttp.cc
README | 4 +-
cmd/traffic_layout/engine.cc | 26 +-
cmd/traffic_layout/traffic_layout.cc | 8 +-
cmd/traffic_manager/metrics.cc | 12 +-
configure.ac | 3 +
doc/admin-guide/installation/index.en.rst | 8 +-
.../monitoring/statistics/core/misc.en.rst | 25 +-
doc/admin-guide/plugins/header_rewrite.en.rst | 31 +-
doc/appendices/command-line/traffic_layout.en.rst | 64 +-
.../functions/TSMimeHdrFieldValueStringSet.en.rst | 16 +
.../api/functions/TSMimeHdrFieldValuesCount.en.rst | 2 +
iocore/eventsystem/I_EThread.h | 2 +-
iocore/eventsystem/I_SocketManager.h | 1 +
iocore/eventsystem/P_UnixSocketManager.h | 11 +
iocore/eventsystem/UnixEventProcessor.cc | 7 +-
iocore/hostdb/P_RefCountCache.h | 7 +-
iocore/hostdb/P_RefCountCacheSerializer.h | 10 +-
iocore/net/I_UDPPacket.h | 6 +
iocore/net/P_UDPNet.h | 29 +-
iocore/net/P_UDPPacket.h | 16 +-
iocore/net/P_UnixUDPConnection.h | 10 +-
iocore/net/SSLNetVConnection.cc | 3 +-
iocore/net/SSLUtils.cc | 29 +-
iocore/net/UnixNetProcessor.cc | 5 +-
iocore/net/UnixUDPConnection.cc | 55 +-
iocore/net/UnixUDPNet.cc | 239 +-
lib/perl/lib/Apache/TS/AdminClient.pm | 43 +-
lib/records/I_RecHttp.h | 30 +-
lib/records/RecHttp.cc | 36 +-
lib/ts/Layout.cc | 65 +-
lib/ts/PriorityQueue.h | 45 +-
lib/ts/apidefs.h.in | 2 +-
lib/ts/runroot.cc | 27 +-
lib/ts/test_PriorityQueue.cc | 4 +-
mgmt/FileManager.cc | 31 +-
mgmt/LocalManager.cc | 8 +-
mgmt/api/APITestCliRemote.cc | 711 +----
mgmt/api/CfgContextDefs.h | 73 -
mgmt/api/CfgContextImpl.cc | 2135 ---------------
mgmt/api/CfgContextImpl.h | 435 ---
mgmt/api/CfgContextManager.cc | 560 ----
mgmt/api/CfgContextManager.h | 74 -
mgmt/api/CfgContextUtils.cc | 2756 --------------------
mgmt/api/CfgContextUtils.h | 194 --
mgmt/api/CoreAPI.cc | 61 +-
mgmt/api/CoreAPI.h | 11 +-
mgmt/api/CoreAPIRemote.cc | 61 +-
mgmt/api/EventControlMain.cc | 1 -
mgmt/api/INKMgmtAPI.cc | 974 +------
mgmt/api/Makefile.am | 7 -
mgmt/api/NetworkMessage.cc | 6 -
mgmt/api/NetworkMessage.h | 1 -
mgmt/api/TSControlMain.cc | 40 -
mgmt/api/include/mgmtapi.h | 541 +---
plugins/experimental/cachekey/configs.cc | 1 +
proxy/ControlBase.cc | 19 +-
proxy/ControlBase.h | 4 +-
proxy/IPAllow.cc | 6 +-
proxy/IPAllow.h | 6 +-
proxy/InkAPI.cc | 2 +-
proxy/InkAPITest.cc | 6 +-
proxy/InkAPITestTool.cc | 2 +-
proxy/http/HttpProxyServerMain.cc | 14 +-
proxy/http/HttpSM.cc | 4 +-
proxy/http/HttpTransact.cc | 2 +-
proxy/http/HttpTransact.h | 14 +-
proxy/http/HttpTransactHeaders.h | 2 +-
proxy/http2/HPACK.cc | 20 +-
proxy/http2/HPACK.h | 5 +-
proxy/http2/Http2ClientSession.cc | 6 +-
proxy/http2/Http2ConnectionState.h | 1 +
proxy/http2/Http2Stream.cc | 1 +
proxy/logging/LogObject.cc | 60 +-
proxy/logging/LogObject.h | 8 +-
tests/gold_tests/autest-site/microDNS.test.ext | 7 +-
tests/gold_tests/autest-site/microserver.test.ext | 15 +-
tests/gold_tests/basic/runroot-layout.test.py | 8 +-
.../pluginTest/multiplexer/multiplexer.test.py | 3 +-
tests/gold_tests/thread_config/gold/http_200.gold | 9 +
.../thread_config/gold/thread_100_0.gold | 101 +
.../thread_config/gold/thread_100_1.gold | 102 +
.../thread_config/gold/thread_100_10.gold | 111 +
.../gold_tests/thread_config/gold/thread_1_0.gold | 2 +
.../gold_tests/thread_config/gold/thread_1_1.gold | 3 +
.../gold_tests/thread_config/gold/thread_1_10.gold | 12 +
.../gold_tests/thread_config/gold/thread_2_0.gold | 3 +
.../gold_tests/thread_config/gold/thread_2_1.gold | 4 +
.../gold_tests/thread_config/gold/thread_2_10.gold | 13 +
.../gold_tests/thread_config/gold/thread_32_0.gold | 33 +
.../gold_tests/thread_config/gold/thread_32_1.gold | 34 +
.../thread_config/gold/thread_32_10.gold | 43 +
.../gold_tests/thread_config/thread_100_0.test.py | 61 +
.../gold_tests/thread_config/thread_100_1.test.py | 62 +
.../gold_tests/thread_config/thread_100_10.test.py | 61 +
tests/gold_tests/thread_config/thread_1_0.test.py | 61 +
tests/gold_tests/thread_config/thread_1_1.test.py | 61 +
tests/gold_tests/thread_config/thread_1_10.test.py | 61 +
tests/gold_tests/thread_config/thread_2_0.test.py | 61 +
tests/gold_tests/thread_config/thread_2_1.test.py | 61 +
tests/gold_tests/thread_config/thread_2_10.test.py | 61 +
tests/gold_tests/thread_config/thread_32_0.test.py | 61 +
tests/gold_tests/thread_config/thread_32_1.test.py | 61 +
.../gold_tests/thread_config/thread_32_10.test.py | 61 +
tests/tools/microServer/uWServer.py | 11 +-
104 files changed, 1901 insertions(+), 9090 deletions(-)
diff --cc iocore/net/P_UnixUDPConnection.h
index 6d5e455,4815f8a..599c632
--- a/iocore/net/P_UnixUDPConnection.h
+++ b/iocore/net/P_UnixUDPConnection.h
@@@ -42,14 -42,14 +42,14 @@@ public
void errorAndDie(int e);
int callbackHandler(int event, void *data);
- LINK(UnixUDPConnection, polling_link);
- LINK(UnixUDPConnection, callback_link);
SLINK(UnixUDPConnection, newconn_alink);
+ LINK(UnixUDPConnection, callback_link);
- InkAtomicList inQueue;
+ // Incoming UDP Packet Queue
+ ASLL(UDPPacketInternal, alink) inQueue;
- int onCallbackQueue;
- Action *callbackAction;
- EThread *ethread;
+ int onCallbackQueue = 0;
+ Action *callbackAction = nullptr;
+ EThread *ethread = nullptr;
EventIO ep;
UnixUDPConnection(int the_fd);
@@@ -61,11 -61,9 +61,9 @@@ private
};
TS_INLINE
-UnixUDPConnection::UnixUDPConnection(int the_fd) : onCallbackQueue(0), callbackAction(nullptr), ethread(nullptr), m_errno(0)
+UnixUDPConnection::UnixUDPConnection(int the_fd)
{
fd = the_fd;
- UDPPacketInternal p;
- ink_atomiclist_init(&inQueue, "Incoming UDP Packet queue", (char *)&p.alink.next - (char *)&p);
SET_HANDLER(&UnixUDPConnection::callbackHandler);
}
diff --cc lib/records/I_RecHttp.h
index 99e38ea,a3655f0..7886e92
--- a/lib/records/I_RecHttp.h
+++ b/lib/records/I_RecHttp.h
@@@ -483,12 -465,7 +485,12 @@@ HttpProxyPort::hasSSL(
{
return self::hasSSL(m_global);
}
+inline bool
+HttpProxyPort::hasQUIC()
+{
+ return self::hasQUIC(m_global);
+}
- inline HttpProxyPort *
+ inline const HttpProxyPort *
HttpProxyPort::findHttp(uint16_t family)
{
return self::findHttp(m_global, family);
diff --cc lib/records/RecHttp.cc
index 19d9481,b35cae2..c924d1a
--- a/lib/records/RecHttp.cc
+++ b/lib/records/RecHttp.cc
@@@ -173,28 -168,10 +173,22 @@@ HttpProxyPort::HttpProxyPort(
bool
HttpProxyPort::hasSSL(Group const &ports)
{
- bool zret = false;
- for (int i = 0, n = ports.length(); i < n && !zret; ++i) {
- if (ports[i].isSSL()) {
- zret = true;
- }
- }
- return zret;
+ return std::any_of(ports.begin(), ports.end(), [](HttpProxyPort const &port) { return port.isSSL(); });
}
+bool
+HttpProxyPort::hasQUIC(Group const &ports)
+{
+ bool zret = false;
- for (int i = 0, n = ports.length(); i < n && !zret; ++i) {
++ for (int i = 0, n = ports.size(); i < n && !zret; ++i) {
+ if (ports[i].isQUIC()) {
+ zret = true;
+ }
+ }
+ return zret;
+}
+
- HttpProxyPort *
+ const HttpProxyPort *
HttpProxyPort::findHttp(Group const &ports, uint16_t family)
{
bool check_family_p = ats_is_ip(family);
diff --cc proxy/http/HttpProxyServerMain.cc
index 36d8fe7,df1200d..202810b
--- a/proxy/http/HttpProxyServerMain.cc
+++ b/proxy/http/HttpProxyServerMain.cc
@@@ -39,11 -39,9 +39,13 @@@
#include "ProtocolProbeSessionAccept.h"
#include "http2/Http2SessionAccept.h"
#include "HttpConnectionCount.h"
+#if TS_USE_QUIC == 1
+#include "P_QUICNextProtocolAccept.h"
+#include "hq/HQSessionAccept.h"
+#endif
+ #include <vector>
+
HttpSessionAccept *plugin_http_accept = nullptr;
HttpSessionAccept *plugin_http_transparent_accept = nullptr;
--
To stop receiving notification emails like this one, please contact
"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>.