You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by so...@apache.org on 2015/01/28 00:56:21 UTC

[1/2] trafficserver git commit: TS-3333: Enable TOS settings on IPv6 connections

Repository: trafficserver
Updated Branches:
  refs/heads/master 2f6e3269f -> 6ef00b89a


TS-3333: Enable TOS settings on IPv6 connections


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/6ef00b89
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/6ef00b89
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/6ef00b89

Branch: refs/heads/master
Commit: 6ef00b89a65ed876e0abf07ec0fd32d0fac7eda2
Parents: 138269e
Author: Phil Sorber <so...@apache.org>
Authored: Tue Jan 27 16:55:41 2015 -0700
Committer: Phil Sorber <so...@apache.org>
Committed: Tue Jan 27 16:56:09 2015 -0700

----------------------------------------------------------------------
 CHANGES                      |  2 ++
 iocore/net/UnixConnection.cc |  6 +++++-
 iocore/net/UnixNetAccept.cc  | 12 ++++++++++--
 3 files changed, 17 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/6ef00b89/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 284e440..be56328 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 5.3.0
 
+  *) [TS-3333] Enable TOS settings on IPv6 connections.
+
   *) [TS-3332] Allow set-conn-dscp to work in remap.
 
   *) [TS-3330] Several broken stats

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/6ef00b89/iocore/net/UnixConnection.cc
----------------------------------------------------------------------
diff --git a/iocore/net/UnixConnection.cc b/iocore/net/UnixConnection.cc
index ebe2791..420add1 100644
--- a/iocore/net/UnixConnection.cc
+++ b/iocore/net/UnixConnection.cc
@@ -386,7 +386,11 @@ Connection::apply_options(NetVCOptions const& opt)
 
 #if TS_HAS_IP_TOS
   uint32_t tos = opt.packet_tos;
-  safe_setsockopt(fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&tos), sizeof(uint32_t));
+  if (addr.isIp4()) {
+    safe_setsockopt(fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&tos), sizeof(uint32_t));
+  } else if (addr.isIp6()) {
+    safe_setsockopt(fd, IPPROTO_IPV6, IPV6_TCLASS, reinterpret_cast<char *>(&tos), sizeof(uint32_t));
+  }
 #endif
 }
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/6ef00b89/iocore/net/UnixNetAccept.cc
----------------------------------------------------------------------
diff --git a/iocore/net/UnixNetAccept.cc b/iocore/net/UnixNetAccept.cc
index 5ba79fc..0092c1a 100644
--- a/iocore/net/UnixNetAccept.cc
+++ b/iocore/net/UnixNetAccept.cc
@@ -283,7 +283,11 @@ NetAccept::do_blocking_accept(EThread * t)
 
 #if TS_HAS_IP_TOS
       if (packet_tos != 0) {
-        safe_setsockopt(con.fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        if (con.addr.isIp4()) {
+          safe_setsockopt(con.fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        } else if (con.addr.isIp6()) {
+          safe_setsockopt(con.fd, IPPROTO_IPV6, IPV6_TCLASS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        }
       }
 #endif
 
@@ -420,7 +424,11 @@ NetAccept::acceptFastEvent(int event, void *ep)
 
 #if TS_HAS_IP_TOS
       if (packet_tos != 0) {
-        safe_setsockopt(fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        if (con.addr.isIp4()) {
+          safe_setsockopt(con.fd, IPPROTO_IP, IP_TOS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        } else if (con.addr.isIp6()) {
+          safe_setsockopt(con.fd, IPPROTO_IPV6, IPV6_TCLASS, reinterpret_cast<char *>(&packet_tos), sizeof(uint32_t));
+        }
       }
 #endif
       do {


[2/2] trafficserver git commit: TS-3332: Allow set-conn-dscp to work in remap

Posted by so...@apache.org.
TS-3332: Allow set-conn-dscp to work in remap


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/138269ee
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/138269ee
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/138269ee

Branch: refs/heads/master
Commit: 138269ee2f585de819a3924d30d42508a0513cb2
Parents: 2f6e326
Author: Phil Sorber <so...@apache.org>
Authored: Tue Jan 27 16:52:47 2015 -0700
Committer: Phil Sorber <so...@apache.org>
Committed: Tue Jan 27 16:56:09 2015 -0700

----------------------------------------------------------------------
 CHANGES                             | 2 ++
 plugins/header_rewrite/operators.cc | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/138269ee/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index ea15c58..284e440 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 5.3.0
 
+  *) [TS-3332] Allow set-conn-dscp to work in remap.
+
   *) [TS-3330] Several broken stats
 
   *) [TS-3326] apply proxy.config.http.send_http11_requests when hostdb is

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/138269ee/plugins/header_rewrite/operators.cc
----------------------------------------------------------------------
diff --git a/plugins/header_rewrite/operators.cc b/plugins/header_rewrite/operators.cc
index aed1046..9b34edf 100644
--- a/plugins/header_rewrite/operators.cc
+++ b/plugins/header_rewrite/operators.cc
@@ -563,12 +563,13 @@ OperatorSetConnDSCP::initialize_hooks()
 {
   add_allowed_hook(TS_HTTP_READ_REQUEST_HDR_HOOK);
   add_allowed_hook(TS_HTTP_SEND_RESPONSE_HDR_HOOK);
+  add_allowed_hook(TS_REMAP_PSEUDO_HOOK);
 }
 
 void
 OperatorSetConnDSCP::exec(const Resources& res) const
 {
   if (res.txnp) {
-    TSHttpTxnClientPacketTosSet(res.txnp, _ds_value.get_int_value());
+    TSHttpTxnClientPacketTosSet(res.txnp, _ds_value.get_int_value() << 2);
   }
 }