[GitHub] trafficserver pull request #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread oknet
Github user oknet commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85916702
  
--- Diff: iocore/net/I_NetVConnection.h ---
@@ -541,6 +545,31 @@ class NetVConnection : public VConnection
   unsigned int attributes;
   EThread *thread;
 
+  // es - origin_trace associated connections
--- End diff --

yes, pulled from SSLNetVConnection. And put the wiretrace logic into 
raw_read/write and read/write function that make the code simply and clearly. 
Just call NetProfileSM::read()/write()/raw_read()/raw_write() and you will get 
wiretrace feature.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31365&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31365
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:11
Start Date: 01/Nov/16 12:11
Worklog Time Spent: 10m 
  Work Description: Github user oknet commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85916702
  
--- Diff: iocore/net/I_NetVConnection.h ---
@@ -541,6 +545,31 @@ class NetVConnection : public VConnection
   unsigned int attributes;
   EThread *thread;
 
+  // es - origin_trace associated connections
--- End diff --

yes, pulled from SSLNetVConnection. And put the wiretrace logic into 
raw_read/write and read/write function that make the code simply and clearly. 
Just call NetProfileSM::read()/write()/raw_read()/raw_write() and you will get 
wiretrace feature.


Issue Time Tracking
---

Worklog Id: (was: 31365)
Time Spent: 1h 20m  (was: 1h 10m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for S

[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1024/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1130/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31367&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31367
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:13
Start Date: 01/Nov/16 12:13
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1130/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31367)
Time Spent: 1h 40m  (was: 1.5h)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as a

[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31366&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31366
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:13
Start Date: 01/Nov/16 12:13
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1024/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31366)
Time Spent: 1.5h  (was: 1h 20m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as a membe

[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31368&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31368
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:17
Start Date: 01/Nov/16 12:17
Worklog Time Spent: 10m 
  Work Description: Github user oknet commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85917648
  
--- Diff: iocore/net/Makefile.am ---
@@ -73,13 +76,11 @@ libinknet_a_SOURCES = \
   P_Socks.h \
   P_SSLCertLookup.h \
   P_SSLConfig.h \
-  P_SSLNetAccept.h \
   P_SSLNetProcessor.h \
-  P_SSLNetVConnection.h \
-  P_SSLNextProtocolAccept.h \
-  P_SSLNextProtocolSet.h \
+  I_SSLNextProtocolSet.h \
--- End diff --

Here, I'm rename P_SSLNextProtocolSet.h to I_SSLNextProtocolSet.h.
It expose the "SSLNextProtocolSet" for "ProtocolProbeSessionAccept" in 
proxy directory.
The dup one removed.


Issue Time Tracking
---

Worklog Id: (was: 31368)
Time Spent: 1h 50m  (was: 1h 40m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profi

[GitHub] trafficserver pull request #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread oknet
Github user oknet commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85917648
  
--- Diff: iocore/net/Makefile.am ---
@@ -73,13 +76,11 @@ libinknet_a_SOURCES = \
   P_Socks.h \
   P_SSLCertLookup.h \
   P_SSLConfig.h \
-  P_SSLNetAccept.h \
   P_SSLNetProcessor.h \
-  P_SSLNetVConnection.h \
-  P_SSLNextProtocolAccept.h \
-  P_SSLNextProtocolSet.h \
+  I_SSLNextProtocolSet.h \
--- End diff --

Here, I'm rename P_SSLNextProtocolSet.h to I_SSLNextProtocolSet.h.
It expose the "SSLNextProtocolSet" for "ProtocolProbeSessionAccept" in 
proxy directory.
The dup one removed.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread oknet
Github user oknet commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85917920
  
--- Diff: iocore/net/NetProfileSM.cc ---
@@ -1,5 +1,7 @@
 /** @file
 
+  A brief file description
+
--- End diff --

sorry, I don't know what should be here, just copy the header from 
UnixNetVConnection.cc.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31369&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31369
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:19
Start Date: 01/Nov/16 12:19
Worklog Time Spent: 10m 
  Work Description: Github user oknet commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85917920
  
--- Diff: iocore/net/NetProfileSM.cc ---
@@ -1,5 +1,7 @@
 /** @file
 
+  A brief file description
+
--- End diff --

sorry, I don't know what should be here, just copy the header from 
UnixNetVConnection.cc.


Issue Time Tracking
---

Worklog Id: (was: 31369)
Time Spent: 2h  (was: 1h 50m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2h
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add mis

[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31370&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31370
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:22
Start Date: 01/Nov/16 12:22
Worklog Time Spent: 10m 
  Work Description: Github user oknet commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85918330
  
--- Diff: iocore/net/SSLProfileSM.cc ---
@@ -206,20 +275,11 @@ ssl_read_from_net(SSLNetVConnection *sslvc, EThread 
*lthread, int64_t &ret)
   }
 }
 
-Debug("ssl", "[SSL_NetVConnection::ssl_read_from_net] 
b->write_avail()=%" PRId64, block_write_avail);
+Debug("ssl", "[SSLProfileSM::read_from_net] b->write_avail()=%" 
PRId64, block_write_avail);
 char *current_block = buf.writer()->end();
-sslErr  = SSLReadBuffer(sslvc->ssl, current_block, 
block_write_avail, nread);
+nread   = this->read(current_block, block_write_avail, 
sslErr);
 
-Debug("ssl", "[SSL_NetVConnection::ssl_read_from_net] nread=%d", 
(int)nread);
-if (!sslvc->origin_trace) {
-  TraceIn((0 < nread && trace), sslvc->get_remote_addr(), 
sslvc->get_remote_port(), "WIRE TRACE\tbytes=%d\n%.*s", (int)nread,
-  (int)nread, current_block);
-} else {
-  char origin_trace_ip[INET6_ADDRSTRLEN];
-  ats_ip_ntop(sslvc->origin_trace_addr, origin_trace_ip, 
sizeof(origin_trace_ip));
-  TraceIn((0 < nread && trace), sslvc->get_remote_addr(), 
sslvc->get_remote_port(), "CLIENT %s:%d\ttbytes=%d\n%.*s",
-  origin_trace_ip, sslvc->origin_trace_port, (int)nread, 
(int)nread, current_block);
-}
+Debug("ssl", "[SSLNetProfileSM::read_from_net] nread=%d", (int)nread);
--- End diff --

move it into SSLProfileSM::read()/write()


Issue Time Tracking
---

Worklog Id: (was: 31370)
Time Spent: 2h 10m  (was: 2h)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> -

[GitHub] trafficserver pull request #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread oknet
Github user oknet commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1131#discussion_r85918330
  
--- Diff: iocore/net/SSLProfileSM.cc ---
@@ -206,20 +275,11 @@ ssl_read_from_net(SSLNetVConnection *sslvc, EThread 
*lthread, int64_t &ret)
   }
 }
 
-Debug("ssl", "[SSL_NetVConnection::ssl_read_from_net] 
b->write_avail()=%" PRId64, block_write_avail);
+Debug("ssl", "[SSLProfileSM::read_from_net] b->write_avail()=%" 
PRId64, block_write_avail);
 char *current_block = buf.writer()->end();
-sslErr  = SSLReadBuffer(sslvc->ssl, current_block, 
block_write_avail, nread);
+nread   = this->read(current_block, block_write_avail, 
sslErr);
 
-Debug("ssl", "[SSL_NetVConnection::ssl_read_from_net] nread=%d", 
(int)nread);
-if (!sslvc->origin_trace) {
-  TraceIn((0 < nread && trace), sslvc->get_remote_addr(), 
sslvc->get_remote_port(), "WIRE TRACE\tbytes=%d\n%.*s", (int)nread,
-  (int)nread, current_block);
-} else {
-  char origin_trace_ip[INET6_ADDRSTRLEN];
-  ats_ip_ntop(sslvc->origin_trace_addr, origin_trace_ip, 
sizeof(origin_trace_ip));
-  TraceIn((0 < nread && trace), sslvc->get_remote_addr(), 
sslvc->get_remote_port(), "CLIENT %s:%d\ttbytes=%d\n%.*s",
-  origin_trace_ip, sslvc->origin_trace_port, (int)nread, 
(int)nread, current_block);
-}
+Debug("ssl", "[SSLNetProfileSM::read_from_net] nread=%d", (int)nread);
--- End diff --

move it into SSLProfileSM::read()/write()


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31371&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31371
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:36
Start Date: 01/Nov/16 12:36
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1131/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31371)
Time Spent: 2h 20m  (was: 2h 10m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as

[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1131/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1025/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31372&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31372
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:37
Start Date: 01/Nov/16 12:37
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1025/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31372)
Time Spent: 2.5h  (was: 2h 20m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as a membe

[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1026/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31373&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31373
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:44
Start Date: 01/Nov/16 12:44
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
Linux build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1026/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31373)
Time Spent: 2h 40m  (was: 2.5h)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as a mem

[GitHub] trafficserver issue #1131: TS-4322: Proposal: NetProfileSM

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1132/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4322) ProfileSM Proposal

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4322?focusedWorklogId=31374&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31374
 ]

ASF GitHub Bot logged work on TS-4322:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 12:59
Start Date: 01/Nov/16 12:59
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1131
  
FreeBSD build *failed*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1132/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31374)
Time Spent: 2h 50m  (was: 2h 40m)

> ProfileSM Proposal
> --
>
> Key: TS-4322
> URL: https://issues.apache.org/jira/browse/TS-4322
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Core, Network
>Reporter: Oknet Xu
> Fix For: sometime
>
> Attachments: ATS SslProfileSMv1.png, ATS TcpProfileSM.png
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> Preface
> ===
> NetVConnection is a base class for all NetIO derived classes:
>   - NetVConnection
> - UnixNetVConnection for TCP NetIO
>   - SSLNetVConnection for SSL NetIO
> with the below codes to test a NetVC whether is a SSLNetVC :
> {code}
>   sslvc = dynamic_castnetvc;
>   if (sslvc != NULL)
>   {
>  // netvc is a SSLNetVConnection
>   } else {
>  // netvc is a UnixNetVConnection
>   }
> {code}
> ATS support HTTP, SPDY and H2 protocol, and also support them with SSL/TLS.
> Sometimes we want to talk in HTTP/TCP first, and then talk in HTTP/SSL,
> Example : HTTPS over HTTP CONNECT method
> {code}
> Client send a CONNECT method request
> C->P: CONNECT www.example.com:443 HTTP/1.1
> C->P: Host: www.example.com:443
> C->P:
> ATS reply a HTTP 200/OK, then build a TCP tunnel to www.example.com:443
> P->C: 200 OK
> P->C: 
> Client send a SSL Handshake Client Hello message
> C->P: 
> ATS tunnel the message
> P->S: 
> Server response a SSL Handshake Server Hello message
> P<-S: 
> ATS tunnel the message
> C<-P: 
> Server send a Certificate to ATS
> P<-S: 
> ATS tunnel the message
> C<-P: 
> etc . . .
> {code}
> currently, It isn't a easy way upgrading to SSLNetVConnection from 
> UnixNetVConnection.
> the ProfileSM is designed to setup a plugable mechanism for 
> UnixNetVConnection to handle(abstract) different type of I/O operation.
> so we will have TcpProfileSM and UdpProfileSM as low level ProfileSM and 
> SslProfileSM as high level ProfileSM.
> How to implement
> 
> Introduce a new class ProfileSM & TcpProfileSM & SslProfileSM :
> It is a derived class from Continuation
> - Has handleEvent() function
> - Has mutex member
> TcpProfileSM is a derived class from ProfileSM
> SslProfileSM is a derived class from ProfileSM
> handshakeEvent(int event, void *data) function
> - only defined in SslProfileSM
> - the SSL handshake handle function
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> - it is implement NPN/ALPN support and replace SSLNextProtocolAccept & 
> SSLNextProtocolTrampoline, pick some codes from sslvc->net_read_io(), 
> write_to_net_io()
> - set Continuation->handler to mainEvent() when HandShake done.
> mainEvent(int event, void *data) function
> - the first entrance
> - `event' can be IOCORE_EVENTS_READ or IOCORE_EVENTS_WRITE
> - it is callback from NetHandler::mainNetEvent()
> - `data' is a pointer to Nethandler type
> handle_read(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_READ
> - for TcpProfileSM, it call vc->net_read_io(nh, lthread)
> - for SslProfileSM, it call sslvc->net_read_io(nh, lthread)
> handle_write(NetHandler *nh, EThread *lthread)
> - it is called by mainEvent() if event is IOCORE_EVENTS_WRITE
> - for TcpProfileSM, it call write_to_net(nh, lthread)
> - for SslProfileSM, it call write_to_net(nh, lthread)
> raw_read() and raw_readv()
> - for TcpProfileSM, it is wrap for syscall read() & readv()
> - for SslProfileSM, it is wrap for SSL_read()
> raw_write() and raw_writev()
> - for TcpProfileSM, it is wrap for syscall write() & writev()
> - for SslProfileSM, it is wrap for SSL_write()
> ProfileSM *low_profilesm;
> - for TcpProfileSM, it set to NULL
> - for SslProfileSM, it set to TcpProfileSM
> minor change in functions
> - vc->net_read_io()
> - sslvc->net_read_io()
> - read_from_net()
> - ssl_read_from_net()
> - write_to_net(), write_to_net_io()
> - vc->load_buffer_and_write()
> - sslvc->load_buffer_and_write()
> add misc for SslProfileSM (reference SSLUnixNetVConnection)
> - SSL *ssl;
> - MIOBuffer *handshakebuffer
> At last,
> add ProfileSM *profile_sm to UnixNetVConnection as

[jira] [Assigned] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread Leif Hedstrom (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Leif Hedstrom reassigned TS-5024:
-

Assignee: Leif Hedstrom  (was: Meera Mosale Nataraja)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread Leif Hedstrom (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-5024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15625550#comment-15625550
 ] 

Leif Hedstrom commented on TS-5024:
---

There's an easy solution specific to the gzip plugin for this problem, which  
[~vmamidi] discovered comes from the fact that the HttpSM can be restarted 
(e.g. via escalate plugin). We can simply change the plugin to not run gzip on 
404 responses :).

{code}
diff --git a/plugins/gzip/gzip.cc b/plugins/gzip/gzip.cc
index 51110b1..d6d7dd0 100644
--- a/plugins/gzip/gzip.cc
+++ b/plugins/gzip/gzip.cc
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
 info("http response status [%d] is not compressible", resp_status);
 TSHandleMLocRelease(bufp, TS_NULL_MLOC, hdr_loc);
 return 0;
{code}

I think the "downside" here is very marginal, but curious if [~oschaaf] had 
some real reasons why it is important to gzip these error pages ?

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1120: TS-4978: illegal memory access with ticket...

2016-11-01 Thread SolidWallOfCode
Github user SolidWallOfCode closed the pull request at:

https://github.com/apache/trafficserver/pull/1120


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4978) CID 1364311: Memory - illegal accesses (USE_AFTER_FREE) in iocore/net/SSLConfig.cc

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4978?focusedWorklogId=31375&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31375
 ]

ASF GitHub Bot logged work on TS-4978:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:25
Start Date: 01/Nov/16 14:25
Worklog Time Spent: 10m 
  Work Description: Github user SolidWallOfCode closed the pull request at:

https://github.com/apache/trafficserver/pull/1120


Issue Time Tracking
---

Worklog Id: (was: 31375)
Time Spent: 1.5h  (was: 1h 20m)

> CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE) in 
> iocore/net/SSLConfig.cc
> 
>
> Key: TS-4978
> URL: https://issues.apache.org/jira/browse/TS-4978
> Project: Traffic Server
>  Issue Type: Bug
>  Components: TLS
>Reporter: Leif Hedstrom
>Assignee: Syeda Persia Aziz
> Fix For: 7.1.0
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> I think this is perhaps from TS-4858:
> {code}
> *** CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE)
> /iocore/net/SSLConfig.cc: 258 in SSLConfigParams::initialize()()
> 252   ats_free(ssl_server_ca_cert_filename);
> 253   ats_free(CACertRelativePath);
> 254 
> 255 #if HAVE_OPENSSL_SESSION_TICKETS
> 256   REC_ReadConfigStringAlloc(ticket_key_filename, 
> "proxy.config.ssl.server.ticket_key.filename");
> 257   if (this->ticket_key_filename != NULL) {
>CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE)
>Passing freed pointer "this->ticket_key_filename" as an argument to 
> "relative_to".
> 258 ats_scoped_str 
> ticket_key_path(Layout::relative_to(this->serverCertPathOnly, 
> this->ticket_key_filename));
> 259 default_global_keyblock = 
> ssl_create_ticket_keyblock(ticket_key_path);
> 260   } else {
> 261 default_global_keyblock = ssl_create_ticket_keyblock(NULL);
> 262   }
> 263 #endif
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TS-4978) CID 1364311: Memory - illegal accesses (USE_AFTER_FREE) in iocore/net/SSLConfig.cc

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll resolved TS-4978.
-
Resolution: Fixed

> CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE) in 
> iocore/net/SSLConfig.cc
> 
>
> Key: TS-4978
> URL: https://issues.apache.org/jira/browse/TS-4978
> Project: Traffic Server
>  Issue Type: Bug
>  Components: TLS
>Reporter: Leif Hedstrom
>Assignee: Syeda Persia Aziz
> Fix For: 7.1.0
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> I think this is perhaps from TS-4858:
> {code}
> *** CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE)
> /iocore/net/SSLConfig.cc: 258 in SSLConfigParams::initialize()()
> 252   ats_free(ssl_server_ca_cert_filename);
> 253   ats_free(CACertRelativePath);
> 254 
> 255 #if HAVE_OPENSSL_SESSION_TICKETS
> 256   REC_ReadConfigStringAlloc(ticket_key_filename, 
> "proxy.config.ssl.server.ticket_key.filename");
> 257   if (this->ticket_key_filename != NULL) {
>CID 1364311:  Memory - illegal accesses  (USE_AFTER_FREE)
>Passing freed pointer "this->ticket_key_filename" as an argument to 
> "relative_to".
> 258 ats_scoped_str 
> ticket_key_path(Layout::relative_to(this->serverCertPathOnly, 
> this->ticket_key_filename));
> 259 default_global_keyblock = 
> ssl_create_ticket_keyblock(ticket_key_path);
> 260   } else {
> 261 default_global_keyblock = ssl_create_ticket_keyblock(NULL);
> 262   }
> 263 #endif
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread Leif Hedstrom (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-5024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15625550#comment-15625550
 ] 

Leif Hedstrom edited comment on TS-5024 at 11/1/16 2:25 PM:


There's an easy solution specific to the gzip plugin for this problem, which  
[~vmamidi] and [~meeramn] discovered comes from the fact that the HttpSM can be 
restarted in some cases (e.g. via escalate plugin). We can simply change the 
plugin to not run gzip on 404 responses :).

{code}
diff --git a/plugins/gzip/gzip.cc b/plugins/gzip/gzip.cc
index 51110b1..d6d7dd0 100644
--- a/plugins/gzip/gzip.cc
+++ b/plugins/gzip/gzip.cc
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
 info("http response status [%d] is not compressible", resp_status);
 TSHandleMLocRelease(bufp, TS_NULL_MLOC, hdr_loc);
 return 0;
{code}

I think the "downside" here is very marginal, but curious if [~oschaaf] had 
some real reasons why it is important to gzip these error pages ?


was (Author: zwoop):
There's an easy solution specific to the gzip plugin for this problem, which  
[~vmamidi] discovered comes from the fact that the HttpSM can be restarted 
(e.g. via escalate plugin). We can simply change the plugin to not run gzip on 
404 responses :).

{code}
diff --git a/plugins/gzip/gzip.cc b/plugins/gzip/gzip.cc
index 51110b1..d6d7dd0 100644
--- a/plugins/gzip/gzip.cc
+++ b/plugins/gzip/gzip.cc
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
 info("http response status [%d] is not compressible", resp_status);
 TSHandleMLocRelease(bufp, TS_NULL_MLOC, hdr_loc);
 return 0;
{code}

I think the "downside" here is very marginal, but curious if [~oschaaf] had 
some real reasons why it is important to gzip these error pages ?

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1166: TS-5024: Limits the gzip to 200 OK respons...

2016-11-01 Thread zwoop
GitHub user zwoop opened a pull request:

https://github.com/apache/trafficserver/pull/1166

TS-5024: Limits the gzip to 200 OK responses



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/zwoop/trafficserver TS-5024

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/trafficserver/pull/1166.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1166


commit f1e5c2e889cefe99ebe38ee65d0cb37121ed635e
Author: Leif Hedstrom 
Date:   2016-11-01T14:25:07Z

TS-5024: Limits the gzip to 200 OK responses




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1154: TS-5011: Fixes memory leak in CLFUS compre...

2016-11-01 Thread zwoop
Github user zwoop closed the pull request at:

https://github.com/apache/trafficserver/pull/1154


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Created] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread Alan M. Carroll (JIRA)
Alan M. Carroll created TS-5025:
---

 Summary: CPP API Request object should directly support setting 
the host.
 Key: TS-5025
 URL: https://issues.apache.org/jira/browse/TS-5025
 Project: Traffic Server
  Issue Type: Improvement
  Components: CPP API
Reporter: Alan M. Carroll
Assignee: Brian Geffon


Just setting the host in the URL or in the headers can create a malformed 
request. The {{Request}} object itself should support at {{setHost}} method 
that takes care of the details of updating both without adding the host to the 
URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31376&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31376
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:27
Start Date: 01/Nov/16 14:27
Worklog Time Spent: 10m 
  Work Description: GitHub user zwoop opened a pull request:

https://github.com/apache/trafficserver/pull/1166

TS-5024: Limits the gzip to 200 OK responses



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/zwoop/trafficserver TS-5024

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/trafficserver/pull/1166.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1166


commit f1e5c2e889cefe99ebe38ee65d0cb37121ed635e
Author: Leif Hedstrom 
Date:   2016-11-01T14:25:07Z

TS-5024: Limits the gzip to 200 OK responses




Issue Time Tracking
---

Worklog Id: (was: 31376)
Time Spent: 10m
Remaining Estimate: 0h

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-5011) Memory leak in CFLUS compression

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5011?focusedWorklogId=31377&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31377
 ]

ASF GitHub Bot logged work on TS-5011:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:28
Start Date: 01/Nov/16 14:28
Worklog Time Spent: 10m 
  Work Description: Github user zwoop closed the pull request at:

https://github.com/apache/trafficserver/pull/1154


Issue Time Tracking
---

Worklog Id: (was: 31377)
Time Spent: 1h 10m  (was: 1h)

> Memory leak in CFLUS compression
> 
>
> Key: TS-5011
> URL: https://issues.apache.org/jira/browse/TS-5011
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Cache
>Reporter: Leif Hedstrom
>Assignee: Leif Hedstrom
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> John sent me the fix for this, all the credit to him.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread Otto van der Schaaf (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-5024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15625587#comment-15625587
 ] 

Otto van der Schaaf commented on TS-5024:
-

I agree that it is probably better to just stick to 200/OK. But [~zwoop] do we 
also need to worry about seeing two 200/OK responses when the HttpSM is 
restarted? Wouldn't that result in the same problem?

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1166: TS-5024: Limits the gzip to 200 OK responses

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1166
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1133/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31378&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31378
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:40
Start Date: 01/Nov/16 14:40
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1166
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1133/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31378)
Time Spent: 20m  (was: 10m)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1166: TS-5024: Limits the gzip to 200 OK responses

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1166
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1027/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1166: TS-5024: Limits the gzip to 200 OK respons...

2016-11-01 Thread oschaaf
Github user oschaaf commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85942529
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

This seems like a good change to me, it's the probably safer default -- but 
is it possible that we see `200/OK` two times  here when the HttpSM is 
restarted? 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31380&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31380
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:45
Start Date: 01/Nov/16 14:45
Worklog Time Spent: 10m 
  Work Description: Github user oschaaf commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85942529
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

This seems like a good change to me, it's the probably safer default -- but 
is it possible that we see `200/OK` two times  here when the HttpSM is 
restarted? 


Issue Time Tracking
---

Worklog Id: (was: 31380)
Time Spent: 40m  (was: 0.5h)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31379&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31379
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:45
Start Date: 01/Nov/16 14:45
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1166
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1027/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31379)
Time Spent: 0.5h  (was: 20m)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1167: TS-5025: Add 'setHost' method to 'atscppap...

2016-11-01 Thread SolidWallOfCode
GitHub user SolidWallOfCode opened a pull request:

https://github.com/apache/trafficserver/pull/1167

TS-5025: Add 'setHost' method to 'atscppapi::Request'



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/SolidWallOfCode/trafficserver ts-5025

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/trafficserver/pull/1167.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1167


commit 250f49d64b0cb222c448c8d48628bdb3c757211b
Author: Alan M. Carroll 
Date:   2016-11-01T14:29:00Z

TS-5025: Add "setHost" method to atscppapi::Request




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31381&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31381
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 14:48
Start Date: 01/Nov/16 14:48
Worklog Time Spent: 10m 
  Work Description: GitHub user SolidWallOfCode opened a pull request:

https://github.com/apache/trafficserver/pull/1167

TS-5025: Add 'setHost' method to 'atscppapi::Request'



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/SolidWallOfCode/trafficserver ts-5025

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/trafficserver/pull/1167.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1167


commit 250f49d64b0cb222c448c8d48628bdb3c757211b
Author: Alan M. Carroll 
Date:   2016-11-01T14:29:00Z

TS-5025: Add "setHost" method to atscppapi::Request




Issue Time Tracking
---

Worklog Id: (was: 31381)
Time Spent: 10m
Remaining Estimate: 0h

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1167: TS-5025: Add 'setHost' method to 'atscppapi::Requ...

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1134/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31382&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31382
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:00
Start Date: 01/Nov/16 15:00
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1134/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31382)
Time Spent: 20m  (was: 10m)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1167: TS-5025: Add 'setHost' method to 'atscppapi::Requ...

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1028/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31383&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31383
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:04
Start Date: 01/Nov/16 15:04
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1028/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31383)
Time Spent: 0.5h  (was: 20m)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TS-1773) Consistently use ink_atoi() (or one of the equivalent functions we provide)

2016-11-01 Thread Alan M. Carroll (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15625634#comment-15625634
 ] 

Alan M. Carroll commented on TS-1773:
-

My proposed man page is attached.

> Consistently use ink_atoi() (or one of the equivalent functions we provide)
> ---
>
> Key: TS-1773
> URL: https://issues.apache.org/jira/browse/TS-1773
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Leif Hedstrom
>Assignee: Meera Mosale Nataraja
>  Labels: newbie
> Fix For: 7.1.0
>
>
> Most of the code uses ink_atoi(), we should make sure we do so consistently. 
> In addition, perhaps we want to expose our internal version to plugin APIs, 
> since it does have additional features compared to atoi() / strtol().



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-1773) Consistently use ink_atoi() (or one of the equivalent functions we provide)

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll updated TS-1773:

Attachment: ts_atoi.en.rst

> Consistently use ink_atoi() (or one of the equivalent functions we provide)
> ---
>
> Key: TS-1773
> URL: https://issues.apache.org/jira/browse/TS-1773
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Core
>Reporter: Leif Hedstrom
>Assignee: Meera Mosale Nataraja
>  Labels: newbie
> Fix For: 7.1.0
>
> Attachments: ts_atoi.en.rst
>
>
> Most of the code uses ink_atoi(), we should make sure we do so consistently. 
> In addition, perhaps we want to expose our internal version to plugin APIs, 
> since it does have additional features compared to atoi() / strtol().



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1128: Doc: tweaks and cleanup

2016-11-01 Thread jsime
Github user jsime commented on the issue:

https://github.com/apache/trafficserver/pull/1128
  
Ah, no, sorry - this does look good as-is and I'm going to merge here 
momentarily. I was more thinking aloud about a somewhat longer-term approach to 
the enum issue (since we don't have an ideal solution with the current domains 
in Sphinx). But that shouldn't hold this PR up, since there's lots of other 
great cleanup in here.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1128: Doc: tweaks and cleanup

2016-11-01 Thread jsime
Github user jsime closed the pull request at:

https://github.com/apache/trafficserver/pull/1128


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


Failed: trafficserver (5562d87d)

2016-11-01 Thread Read the Docs

Build Failed for trafficserver (latest)



You can find out more about this failure here:
https://readthedocs.org/projects/trafficserver/builds/4589856/

If you have questions, a good place to start is the FAQ:
https://docs.readthedocs.org/en/latest/faq.html



Keep documenting,
Read the Docs
--
http://readthedocs.org


Build failed in Jenkins: docs-master #170

2016-11-01 Thread jenkins
https://ci.trafficserver.apache.org/job/docs-master/170/Changes:

[Bryan Call] TS-3939: Add a --enable-asan configure option

[Leif Hedstrom] CID 1268010 is a false positive

[amc] TS-4978: illegal memory access with ticket_key.filename

[Leif Hedstrom] TS-5011: Fixes memory leak in CLFUS compression

[jonsime] Doc: tweaks and cleanup

[jonsime] More tweaks.

[jonsime] Trying better enumeration support.

--
[...truncated 626 lines...]
make[1]: Leaving directory 
`
make[1]: Entering directory 
`
make[1]: Leaving directory 
`
make[1]: Entering directory 
`
make[1]: Leaving directory 
`
make[1]: Entering directory 
`
make[1]: Leaving directory 
`
PAPEROPT_a4="-D latex_paper_size=a4" PAPEROPT_letter="-D 
latex_paper_size=letter" PAPER="letter" ./sbuild sphinx-build -c . -D 
language='en' -d docbuild/doctrees -b html . docbuild/html
Running Sphinx v1.3.6
making output directory...
loading translations [en]... done
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 457 source files that are out of date
updating environment: [extensions changed] 454 added, 3 changed, 4 removed
reading sources... [  0%] admin-guide/configuration/cache-basics.en
reading sources... [  0%] admin-guide/configuration/explicit-forward-proxying.en
reading sources... [  0%] admin-guide/configuration/hierachical-caching.en
reading sources... [  0%] admin-guide/configuration/index.en
reading sources... [  1%] admin-guide/configuration/redirecting-http-requests.en
reading sources... [  1%] admin-guide/configuration/session-protocol.en
reading sources... [  1%] 
admin-guide/configuration/transparent-forward-proxying.en
reading sources... [  1%] admin-guide/configuration/transparent-proxy.en
reading sources... [  1%] admin-guide/configuration/transparent-proxy/bridge.en
reading sources... [  2%] admin-guide/configuration/transparent-proxy/build.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/router-inline.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/wccp-configuration.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/wccp-service-config.en
reading sources... [  3%] admin-guide/configuring-traffic-server.en
reading sources... [  3%] admin-guide/files/cache.config.en
reading sources... [  3%] admin-guide/files/congestion.config.en
reading sources... [  3%] admin-guide/files/hosting.config.en
reading sources... [  3%] admin-guide/files/index.en
reading sources... [  4%] admin-guide/files/ip_allow.config.en
reading sources... [  4%] admin-guide/files/log_hosts.config.en
reading sources... [  4%] admin-guide/files/logging.config.en
reading sources... [  4%] admin-guide/files/metrics.config.en
reading sources... [  5%] admin-guide/files/parent.config.en
reading sources... [  5%] admin-guide/files/plugin.config.en
reading sources... [  5%] admin-guide/files/records.config.en
reading sources... [  5%] admin-guide/files/remap.config.en
reading sources... [  5%] admin-guide/files/splitdns.config.en
reading sources... [  6%] admin-guide/files/ssl_multicert.config.en
reading sources... [  6%] admin-guide/files/storage.config.en
reading sources... [  6%] admin-guide/files/volume.config.en
reading sources... [  6%] admin-guide/index.en
reading sources... [  7%] admin-guide/installation/index.en
reading sources... [  7%] admin-guide/interaction/index.en
reading sources... [  7%] admin-guide/introduction.en
reading sources... [  7%] admin-guide/logging/cache-results.en
reading sources... [  7%] admin-guide/logging/destinations.en
reading sources... [  8%] admin-guide/logging/examples.en
reading sources... [  8%] admin-guide/logging/filters.en
reading sources... [  8%] admin-guide/logging/formatting.en
reading sources... [  8%] admin-guide/logging/index.en
reading sources... [  9%] admin-guide/logging/rotation.en
reading sources... [  9%] admin-guide/logging/understanding.en
reading sources... [  9%] admin-guide/monitoring/alarms.en
reading sources... [  9%] admin-guide/monitoring/error-messages.en
reading sources... [  9%] admin-guide/monitoring/index.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/builtin.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/index.en
reading sources... [ 10%] 
admin-guide/monitoring/monitoring/third-party/circonus.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/third-party/index.en
reading sources... [ 11%] 
admin-guide/monitoring/monitoring/third-party/logstash.en
reading source

Build failed in Jenkins: docs-master #171

2016-11-01 Thread jenkins
https://ci.trafficserver.apache.org/job/docs-master/171/--
[...truncated 51 lines...]
++ '[' '!' -f configure ']'
++ '[' '!' -f config.nice ']'
++ cd doc
++ echo 'Building English version'
Building English version
++ rm -rf docbuild/html
++ make -e 'SPHINXOPTS=-D language='\''en'\''' html
PAPEROPT_a4="-D latex_paper_size=a4" PAPEROPT_letter="-D 
latex_paper_size=letter" PAPER="letter" ./sbuild sphinx-build -c . -D 
language='en' -d docbuild/doctrees -b html . docbuild/html
Running Sphinx v1.3.6
making output directory...
loading translations [en]... done
loading pickled environment... not yet created
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 454 source files that are out of date
updating environment: 454 added, 0 changed, 0 removed
reading sources... [  0%] admin-guide/configuration/cache-basics.en
reading sources... [  0%] admin-guide/configuration/explicit-forward-proxying.en
reading sources... [  0%] admin-guide/configuration/hierachical-caching.en
reading sources... [  0%] admin-guide/configuration/index.en
reading sources... [  1%] admin-guide/configuration/redirecting-http-requests.en
reading sources... [  1%] admin-guide/configuration/session-protocol.en
reading sources... [  1%] 
admin-guide/configuration/transparent-forward-proxying.en
reading sources... [  1%] admin-guide/configuration/transparent-proxy.en
reading sources... [  1%] admin-guide/configuration/transparent-proxy/bridge.en
reading sources... [  2%] admin-guide/configuration/transparent-proxy/build.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/router-inline.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/wccp-configuration.en
reading sources... [  2%] 
admin-guide/configuration/transparent-proxy/wccp-service-config.en
reading sources... [  3%] admin-guide/configuring-traffic-server.en
reading sources... [  3%] admin-guide/files/cache.config.en
reading sources... [  3%] admin-guide/files/congestion.config.en
reading sources... [  3%] admin-guide/files/hosting.config.en
reading sources... [  3%] admin-guide/files/index.en
reading sources... [  4%] admin-guide/files/ip_allow.config.en
reading sources... [  4%] admin-guide/files/log_hosts.config.en
reading sources... [  4%] admin-guide/files/logging.config.en
reading sources... [  4%] admin-guide/files/metrics.config.en
reading sources... [  5%] admin-guide/files/parent.config.en
reading sources... [  5%] admin-guide/files/plugin.config.en
reading sources... [  5%] admin-guide/files/records.config.en
reading sources... [  5%] admin-guide/files/remap.config.en
reading sources... [  5%] admin-guide/files/splitdns.config.en
reading sources... [  6%] admin-guide/files/ssl_multicert.config.en
reading sources... [  6%] admin-guide/files/storage.config.en
reading sources... [  6%] admin-guide/files/volume.config.en
reading sources... [  6%] admin-guide/index.en
reading sources... [  7%] admin-guide/installation/index.en
reading sources... [  7%] admin-guide/interaction/index.en
reading sources... [  7%] admin-guide/introduction.en
reading sources... [  7%] admin-guide/logging/cache-results.en
reading sources... [  7%] admin-guide/logging/destinations.en
reading sources... [  8%] admin-guide/logging/examples.en
reading sources... [  8%] admin-guide/logging/filters.en
reading sources... [  8%] admin-guide/logging/formatting.en
reading sources... [  8%] admin-guide/logging/index.en
reading sources... [  9%] admin-guide/logging/rotation.en
reading sources... [  9%] admin-guide/logging/understanding.en
reading sources... [  9%] admin-guide/monitoring/alarms.en
reading sources... [  9%] admin-guide/monitoring/error-messages.en
reading sources... [  9%] admin-guide/monitoring/index.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/builtin.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/index.en
reading sources... [ 10%] 
admin-guide/monitoring/monitoring/third-party/circonus.en
reading sources... [ 10%] admin-guide/monitoring/monitoring/third-party/index.en
reading sources... [ 11%] 
admin-guide/monitoring/monitoring/third-party/logstash.en
reading sources... [ 11%] admin-guide/monitoring/statistics/accessing.en
reading sources... [ 11%] admin-guide/monitoring/statistics/core-statistics.en
reading sources... [ 11%] admin-guide/monitoring/statistics/core/bandwidth.en
reading sources... [ 11%] admin-guide/monitoring/statistics/core/cache-volume.en
reading sources... [ 12%] admin-guide/monitoring/statistics/core/cache.en
reading sources... [ 12%] admin-guide/monitoring/statistics/core/congestion.en
reading sources... [ 12%] admin-guide/monitoring/statistics/core/dns.en
reading sources... [ 12%] admin-guide/monitoring/statistics/core/general.en
reading sources... [ 12%] admin-guide/monitoring/statistics/core/hierarchical.en
reading sources... [ 13%] admin-guide/monitoring/statistics/core/hostdb.en
reading sources... [ 13%] 
admin-guide/monito

[jira] [Work logged] (TS-3245) getopt doesn't work correctly when used in plugin chaining

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-3245?focusedWorklogId=31384&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31384
 ]

ASF GitHub Bot logged work on TS-3245:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:33
Start Date: 01/Nov/16 15:33
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
Please format this PR as outlined 
[here](https://cwiki.apache.org/confluence/display/TS/Fall+2016+Summit?preview=/65866590/66849961/git_back_port_cherry_pick.pdf).


Issue Time Tracking
---

Worklog Id: (was: 31384)
Time Spent: 1h 10m  (was: 1h)

> getopt doesn't work correctly when used in plugin chaining
> --
>
> Key: TS-3245
> URL: https://issues.apache.org/jira/browse/TS-3245
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Affects Versions: 5.1.1
>Reporter: Sudheer Vinukonda
>Assignee: Peter Chou
>Priority: Minor
>  Labels: newbie
> Fix For: 7.0.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> When multiple plugins that use getopt are chained, it doesn't work correctly 
> for the subsequent plugins after the first plugin. [~jpe...@apache.org] and 
> [~zwoop] suggested that the getopt globals need to be reset (example, 
> {{optind = opterr = optopt = 0}}) before using it and would be better to do 
> it in the core during plugin loading to keep it simple/transparent from 
> plugin development. 
> Note that, if a plugin itself uses getopt multiple times on different argv's, 
> it would have to reset the globals between them. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #845: TS-3245: Allow multiple plugins to safely use geto...

2016-11-01 Thread PSUdaemon
Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
Please format this PR as outlined 
[here](https://cwiki.apache.org/confluence/display/TS/Fall+2016+Summit?preview=/65866590/66849961/git_back_port_cherry_pick.pdf).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver issue #1162: TS-5019: Add total header length checks in HPACK ...

2016-11-01 Thread PSUdaemon
Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1162
  
This should be a cherry-pick from a5c11a863d961099af500649c4669fb711d48991 
and not 79da839ba8fa85cb17593528c046d38b676e6126 which doesn't exist in my 
tree. It looks like you cherry-picked from your PR feature branch.

Also, make sure to have any conflicts uncommented.

Thanks.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5019) Add total header length checks in HPACK

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5019?focusedWorklogId=31385&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31385
 ]

ASF GitHub Bot logged work on TS-5019:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:47
Start Date: 01/Nov/16 15:47
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1162
  
This should be a cherry-pick from a5c11a863d961099af500649c4669fb711d48991 
and not 79da839ba8fa85cb17593528c046d38b676e6126 which doesn't exist in my 
tree. It looks like you cherry-picked from your PR feature branch.

Also, make sure to have any conflicts uncommented.

Thanks.


Issue Time Tracking
---

Worklog Id: (was: 31385)
Time Spent: 2h 10m  (was: 2h)

> Add total header length checks in HPACK
> ---
>
> Key: TS-5019
> URL: https://issues.apache.org/jira/browse/TS-5019
> Project: Traffic Server
>  Issue Type: Bug
>  Components: HTTP/2
>Reporter: Masaori Koshiba
>Assignee: Masaori Koshiba
> Fix For: 7.0.0
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-4888) collapsed_forwarding plugin returns TSREMAP_DID_REMAP though it did not perform remap

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4888?focusedWorklogId=31386&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31386
 ]

ASF GitHub Bot logged work on TS-4888:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:48
Start Date: 01/Nov/16 15:48
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1044
  
Please format this PR as outlined 
[here](https://cwiki.apache.org/confluence/display/TS/Fall+2016+Summit?preview=/65866590/66849961/git_back_port_cherry_pick.pdf).


Issue Time Tracking
---

Worklog Id: (was: 31386)
Time Spent: 2h  (was: 1h 50m)

> collapsed_forwarding plugin returns TSREMAP_DID_REMAP though it did not 
> perform remap
> -
>
> Key: TS-4888
> URL: https://issues.apache.org/jira/browse/TS-4888
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Affects Versions: 6.2.1, 7.1.0
>Reporter: Rajendra Kishore Bonumahanti
>Assignee: Phil Sorber
> Fix For: 7.0.0
>
>  Time Spent: 2h
>  Remaining Estimate: 0h
>
> Collapsed_forwarding plugin returns TSREMAP_DID_REMAP as a return value 
> though it did not perform any remap. This causes ATS not to perform remap and 
> makes the transaction failed due to DNS lookup error on "from url".
> For more details..
> Hi,
> I am testing collapsed_forwarding plugin 
> (https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/collapsed_forwarding.en.html?highlight=collapsed_forwarding)
>  via ATS 6.2.x branch.
> We observed an error "DNS error 2 for [testurl.com]" for cache-miss, when 
> remap.config is configured with "collapsed_forwarding" to work alone as a 
> remap plugin. We must modify TSRemapDoRemap() in the plugin to "return 
> TSREMAP_NO_REMAP" to allow DNS lookup successful. It does not seem right for 
> the plugin to do "return TSREMAP_NO_REMAP" when it did not.
> Can someone help me to understand how this plugin needs to be used? Or does 
> it require the fix I mentioned above?
> Regards,
> Kishore
> == Sample remap.config entry and cach miss error when used 
> "collapsed_forwarding" by itself == map http://testurl.com/ 
> http://origin.com/ @plugin=collapsed_forwarding.so @pparam=--delay=10 
> @pparam=--retries=5
> I observed that during cache-miss, DNS query happens on the 'from' url 
> (hostname) in the remap and it gets failed.
> 
> [Sep  9 19:39:16.355] Server {0x2b170ea6c940} DEBUG: (dns) send query 
> (qtype=1) for testurl.com to fd 43 [Sep  9 19:39:16.355] Server 
> {0x2b170ea6c940} DEBUG: (dns) sent qname = testurl.com, id = 9287, nameserver 
> = 1 [Sep  9 19:39:16.355] Server {0x2b170ea6c940} DEBUG: (dns) sent_one: 
> failover_number for resolve 1 is 1 [Sep  9 19:39:16.628] Server 
> {0x2b170ea6c940} DEBUG: (dns) received packet size = 52 [Sep  9 19:39:16.628] 
> Server {0x2b170ea6c940} DEBUG: (dns) round-robin: nameserver 1 DNS respons 
> code = 0 [Sep  9 19:39:16.628] Server {0x2b170ea6c940} DEBUG: (dns) received 
> rcode = 2 [Sep  9 19:39:16.628] Server {0x2b170ea6c940} DEBUG: (dns) DNS 
> error 2 for [testurl.com] [Sep  9 19:39:16.628] Server {0x2b170ea6c940} 
> DEBUG: (dns) doing retry for testurl.com
> I further looked in to the code and found that it is due to return code from 
> the plugin is TSREMAP_DID_REMAP in TSRemapDoRemap(). It makes ATS not to 
> perform remap.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1044: TS-4888: Modified collapsed_forwarding plugin to ...

2016-11-01 Thread PSUdaemon
Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1044
  
Please format this PR as outlined 
[here](https://cwiki.apache.org/confluence/display/TS/Fall+2016+Summit?preview=/65866590/66849961/git_back_port_cherry_pick.pdf).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1168: Tsqa-- switch to using build that exist

2016-11-01 Thread jacksontj
GitHub user jacksontj opened a pull request:

https://github.com/apache/trafficserver/pull/1168

Tsqa-- switch to using build that exist

Now that trafficserver support exposing what features it has through 
`traffic_layout` we don't need to build ATS for every run of TSQA (yay!). Once 
the support is merged into apache/trafficserver-qa#5 we can merge this in and 
start running tests against `TS_ROOT`s that already exist. This changes the 
command from `make test` to something like `make test 
TSQA_ATS_ROOT=~/workspace/trafficserver/` (or wherever your env is).

Single tests can still be run, but tsqa will still require the 
`TSQA_ATS_ROOT` environment variable, so a one-liner to do that would look 
like: `TSQA_ATS_ROOT=~/workspace/trafficserver/ nosetests tests/test_example.py`

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/jacksontj/trafficserver tsqa

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/trafficserver/pull/1168.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1168


commit 479060426966d2b4de23b35b7d28ddb3e4b64344
Author: Thomas Jackson 
Date:   2016-11-01T03:56:17Z

PoC TSQA running against existing builds

commit 291a3b6056d3f5dc29474a6432e81926e897ed03
Author: Thomas Jackson 
Date:   2016-11-01T04:16:50Z

Fix broken test-- invalid python

commit 032dd51345067334e1f52e23dbed690b536d2d40
Author: Thomas Jackson 
Date:   2016-11-01T04:28:16Z

Fix broken tests

commit 3d49b2966b87b445c24a3352d4007e3e3149f73e
Author: Thomas Jackson 
Date:   2016-11-01T15:23:05Z

Add timeouts, don't want tests to run forever

commit 3bb533f2417cebfc9c31f86eab130db2968d3703
Author: Thomas Jackson 
Date:   2016-11-01T15:23:37Z

Don't re-run regression tests

as of now the CI already runs the regression tests, so there is no need to 
re-run them in tsqa. At some point in the future we may consolidate these-- but 
for now we'll leave them separate




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver issue #1026: TS-4475 Fix Log Collation Crash (back-port).

2016-11-01 Thread PSUdaemon
Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1026
  
No conflicts in all those merges?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4475) Crash in Log-Collation client after using inactivity-cop.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4475?focusedWorklogId=31387&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31387
 ]

ASF GitHub Bot logged work on TS-4475:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 15:49
Start Date: 01/Nov/16 15:49
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1026
  
No conflicts in all those merges?


Issue Time Tracking
---

Worklog Id: (was: 31387)
Time Spent: 3.5h  (was: 3h 20m)

> Crash in Log-Collation client after using inactivity-cop.
> -
>
> Key: TS-4475
> URL: https://issues.apache.org/jira/browse/TS-4475
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Logging
>Affects Versions: 6.1.1
>Reporter: Peter Chou
> Fix For: 7.1.0
>
>  Time Spent: 3.5h
>  Remaining Estimate: 0h
>
> Background: We recently tried making use of inactivity-cop by setting it to 
> 300s instead of the default one-day setting. This was to address an issue 
> where, under heavy load, ATS would become un-responsive to client requests, 
> and the condition would persist after traffic was stopped with the active 
> queue saying 0 connections but 'netstat -na' showing a bunch of established 
> connections (up to the throttle limit approximately).
> Inactivity cop seemed to help ATS handle this situation, but we have since 
> experienced a couple of core dumps over the last four day period. It seems 
> occasionally the Log Collation Client State Machine will have event value 105 
> or VC_EVENT_INACTIVITY_TIMEOUT, but when it reaches read_signal_and_update() 
> it tries to call the continuation handler which down the line does not know 
> about this event thus causing core dump !"unexpcted state" [sic].
> Here is the back-trace --
> (gdb) bt
> #0  0x2b67cd5405f7 in raise () from /lib64/libc.so.6
> #1  0x2b67cd541e28 in abort () from /lib64/libc.so.6
> #2  0x2b67cb032921 in ink_die_die_die () at ink_error.cc:43
> #3  0x2b67cb0329da in ink_fatal_va (fmt=0x2b67cb0442dc "%s:%d: failed 
> assert `%s`", ap=0x7ffc690e7ba8) at ink_error.cc:65
> #4  0x2b67cb032a79 in ink_fatal (message_format=0x2b67cb0442dc "%s:%d: 
> failed assert `%s`") at ink_error.cc:73
> #5  0x2b67cb0305a6 in _ink_assert (expression=0x7fb422 "!\"unexpcted 
> state\"", file=0x7fb35b "LogCollationClientSM.cc",
> line=445) at ink_assert.cc:37
> #6  0x0069c86b in LogCollationClientSM::client_idle 
> (this=0x2b681400bb00, event=105) at LogCollationClientSM.cc:445
> #7  0x0069b427 in LogCollationClientSM::client_handler 
> (this=0x2b681400bb00, event=105, data=0x2b680c017020)
> at LogCollationClientSM.cc:119
> #8  0x00502cc6 in Continuation::handleEvent (this=0x2b681400bb00, 
> event=105, data=0x2b680c017020)
> at ../iocore/eventsystem/I_Continuation.h:153
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> #10 0x00787a22 in UnixNetVConnection::mainEvent (this=0x2b680c016f00, 
> event=1, e=0x127ad60) at UnixNetVConnection.cc:1188
> #11 0x00502cc6 in Continuation::handleEvent (this=0x2b680c016f00, 
> event=1, data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #12 0x0077d943 in InactivityCop::check_inactivity (this=0x1209a00, 
> event=2, e=0x127ad60) at UnixNet.cc:102
> #13 0x00502cc6 in Continuation::handleEvent (this=0x1209a00, event=2, 
> data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #14 0x007a5df6 in EThread::process_event (this=0x2b67cf7bb010, 
> e=0x127ad60, calling_code=2) at UnixEThread.cc:128
> #15 0x007a61f5 in EThread::execute (this=0x2b67cf7bb010) at 
> UnixEThread.cc:207
> #16 0x00534430 in main (argv=0x7ffc690e82e8) at Main.cc:1918
> I believe it takes a wrong turn here --
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> (gdb) list
> 145 static inline int
> 146 read_signal_and_update(int event, UnixNetVConnection *vc)
> 147 {
> 148   vc->recursion++;
> 149   if (vc->read.vio._cont) {
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> 151   } else {
> 152 switch (event) {
> 153 case VC_EVENT_EOS:
> 154 case VC_EVENT_ERROR:
> (gdb) list
> 155 case VC_EVENT_ACTIVE_TIMEOUT:
> 156 case VC_EVENT_INACTIVITY_TIMEOUT:
> 157   Debug("inactivity_cop", "event %d: null read.vio cont, closing 
> vc %p", event, vc);
> 158   vc->closed = 1;
> 159   break;
> 160 default:
> 161

[GitHub] trafficserver issue #1168: Tsqa-- switch to using build that exist

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1168
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1135/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver issue #1168: Tsqa-- switch to using build that exist

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1168
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1029/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1167: TS-5025: Add 'setHost' method to 'atscppap...

2016-11-01 Thread zwoop
Github user zwoop commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1167#discussion_r85967946
  
--- Diff: lib/cppapi/Request.cc ---
@@ -177,6 +177,23 @@ Request::getHeaders() const
   return state_->headers_;
 }
 
+void
+Request::setHost(std::string const &host)
+{
+  static std::string HOST_FIELD_NAME(TS_MIME_FIELD_HOST, TS_MIME_LEN_HOST);
--- End diff --

< bike_shed >Shouldn't this be const too?< /bike_shed >


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31388&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31388
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 16:42
Start Date: 01/Nov/16 16:42
Worklog Time Spent: 10m 
  Work Description: Github user zwoop commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1167#discussion_r85967946
  
--- Diff: lib/cppapi/Request.cc ---
@@ -177,6 +177,23 @@ Request::getHeaders() const
   return state_->headers_;
 }
 
+void
+Request::setHost(std::string const &host)
+{
+  static std::string HOST_FIELD_NAME(TS_MIME_FIELD_HOST, TS_MIME_LEN_HOST);
--- End diff --

< bike_shed >Shouldn't this be const too?< /bike_shed >


Issue Time Tracking
---

Worklog Id: (was: 31388)
Time Spent: 40m  (was: 0.5h)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31389&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31389
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 16:43
Start Date: 01/Nov/16 16:43
Worklog Time Spent: 10m 
  Work Description: Github user zwoop commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85968661
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

@oschaaf  It is *possible*, but unlikely. The immediate issues we're having 
is that gzip works very poorly together with the escalate plugin, but you 
wouldn't escalate on a 200 OK. Long term, @meeramn is going to add a new plugin 
API, that enforces uniqueness on the continuations added to a hook.


Issue Time Tracking
---

Worklog Id: (was: 31389)
Time Spent: 50m  (was: 40m)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1166: TS-5024: Limits the gzip to 200 OK respons...

2016-11-01 Thread zwoop
Github user zwoop commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85968661
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

@oschaaf  It is *possible*, but unlikely. The immediate issues we're having 
is that gzip works very poorly together with the escalate plugin, but you 
wouldn't escalate on a 200 OK. Long term, @meeramn is going to add a new plugin 
API, that enforces uniqueness on the continuations added to a hook.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


Jenkins build is back to normal : docs-master #172

2016-11-01 Thread jenkins
https://ci.trafficserver.apache.org/job/docs-master/172/


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31392&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31392
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 17:41
Start Date: 01/Nov/16 17:41
Worklog Time Spent: 10m 
  Work Description: Github user oschaaf commented on a diff in the pull 
request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85982067
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

I see. LGTM, no more questions


Issue Time Tracking
---

Worklog Id: (was: 31392)
Time Spent: 1h  (was: 50m)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1166: TS-5024: Limits the gzip to 200 OK respons...

2016-11-01 Thread oschaaf
Github user oschaaf commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1166#discussion_r85982067
  
--- Diff: plugins/gzip/gzip.cc ---
@@ -480,8 +480,8 @@ gzip_transformable(TSHttpTxn txnp, bool server, 
HostConfiguration *host_configur
 
   resp_status = TSHttpHdrStatusGet(bufp, hdr_loc);
 
-  // conservatively pick some statusses to compress
-  if (!(resp_status == 200 || resp_status == 404 || resp_status == 500)) {
+  // conservatively pick some statusses to compress. ToDo: Make this 
configurable?
+  if (resp_status != 200) {
--- End diff --

I see. LGTM, no more questions


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Commented] (TS-1257) Replace Tcl_Hash* with lib/ts/Map

2016-11-01 Thread Syeda Persia Aziz (JIRA)

[ 
https://issues.apache.org/jira/browse/TS-1257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15626145#comment-15626145
 ] 

Syeda Persia Aziz commented on TS-1257:
---

>From the description of this issue, we need to decide whether we want to 
>replace the underlying implementation of InkHashTable or we want to replace it 
>totally by Map. Is this still under discussion? [~amc] [~zwoop] [~i.galic]

> Replace Tcl_Hash* with lib/ts/Map
> -
>
> Key: TS-1257
> URL: https://issues.apache.org/jira/browse/TS-1257
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Cleanup, Core
>Reporter: Igor Galić
>Assignee: Syeda Persia Aziz
> Fix For: 7.1.0
>
>
> We have our own implementation of maps that we use in most new code. We have 
> already discussed looking into removing the old Tcl cruft by replacing it 
> with {{Map}}, but have neither followed up on the ML nor Jira - or in the 
> code ;)
> This ticket is a reminder that this task exists and wants to be done!
> As to whether we simply replace the Tcl Implementation underneath, or visibly 
> to all developers, replace {{InkHashTable}} with {{Map}}, remains to be 
> discussed/decided/evaluated.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-4475) Crash in Log-Collation client after using inactivity-cop.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4475?focusedWorklogId=31394&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31394
 ]

ASF GitHub Bot logged work on TS-4475:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:22
Start Date: 01/Nov/16 19:22
Worklog Time Spent: 10m 
  Work Description: Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1026
  
Confirmed no conflicts.


Issue Time Tracking
---

Worklog Id: (was: 31394)
Time Spent: 3h 40m  (was: 3.5h)

> Crash in Log-Collation client after using inactivity-cop.
> -
>
> Key: TS-4475
> URL: https://issues.apache.org/jira/browse/TS-4475
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Logging
>Affects Versions: 6.1.1
>Reporter: Peter Chou
> Fix For: 7.1.0
>
>  Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> Background: We recently tried making use of inactivity-cop by setting it to 
> 300s instead of the default one-day setting. This was to address an issue 
> where, under heavy load, ATS would become un-responsive to client requests, 
> and the condition would persist after traffic was stopped with the active 
> queue saying 0 connections but 'netstat -na' showing a bunch of established 
> connections (up to the throttle limit approximately).
> Inactivity cop seemed to help ATS handle this situation, but we have since 
> experienced a couple of core dumps over the last four day period. It seems 
> occasionally the Log Collation Client State Machine will have event value 105 
> or VC_EVENT_INACTIVITY_TIMEOUT, but when it reaches read_signal_and_update() 
> it tries to call the continuation handler which down the line does not know 
> about this event thus causing core dump !"unexpcted state" [sic].
> Here is the back-trace --
> (gdb) bt
> #0  0x2b67cd5405f7 in raise () from /lib64/libc.so.6
> #1  0x2b67cd541e28 in abort () from /lib64/libc.so.6
> #2  0x2b67cb032921 in ink_die_die_die () at ink_error.cc:43
> #3  0x2b67cb0329da in ink_fatal_va (fmt=0x2b67cb0442dc "%s:%d: failed 
> assert `%s`", ap=0x7ffc690e7ba8) at ink_error.cc:65
> #4  0x2b67cb032a79 in ink_fatal (message_format=0x2b67cb0442dc "%s:%d: 
> failed assert `%s`") at ink_error.cc:73
> #5  0x2b67cb0305a6 in _ink_assert (expression=0x7fb422 "!\"unexpcted 
> state\"", file=0x7fb35b "LogCollationClientSM.cc",
> line=445) at ink_assert.cc:37
> #6  0x0069c86b in LogCollationClientSM::client_idle 
> (this=0x2b681400bb00, event=105) at LogCollationClientSM.cc:445
> #7  0x0069b427 in LogCollationClientSM::client_handler 
> (this=0x2b681400bb00, event=105, data=0x2b680c017020)
> at LogCollationClientSM.cc:119
> #8  0x00502cc6 in Continuation::handleEvent (this=0x2b681400bb00, 
> event=105, data=0x2b680c017020)
> at ../iocore/eventsystem/I_Continuation.h:153
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> #10 0x00787a22 in UnixNetVConnection::mainEvent (this=0x2b680c016f00, 
> event=1, e=0x127ad60) at UnixNetVConnection.cc:1188
> #11 0x00502cc6 in Continuation::handleEvent (this=0x2b680c016f00, 
> event=1, data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #12 0x0077d943 in InactivityCop::check_inactivity (this=0x1209a00, 
> event=2, e=0x127ad60) at UnixNet.cc:102
> #13 0x00502cc6 in Continuation::handleEvent (this=0x1209a00, event=2, 
> data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #14 0x007a5df6 in EThread::process_event (this=0x2b67cf7bb010, 
> e=0x127ad60, calling_code=2) at UnixEThread.cc:128
> #15 0x007a61f5 in EThread::execute (this=0x2b67cf7bb010) at 
> UnixEThread.cc:207
> #16 0x00534430 in main (argv=0x7ffc690e82e8) at Main.cc:1918
> I believe it takes a wrong turn here --
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> (gdb) list
> 145 static inline int
> 146 read_signal_and_update(int event, UnixNetVConnection *vc)
> 147 {
> 148   vc->recursion++;
> 149   if (vc->read.vio._cont) {
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> 151   } else {
> 152 switch (event) {
> 153 case VC_EVENT_EOS:
> 154 case VC_EVENT_ERROR:
> (gdb) list
> 155 case VC_EVENT_ACTIVE_TIMEOUT:
> 156 case VC_EVENT_INACTIVITY_TIMEOUT:
> 157   Debug("inactivity_cop", "event %d: null read.vio cont, closing 
> vc %p", event, vc);
> 158   vc->closed = 1;
> 159   break;
> 160 default:
> 161   

[GitHub] trafficserver issue #1026: TS-4475 Fix Log Collation Crash (back-port).

2016-11-01 Thread pbchou
Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1026
  
Confirmed no conflicts.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] trafficserver pull request #1026: TS-4475 Fix Log Collation Crash (back-port...

2016-11-01 Thread PSUdaemon
Github user PSUdaemon closed the pull request at:

https://github.com/apache/trafficserver/pull/1026


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4475) Crash in Log-Collation client after using inactivity-cop.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4475?focusedWorklogId=31395&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31395
 ]

ASF GitHub Bot logged work on TS-4475:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:26
Start Date: 01/Nov/16 19:26
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon closed the pull request at:

https://github.com/apache/trafficserver/pull/1026


Issue Time Tracking
---

Worklog Id: (was: 31395)
Time Spent: 3h 50m  (was: 3h 40m)

> Crash in Log-Collation client after using inactivity-cop.
> -
>
> Key: TS-4475
> URL: https://issues.apache.org/jira/browse/TS-4475
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Logging
>Affects Versions: 6.1.1
>Reporter: Peter Chou
> Fix For: 7.1.0
>
>  Time Spent: 3h 50m
>  Remaining Estimate: 0h
>
> Background: We recently tried making use of inactivity-cop by setting it to 
> 300s instead of the default one-day setting. This was to address an issue 
> where, under heavy load, ATS would become un-responsive to client requests, 
> and the condition would persist after traffic was stopped with the active 
> queue saying 0 connections but 'netstat -na' showing a bunch of established 
> connections (up to the throttle limit approximately).
> Inactivity cop seemed to help ATS handle this situation, but we have since 
> experienced a couple of core dumps over the last four day period. It seems 
> occasionally the Log Collation Client State Machine will have event value 105 
> or VC_EVENT_INACTIVITY_TIMEOUT, but when it reaches read_signal_and_update() 
> it tries to call the continuation handler which down the line does not know 
> about this event thus causing core dump !"unexpcted state" [sic].
> Here is the back-trace --
> (gdb) bt
> #0  0x2b67cd5405f7 in raise () from /lib64/libc.so.6
> #1  0x2b67cd541e28 in abort () from /lib64/libc.so.6
> #2  0x2b67cb032921 in ink_die_die_die () at ink_error.cc:43
> #3  0x2b67cb0329da in ink_fatal_va (fmt=0x2b67cb0442dc "%s:%d: failed 
> assert `%s`", ap=0x7ffc690e7ba8) at ink_error.cc:65
> #4  0x2b67cb032a79 in ink_fatal (message_format=0x2b67cb0442dc "%s:%d: 
> failed assert `%s`") at ink_error.cc:73
> #5  0x2b67cb0305a6 in _ink_assert (expression=0x7fb422 "!\"unexpcted 
> state\"", file=0x7fb35b "LogCollationClientSM.cc",
> line=445) at ink_assert.cc:37
> #6  0x0069c86b in LogCollationClientSM::client_idle 
> (this=0x2b681400bb00, event=105) at LogCollationClientSM.cc:445
> #7  0x0069b427 in LogCollationClientSM::client_handler 
> (this=0x2b681400bb00, event=105, data=0x2b680c017020)
> at LogCollationClientSM.cc:119
> #8  0x00502cc6 in Continuation::handleEvent (this=0x2b681400bb00, 
> event=105, data=0x2b680c017020)
> at ../iocore/eventsystem/I_Continuation.h:153
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> #10 0x00787a22 in UnixNetVConnection::mainEvent (this=0x2b680c016f00, 
> event=1, e=0x127ad60) at UnixNetVConnection.cc:1188
> #11 0x00502cc6 in Continuation::handleEvent (this=0x2b680c016f00, 
> event=1, data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #12 0x0077d943 in InactivityCop::check_inactivity (this=0x1209a00, 
> event=2, e=0x127ad60) at UnixNet.cc:102
> #13 0x00502cc6 in Continuation::handleEvent (this=0x1209a00, event=2, 
> data=0x127ad60)
> at ../iocore/eventsystem/I_Continuation.h:153
> #14 0x007a5df6 in EThread::process_event (this=0x2b67cf7bb010, 
> e=0x127ad60, calling_code=2) at UnixEThread.cc:128
> #15 0x007a61f5 in EThread::execute (this=0x2b67cf7bb010) at 
> UnixEThread.cc:207
> #16 0x00534430 in main (argv=0x7ffc690e82e8) at Main.cc:1918
> I believe it takes a wrong turn here --
> #9  0x00783d40 in read_signal_and_update (event=105, 
> vc=0x2b680c016f00) at UnixNetVConnection.cc:150
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> (gdb) list
> 145 static inline int
> 146 read_signal_and_update(int event, UnixNetVConnection *vc)
> 147 {
> 148   vc->recursion++;
> 149   if (vc->read.vio._cont) {
> 150 vc->read.vio._cont->handleEvent(event, &vc->read.vio);
> 151   } else {
> 152 switch (event) {
> 153 case VC_EVENT_EOS:
> 154 case VC_EVENT_ERROR:
> (gdb) list
> 155 case VC_EVENT_ACTIVE_TIMEOUT:
> 156 case VC_EVENT_INACTIVITY_TIMEOUT:
> 157   Debug("inactivity_cop", "event %d: null read.vio cont, closing 
> vc %p", event, vc);
> 158   vc->closed = 1;
> 159   break;
> 160 default:
> 161   Error("Unexpected even

[GitHub] trafficserver issue #1027: TS-4498 Remap plugin initialization failure error...

2016-11-01 Thread pbchou
Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
Confirmed no conflict on the cherry-picked commit. The second commit was 
due to clang-format differences between 7.0.x and 6.2.x.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4498) RemapConfig.cc - Print out error message on remap plugin init failure.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4498?focusedWorklogId=31396&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31396
 ]

ASF GitHub Bot logged work on TS-4498:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:31
Start Date: 01/Nov/16 19:31
Worklog Time Spent: 10m 
  Work Description: Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
Confirmed no conflict on the cherry-picked commit. The second commit was 
due to clang-format differences between 7.0.x and 6.2.x.


Issue Time Tracking
---

Worklog Id: (was: 31396)
Time Spent: 20m  (was: 10m)

> RemapConfig.cc - Print out error message on remap plugin init failure.
> --
>
> Key: TS-4498
> URL: https://issues.apache.org/jira/browse/TS-4498
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Reporter: Peter Chou
>Assignee: James Peach
> Fix For: 7.0.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Add printing of the returned error message to the Warning() if a remap plugin 
> fails to init. Currently it just says "bailing out" which is not as useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1027: TS-4498 Remap plugin initialization failure error...

2016-11-01 Thread PSUdaemon
Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
[approve ci]


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4498) RemapConfig.cc - Print out error message on remap plugin init failure.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4498?focusedWorklogId=31397&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31397
 ]

ASF GitHub Bot logged work on TS-4498:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:34
Start Date: 01/Nov/16 19:34
Worklog Time Spent: 10m 
  Work Description: Github user PSUdaemon commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
[approve ci]


Issue Time Tracking
---

Worklog Id: (was: 31397)
Time Spent: 0.5h  (was: 20m)

> RemapConfig.cc - Print out error message on remap plugin init failure.
> --
>
> Key: TS-4498
> URL: https://issues.apache.org/jira/browse/TS-4498
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Reporter: Peter Chou
>Assignee: James Peach
> Fix For: 7.0.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Add printing of the returned error message to the Warning() if a remap plugin 
> fails to init. Currently it just says "bailing out" which is not as useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1166: TS-5024: Limits the gzip to 200 OK respons...

2016-11-01 Thread zwoop
Github user zwoop closed the pull request at:

https://github.com/apache/trafficserver/pull/1166


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5024) Gzip plugin gzips multiple times

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5024?focusedWorklogId=31399&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31399
 ]

ASF GitHub Bot logged work on TS-5024:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:39
Start Date: 01/Nov/16 19:39
Worklog Time Spent: 10m 
  Work Description: Github user zwoop closed the pull request at:

https://github.com/apache/trafficserver/pull/1166


Issue Time Tracking
---

Worklog Id: (was: 31399)
Time Spent: 1h 10m  (was: 1h)

> Gzip plugin gzips multiple times
> 
>
> Key: TS-5024
> URL: https://issues.apache.org/jira/browse/TS-5024
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Reporter: Meera Mosale Nataraja
>Assignee: Leif Hedstrom
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Gzip plugin gzips multiple times when you enable redirection by following 
> settings or using escalate plugin.
> Enable redirection:
> CONFIG proxy.config.http.redirection_enabled INT 1
> CONFIG proxy.config.http.number_of_redirections INT 3
> Curl command output is provided below. Notice multiple "Content-Encoding: 
> gzip" headers.
> curl -v -o/dev/null http://proxy-test:8080/get -H "Host: proxy-test" -x 
> localhost:8080 -H "Accept-encoding: gzip"
> * About to connect() to proxy localhost port 8080 (#0)
> *   Trying ::1... connected
> * Connected to localhost (::1) port 8080 (#0)
> > GET http://proxy-test:8080/get HTTP/1.1
> > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.21 
> > Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> > Accept: */*
> > Proxy-Connection: Keep-Alive
> > Host: proxy-test
> > Accept-encoding: gzip
> >
>   % Total% Received % Xferd  Average Speed   TimeTime Time  
> Current
>  Dload  Upload   Total   SpentLeft  Speed
>   0 00 00 0  0  0 --:--:-- --:--:-- --:--:-- 
> 0< HTTP/1.1 404 Not Found
> < Server: ATS/7.1.0
> < X-Frame-Options: SAMEORIGIN
> < X-Xss-Protection: 1; mode=block
> < Accept-Ranges: bytes
> < X-Content-Type-Options: nosniff
> < Content-Type: text/html; charset=UTF-8
> < Cache-Control: max-age=300
> < Expires: Mon, 31 Oct 2016 18:29:44 GMT
> < Date: Mon, 31 Oct 2016 18:24:44 GMT
> < Content-Encoding: gzip
> < Vary: Accept-Encoding
> < Content-Encoding: gzip
> < Content-Encoding: gzip
> < Content-Length: 4456
> < Age: 0
> < Proxy-Connection: keep-alive



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #845: TS-3245: Allow multiple plugins to safely use geto...

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1136/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-3245) getopt doesn't work correctly when used in plugin chaining

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-3245?focusedWorklogId=31400&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31400
 ]

ASF GitHub Bot logged work on TS-3245:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:41
Start Date: 01/Nov/16 19:41
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1136/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31400)
Time Spent: 1h 20m  (was: 1h 10m)

> getopt doesn't work correctly when used in plugin chaining
> --
>
> Key: TS-3245
> URL: https://issues.apache.org/jira/browse/TS-3245
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Affects Versions: 5.1.1
>Reporter: Sudheer Vinukonda
>Assignee: Peter Chou
>Priority: Minor
>  Labels: newbie
> Fix For: 7.0.0
>
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> When multiple plugins that use getopt are chained, it doesn't work correctly 
> for the subsequent plugins after the first plugin. [~jpe...@apache.org] and 
> [~zwoop] suggested that the getopt globals need to be reset (example, 
> {{optind = opterr = optopt = 0}}) before using it and would be better to do 
> it in the core during plugin loading to keep it simple/transparent from 
> plugin development. 
> Note that, if a plugin itself uses getopt multiple times on different argv's, 
> it would have to reset the globals between them. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1027: TS-4498 Remap plugin initialization failure error...

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1137/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4498) RemapConfig.cc - Print out error message on remap plugin init failure.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4498?focusedWorklogId=31401&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31401
 ]

