trafficserver git commit: TS-3885: Fix compile issue on Ubuntu.
Repository: trafficserver Updated Branches: refs/heads/master def017b4b -> efc597969 TS-3885: Fix compile issue on Ubuntu. Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/efc59796 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/efc59796 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/efc59796 Branch: refs/heads/master Commit: efc597969f6c0a55198a53e0f66d4cbe7b82d18b Parents: def017b Author: Alan M. Carroll Authored: Fri Nov 20 23:12:05 2015 -0600 Committer: Alan M. Carroll Committed: Fri Nov 20 23:12:28 2015 -0600 -- proxy/InkAPITest.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/efc59796/proxy/InkAPITest.cc -- diff --git a/proxy/InkAPITest.cc b/proxy/InkAPITest.cc index 566ca88..d5ad4c7 100644 --- a/proxy/InkAPITest.cc +++ b/proxy/InkAPITest.cc @@ -331,7 +331,7 @@ client_handler(TSCont contp, TSEvent event, void *data) // happen until data arrives on the socket. Because we're just testing the accept() // we write a small amount of ignored data to make sure this gets triggered. UnixNetVConnection *vc = static_cast(data); -::write(vc->con.fd, "Bob's your uncle", 16); +(void) ::write(vc->con.fd, "Bob's your uncle", 16); sleep(1); // XXX this sleep ensures the server end gets the accept event.
trafficserver git commit: TS-4034: Minor atscppapi cleanup
Repository: trafficserver Updated Branches: refs/heads/master 9dc6dabed -> def017b4b TS-4034: Minor atscppapi cleanup Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/def017b4 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/def017b4 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/def017b4 Branch: refs/heads/master Commit: def017b4b19619497dcc378595494b97cbc9eb27 Parents: 9dc6dab Author: Brian Geffon Authored: Thu Nov 19 09:57:27 2015 -0800 Committer: Brian Geffon Committed: Thu Nov 19 09:57:27 2015 -0800 -- .../src/CaseInsensitiveStringComparator.cc | 44 +++- lib/atscppapi/src/GzipDeflateTransformation.cc | 2 +- lib/atscppapi/src/GzipInflateTransformation.cc | 2 +- lib/atscppapi/src/TransformationPlugin.cc | 2 +- lib/atscppapi/src/Url.cc| 11 +++-- 5 files changed, 14 insertions(+), 47 deletions(-) -- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/def017b4/lib/atscppapi/src/CaseInsensitiveStringComparator.cc -- diff --git a/lib/atscppapi/src/CaseInsensitiveStringComparator.cc b/lib/atscppapi/src/CaseInsensitiveStringComparator.cc index 34c7eac..67eaaed 100644 --- a/lib/atscppapi/src/CaseInsensitiveStringComparator.cc +++ b/lib/atscppapi/src/CaseInsensitiveStringComparator.cc @@ -20,17 +20,16 @@ * @file CaseInsensitiveStringComparator.cc */ +#include #include "atscppapi/CaseInsensitiveStringComparator.h" -namespace -{ -static char NORMALIZED_CHARACTERS[256]; -static volatile bool normalizer_initialized(false); -} - using atscppapi::CaseInsensitiveStringComparator; using std::string; +/** + * This class should eventually be removed, but because it's in a public API we cannot remove + * it until the next major release. + */ bool CaseInsensitiveStringComparator::operator()(const string &lhs, const string &rhs) const { return (compare(lhs, rhs) < 0); @@ -39,36 +38,5 @@ bool CaseInsensitiveStringComparator::operator()(const string &lhs, const string int CaseInsensitiveStringComparator::compare(const string &lhs, const string &rhs) const { - if (!normalizer_initialized) { -// this initialization is safe to execute in concurrent threads - hence no locking -for (int i = 0; i < 256; ++i) { - NORMALIZED_CHARACTERS[i] = static_cast(i); -} -for (unsigned char i = 'A'; i < 'Z'; ++i) { - NORMALIZED_CHARACTERS[i] = 'a' + (i - 'A'); -} -normalizer_initialized = true; - } - size_t lhs_size = lhs.size(); - size_t rhs_size = rhs.size(); - if ((lhs_size > 0) && (rhs_size > 0)) { -size_t num_chars_to_compare = (lhs_size < rhs_size) ? lhs_size : rhs_size; -for (size_t i = 0; i < num_chars_to_compare; ++i) { - unsigned char normalized_lhs_char = NORMALIZED_CHARACTERS[static_cast(lhs[i])]; - unsigned char normalized_rhs_char = NORMALIZED_CHARACTERS[static_cast(rhs[i])]; - if (normalized_lhs_char < normalized_rhs_char) { -return -1; - } - if (normalized_lhs_char > normalized_rhs_char) { -return 1; - } -} - } - if (lhs_size < rhs_size) { -return -1; - } - if (lhs_size > rhs_size) { -return 1; - } - return 0; // both strings are equal + return strcasecmp(lhs.c_str(), rhs.c_str()); } http://git-wip-us.apache.org/repos/asf/trafficserver/blob/def017b4/lib/atscppapi/src/GzipDeflateTransformation.cc -- diff --git a/lib/atscppapi/src/GzipDeflateTransformation.cc b/lib/atscppapi/src/GzipDeflateTransformation.cc index d375856..3bc8a11 100644 --- a/lib/atscppapi/src/GzipDeflateTransformation.cc +++ b/lib/atscppapi/src/GzipDeflateTransformation.cc @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include "atscppapi/TransformationPlugin.h" #include "atscppapi/GzipDeflateTransformation.h" #include "logging_internal.h" http://git-wip-us.apache.org/repos/asf/trafficserver/blob/def017b4/lib/atscppapi/src/GzipInflateTransformation.cc -- diff --git a/lib/atscppapi/src/GzipInflateTransformation.cc b/lib/atscppapi/src/GzipInflateTransformation.cc index a6424a7..31b6473 100644 --- a/lib/atscppapi/src/GzipInflateTransformation.cc +++ b/lib/atscppapi/src/GzipInflateTransformation.cc @@ -24,7 +24,7 @@ #include #include #include -#include +#include #include "atscppapi/TransformationPlugin.h" #include "atscppapi/GzipInflateTransformation.h" #include "logging_internal.h" http://git-wip-us.apache.org/repos/asf/trafficserver/blob/def017b4/lib/atscppapi/src/TransformationPlugin.cc
trafficserver git commit: Fix issue with TS-3885. Changes to TSNetVConn test to prevent it from hanging when the defer_accept is set ( via config or kernel option). This close #313.
Repository: trafficserver Updated Branches: refs/heads/master 4188d7f26 -> 9dc6dabed Fix issue with TS-3885. Changes to TSNetVConn test to prevent it from hanging when the defer_accept is set ( via config or kernel option). This close #313. Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/9dc6dabe Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/9dc6dabe Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/9dc6dabe Branch: refs/heads/master Commit: 9dc6dabed9afcde8199db1c2debc62d72274ea4e Parents: 4188d7f Author: Jason Kenny Authored: Tue Oct 27 09:30:35 2015 -0500 Committer: Alan M. Carroll Committed: Fri Nov 20 08:48:51 2015 -0600 -- proxy/InkAPITest.cc | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/9dc6dabe/proxy/InkAPITest.cc -- diff --git a/proxy/InkAPITest.cc b/proxy/InkAPITest.cc index 92fa95a..566ca88 100644 --- a/proxy/InkAPITest.cc +++ b/proxy/InkAPITest.cc @@ -298,6 +298,8 @@ server_handler(TSCont contp, TSEvent event, void *data) SDK_RPRINT(params->test, params->api, "ServerEvent EOS", TC_PASS, "ok"); *params->pstatus = REGRESSION_TEST_PASSED; delete params; + } else if (event == TS_EVENT_VCONN_READ_READY) { +SDK_RPRINT(params->test, params->api, "ServerEvent READ_READY", TC_PASS, "ok"); } else { SDK_RPRINT(params->test, params->api, "ServerEvent", TC_FAIL, "received unexpected event %d", event); *params->pstatus = REGRESSION_TEST_FAILED; @@ -321,10 +323,16 @@ client_handler(TSCont contp, TSEvent event, void *data) // Fix me: how to deal with server side cont? TSContDestroy(contp); return 1; - } else { + } else if (TS_EVENT_NET_CONNECT == event) { sockaddr const *addr = TSNetVConnRemoteAddrGet(static_cast(data)); uint16_t input_server_port = ats_ip_port_host_order(addr); +// If DEFER_ACCEPT is enabled in the OS then the user space accept() doesn't +// happen until data arrives on the socket. Because we're just testing the accept() +// we write a small amount of ignored data to make sure this gets triggered. +UnixNetVConnection *vc = static_cast(data); +::write(vc->con.fd, "Bob's your uncle", 16); + sleep(1); // XXX this sleep ensures the server end gets the accept event. if (ats_is_ip_loopback(addr)) {