GitHub user jpeach opened a pull request: https://github.com/apache/trafficserver/pull/606
TS-4388: Fix TSHttpTxnParentProxySet This PR fixes ``TSHttpTxnParentProxySet``. The first two commits are minor cleanups of cruft. The third one fixes the API tests so that they don't interfere with each other when they register multiple global hooks. The final one actually fixes the ``TSHttpTxnParentProxySet`` API, primarily by restricting access to private ``ParentResult`` data and providing accessors that enforce the correct policy. I've tested that this works correctly with the tests and with my plugin. I don't have any way to test that I haven't broken the various parent retry features. You can merge this pull request into a Git repository by running: $ git pull https://github.com/jpeach/trafficserver jpeach/parent-proxy-api Alternatively you can review and apply these changes as the patch at: https://github.com/apache/trafficserver/pull/606.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 #606 ---- commit 295908ee95fed93c469a1b96508d0fab12609650 Author: James Peach <jpe...@apache.org> Date: 2016-04-27T18:12:11Z TS-4388: Remove useless record API defines. commit 10b81dbfead0238a62d6dde832172e6f14528da6 Author: James Peach <jpe...@apache.org> Date: 2016-04-27T18:20:25Z TS-4388: Remove unused HttpConfig::parent_proxy_routing_enable. commit 1c32eba4449787153b5b232b69c1e30497fb0647 Author: James Peach <jpe...@apache.org> Date: 2016-04-28T20:02:38Z TS-4388: Fix global hook handling in API tests. Many of the API regression tests work by trampolining off a global hook (which is really waht you have to do). However, there's no way to unregister a global hook, so once the test is done, it needs to be careful to co-operate with the remaining tests. We clear the continuation data, and if is is clear, we either ignore the event or re-enable the HTTP transaction. commit 2cf6f9a99e1176a8d97529ef9c4eb4d0a8aa437a Author: James Peach <jpe...@apache.org> Date: 2016-04-27T22:16:32Z TS-4388: TSHttpTxnParentProxySet crashes in parent selection. Fix ParentResult to handle the case where the parent is specified by the TSHttpTxnParentProxySet API. Encapsulate the internals of the result better so that it is easier for the HTTP state machine to do the right thing. ---- --- 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. ---