ASF GitHub Bot logged work on TS-4498:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:45
Start Date: 01/Nov/16 19:45
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
FreeBSD build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-FreeBSD/1137/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31401)
Time Spent: 40m  (was: 0.5h)

> RemapConfig.cc - Print out error message on remap plugin init failure.
> --
>
> Key: TS-4498
> URL: https://issues.apache.org/jira/browse/TS-4498
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Reporter: Peter Chou
>Assignee: James Peach
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Add printing of the returned error message to the Warning() if a remap plugin 
> fails to init. Currently it just says "bailing out" which is not as useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1027: TS-4498 Remap plugin initialization failure error...

2016-11-01 Thread atsci
Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1030/ for details.
 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-4498) RemapConfig.cc - Print out error message on remap plugin init failure.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4498?focusedWorklogId=31402&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31402
 ]

ASF GitHub Bot logged work on TS-4498:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 19:48
Start Date: 01/Nov/16 19:48
Worklog Time Spent: 10m 
  Work Description: Github user atsci commented on the issue:

https://github.com/apache/trafficserver/pull/1027
  
Linux build *successful*! See 
https://ci.trafficserver.apache.org/job/Github-Linux/1030/ for details.
 



Issue Time Tracking
---

Worklog Id: (was: 31402)
Time Spent: 50m  (was: 40m)

> RemapConfig.cc - Print out error message on remap plugin init failure.
> --
>
> Key: TS-4498
> URL: https://issues.apache.org/jira/browse/TS-4498
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Reporter: Peter Chou
>Assignee: James Peach
> Fix For: 7.0.0
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Add printing of the returned error message to the Warning() if a remap plugin 
> fails to init. Currently it just says "bailing out" which is not as useful.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1167: TS-5025: Add 'setHost' method to 'atscppap...

2016-11-01 Thread SolidWallOfCode
Github user SolidWallOfCode commented on a diff in the pull request:

https://github.com/apache/trafficserver/pull/1167#discussion_r86015275
  
--- Diff: lib/cppapi/Request.cc ---
@@ -177,6 +177,23 @@ Request::getHeaders() const
   return state_->headers_;
 }
 
+void
+Request::setHost(std::string const &host)
+{
+  static std::string HOST_FIELD_NAME(TS_MIME_FIELD_HOST, TS_MIME_LEN_HOST);
--- End diff --

Yes it should.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31403&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31403
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 20:19
Start Date: 01/Nov/16 20:19
Worklog Time Spent: 10m 
  Work Description: Github user SolidWallOfCode commented on a diff in the 
pull request:

https://github.com/apache/trafficserver/pull/1167#discussion_r86015275
  
--- Diff: lib/cppapi/Request.cc ---
@@ -177,6 +177,23 @@ Request::getHeaders() const
   return state_->headers_;
 }
 
+void
+Request::setHost(std::string const &host)
+{
+  static std::string HOST_FIELD_NAME(TS_MIME_FIELD_HOST, TS_MIME_LEN_HOST);
--- End diff --

Yes it should.


Issue Time Tracking
---

Worklog Id: (was: 31403)
Time Spent: 50m  (was: 40m)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1167: TS-5025: Add 'setHost' method to 'atscppapi::Requ...

2016-11-01 Thread SolidWallOfCode
Github user SolidWallOfCode commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
Yeah, we had a problem at Y! this fixed. The plugin writer set the `HOST` 
header in order to control subsequent remapping, a reasonable thing to do. But 
if the request comes in with the host in the URL then remap prioritizes that 
over the `HOST` header and things don't work right for non obvious reasons. 
Better to have a real "set the host" method that does the right thing. 
Technically this could be done by the plugin but the point of the CPP API is to 
make writing plugins easier by taking care of these pesky details that would be 
the same in every plugin.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31404&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31404
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 20:22
Start Date: 01/Nov/16 20:22
Worklog Time Spent: 10m 
  Work Description: Github user SolidWallOfCode commented on the issue:

https://github.com/apache/trafficserver/pull/1167
  
Yeah, we had a problem at Y! this fixed. The plugin writer set the `HOST` 
header in order to control subsequent remapping, a reasonable thing to do. But 
if the request comes in with the host in the URL then remap prioritizes that 
over the `HOST` header and things don't work right for non obvious reasons. 
Better to have a real "set the host" method that does the right thing. 
Technically this could be done by the plugin but the point of the CPP API is to 
make writing plugins easier by taking care of these pesky details that would be 
the same in every plugin.


Issue Time Tracking
---

Worklog Id: (was: 31404)
Time Spent: 1h  (was: 50m)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #845: TS-3245: Allow multiple plugins to safely use geto...

2016-11-01 Thread pbchou
Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
@PSUdaemon - Resubmitted this PR branch as requested.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Work logged] (TS-3245) getopt doesn't work correctly when used in plugin chaining

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-3245?focusedWorklogId=31405&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31405
 ]

ASF GitHub Bot logged work on TS-3245:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 20:32
Start Date: 01/Nov/16 20:32
Worklog Time Spent: 10m 
  Work Description: Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/845
  
@PSUdaemon - Resubmitted this PR branch as requested.


Issue Time Tracking
---

Worklog Id: (was: 31405)
Time Spent: 1.5h  (was: 1h 20m)

> getopt doesn't work correctly when used in plugin chaining
> --
>
> Key: TS-3245
> URL: https://issues.apache.org/jira/browse/TS-3245
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: Plugins
>Affects Versions: 5.1.1
>Reporter: Sudheer Vinukonda
>Assignee: Peter Chou
>Priority: Minor
>  Labels: newbie
> Fix For: 7.0.0
>
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> When multiple plugins that use getopt are chained, it doesn't work correctly 
> for the subsequent plugins after the first plugin. [~jpe...@apache.org] and 
> [~zwoop] suggested that the getopt globals need to be reset (example, 
> {{optind = opterr = optopt = 0}}) before using it and would be better to do 
> it in the core during plugin loading to keep it simple/transparent from 
> plugin development. 
> Note that, if a plugin itself uses getopt multiple times on different argv's, 
> it would have to reset the globals between them. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver pull request #1167: TS-5025: Add 'setHost' method to 'atscppap...

2016-11-01 Thread SolidWallOfCode
Github user SolidWallOfCode closed the pull request at:

https://github.com/apache/trafficserver/pull/1167


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[jira] [Updated] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll updated TS-5025:

Fix Version/s: 7.1.0

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?focusedWorklogId=31406&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31406
 ]

ASF GitHub Bot logged work on TS-5025:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 20:33
Start Date: 01/Nov/16 20:33
Worklog Time Spent: 10m 
  Work Description: Github user SolidWallOfCode closed the pull request at:

https://github.com/apache/trafficserver/pull/1167


Issue Time Tracking
---

Worklog Id: (was: 31406)
Time Spent: 1h 10m  (was: 1h)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll resolved TS-5025.
-
Resolution: Fixed

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll updated TS-5025:

Labels: yahoo  (was: )

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Brian Geffon
>  Labels: yahoo
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TS-5025) CPP API Request object should directly support setting the host.

2016-11-01 Thread Alan M. Carroll (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-5025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan M. Carroll reassigned TS-5025:
---

Assignee: Alan M. Carroll  (was: Brian Geffon)

> CPP API Request object should directly support setting the host.
> 
>
> Key: TS-5025
> URL: https://issues.apache.org/jira/browse/TS-5025
> Project: Traffic Server
>  Issue Type: Improvement
>  Components: CPP API
>Reporter: Alan M. Carroll
>Assignee: Alan M. Carroll
>  Labels: yahoo
> Fix For: 7.1.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Just setting the host in the URL or in the headers can create a malformed 
> request. The {{Request}} object itself should support at {{setHost}} method 
> that takes care of the details of updating both without adding the host to 
> the URL if it's not already present.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Work logged] (TS-4888) collapsed_forwarding plugin returns TSREMAP_DID_REMAP though it did not perform remap

2016-11-01 Thread ASF GitHub Bot (JIRA)

 [ 
https://issues.apache.org/jira/browse/TS-4888?focusedWorklogId=31407&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31407
 ]

ASF GitHub Bot logged work on TS-4888:
--

Author: ASF GitHub Bot
Created on: 01/Nov/16 20:42
Start Date: 01/Nov/16 20:42
Worklog Time Spent: 10m 
  Work Description: Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1044
  
@brkishore -- I did the following on my back-port PRs --
- git checkout \
- git log (to identify SHA1 of the last commit before my commits)
- git reset --hard \
- git cherry-pick -x \
- git push --force origin \

Seems to work without destroying the original PR.


Issue Time Tracking
---

Worklog Id: (was: 31407)
Time Spent: 2h 10m  (was: 2h)

> collapsed_forwarding plugin returns TSREMAP_DID_REMAP though it did not 
> perform remap
> -
>
> Key: TS-4888
> URL: https://issues.apache.org/jira/browse/TS-4888
> Project: Traffic Server
>  Issue Type: Bug
>  Components: Plugins
>Affects Versions: 6.2.1, 7.1.0
>Reporter: Rajendra Kishore Bonumahanti
>Assignee: Phil Sorber
> Fix For: 7.0.0
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> Collapsed_forwarding plugin returns TSREMAP_DID_REMAP as a return value 
> though it did not perform any remap. This causes ATS not to perform remap and 
> makes the transaction failed due to DNS lookup error on "from url".
> For more details..
> Hi,
> I am testing collapsed_forwarding plugin 
> (https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/collapsed_forwarding.en.html?highlight=collapsed_forwarding)
>  via ATS 6.2.x branch.
> We observed an error "DNS error 2 for [testurl.com]" for cache-miss, when 
> remap.config is configured with "collapsed_forwarding" to work alone as a 
> remap plugin. We must modify TSRemapDoRemap() in the plugin to "return 
> TSREMAP_NO_REMAP" to allow DNS lookup successful. It does not seem right for 
> the plugin to do "return TSREMAP_NO_REMAP" when it did not.
> Can someone help me to understand how this plugin needs to be used? Or does 
> it require the fix I mentioned above?
> Regards,
> Kishore
> == Sample remap.config entry and cach miss error when used 
> "collapsed_forwarding" by itself == map http://testurl.com/ 
> http://origin.com/ @plugin=collapsed_forwarding.so @pparam=--delay=10 
> @pparam=--retries=5
> I observed that during cache-miss, DNS query happens on the 'from' url 
> (hostname) in the remap and it gets failed.
> 
> [Sep  9 19:39:16.355] Server {0x2b170ea6c940} DEBUG: (dns) send query 
> (qtype=1) for testurl.com to fd 43 [Sep  9 19:39:16.355] Server 
> {0x2b170ea6c940} DEBUG: (dns) sent qname = testurl.com, id = 9287, nameserver 
> = 1 [Sep  9 19:39:16.355] Server {0x2b170ea6c940} DEBUG: (dns) sent_one: 
> failover_number for resolve 1 is 1 [Sep  9 19:39:16.628] Server 
> {0x2b170ea6c940} DEBUG: (dns) received packet size = 52 [Sep  9 19:39:16.628] 
> Server {0x2b170ea6c940} DEBUG: (dns) round-robin: nameserver 1 DNS respons 
> code = 0 [Sep  9 19:39:16.628] Server {0x2b170ea6c940} DEBUG: (dns) received 
> rcode = 2 [Sep  9 19:39:16.628] Server {0x2b170ea6c940} DEBUG: (dns) DNS 
> error 2 for [testurl.com] [Sep  9 19:39:16.628] Server {0x2b170ea6c940} 
> DEBUG: (dns) doing retry for testurl.com
> I further looked in to the code and found that it is due to return code from 
> the plugin is TSREMAP_DID_REMAP in TSRemapDoRemap(). It makes ATS not to 
> perform remap.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[GitHub] trafficserver issue #1044: TS-4888: Modified collapsed_forwarding plugin to ...

2016-11-01 Thread pbchou
Github user pbchou commented on the issue:

https://github.com/apache/trafficserver/pull/1044
  
@brkishore -- I did the following on my back-port PRs --
- git checkout \
- git log (to identify SHA1 of the last commit before my commits)
- git reset --hard \
- git cherry-pick -x \
- git push --force origin \

Seems to work without destroying the original PR.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


  1   2   >