You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by er...@apache.org on 2010/11/13 06:42:50 UTC
svn commit: r1034663 - in /trafficserver/traffic/trunk/proxy: InkAPI.cc
api/ts/ts.h http2/HttpDebugNames.cc http2/HttpSM.cc http2/HttpTransact.cc
http2/HttpTransact.h
Author: ericb
Date: Sat Nov 13 05:42:50 2010
New Revision: 1034663
URL: http://svn.apache.org/viewvc?rev=1034663&view=rev
Log:
regressions revealed a problem. reverting till i can look at it closer
Modified:
trafficserver/traffic/trunk/proxy/InkAPI.cc
trafficserver/traffic/trunk/proxy/api/ts/ts.h
trafficserver/traffic/trunk/proxy/http2/HttpDebugNames.cc
trafficserver/traffic/trunk/proxy/http2/HttpSM.cc
trafficserver/traffic/trunk/proxy/http2/HttpTransact.cc
trafficserver/traffic/trunk/proxy/http2/HttpTransact.h
Modified: trafficserver/traffic/trunk/proxy/InkAPI.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/InkAPI.cc?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/InkAPI.cc (original)
+++ trafficserver/traffic/trunk/proxy/InkAPI.cc Sat Nov 13 05:42:50 2010
@@ -7714,22 +7714,4 @@ INKRecordDump(INKRecordType rec_type, IN
RecDumpRecords((RecT)rec_type, (RecDumpEntryCb)callback, edata);
}
-/* ability to skip the remap phase of the State Machine
- this only really makes sense in INK_HTTP_READ_REQUEST_HDR_HOOK
-*/
-INKReturnCode INKSkipRemappingSet(INKHttpTxn txnp, int flag)
-{
- if (sdk_sanity_check_txn(txnp) != INK_SUCCESS) {
- return INK_ERROR;
- }
- HttpSM *sm = (HttpSM*) txnp;
- if (flag) {
- sm->t_state.skip_all_remapping = true;
- }
- else {
- sm->t_state.skip_all_remapping = false;
- }
- return INK_SUCCESS;
-}
-
#endif //INK_NO_API
Modified: trafficserver/traffic/trunk/proxy/api/ts/ts.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/api/ts/ts.h?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/api/ts/ts.h (original)
+++ trafficserver/traffic/trunk/proxy/api/ts/ts.h Sat Nov 13 05:42:50 2010
@@ -219,8 +219,7 @@ extern "C"
INK_HTTP_SSN_START_HOOK,
INK_HTTP_SSN_CLOSE_HOOK,
INK_HTTP_CACHE_LOOKUP_COMPLETE_HOOK,
- INK_HTTP_PRE_REMAP_HOOK,
- INK_HTTP_POST_REMAP_HOOK,
+ INK_HTTP_READ_REQUEST_PRE_REMAP_HOOK,
INK_HTTP_LAST_HOOK
} INKHttpHookID;
@@ -317,8 +316,7 @@ extern "C"
INK_EVENT_HTTP_SSN_START = 60013,
INK_EVENT_HTTP_SSN_CLOSE = 60014,
INK_EVENT_HTTP_CACHE_LOOKUP_COMPLETE = 60015,
- INK_EVENT_HTTP_PRE_REMAP = 60016,
- INK_EVENT_HTTP_POST_REMAP = 60017,
+ INK_EVENT_HTTP_READ_REQUEST_PRE_REMAP = 60016,
INK_EVENT_MGMT_UPDATE = 60100,
/* EVENTS 60200 - 60202 for internal use */
@@ -2751,12 +2749,6 @@ extern "C"
inkapi void INKVConnInactivityTimeoutCancel(INKVConn connp);
inkapi void INKVConnActiveTimeoutSet(INKVConn connp, TSHRTime timeout);
inkapi void INKVConnActiveTimeoutCancel(INKVConn connp);
-
- /*
- ability to skip the remap phase of the State Machine
- this only really makes sense in INK_HTTP_READ_REQUEST_HDR_HOOK
- */
- inkapi INKReturnCode INKSkipRemappingSet(INKHttpTxn txnp, int flag);
#ifdef __cplusplus
}
Modified: trafficserver/traffic/trunk/proxy/http2/HttpDebugNames.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http2/HttpDebugNames.cc?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http2/HttpDebugNames.cc (original)
+++ trafficserver/traffic/trunk/proxy/http2/HttpDebugNames.cc Sat Nov 13 05:42:50 2010
@@ -391,10 +391,10 @@ HttpDebugNames::get_action_name(HttpTran
return ("HTTP_API_SM_SHUTDOWN");
case HttpTransact::HTTP_REMAP_REQUEST:
return ("HTTP_REMAP_REQUEST");
- case HttpTransact::HTTP_API_PRE_REMAP:
- return ("HTTP_API_PRE_REMAP");
- case HttpTransact::HTTP_API_POST_REMAP:
- return ("HTTP_API_POST_REMAP");
+ case HttpTransact::HTTP_API_READ_REQUEST_PRE_REMAP:
+ return ("HTTP_API_READ_REQUEST_PRE_REMAP");
+ case HttpTransact::HTTP_END_REMAP_REQUEST:
+ return ("HTTP_END_REMAP_REQUEST");
}
@@ -482,10 +482,8 @@ HttpDebugNames::get_api_hook_name(INKHtt
return "INK_HTTP_SSN_START_HOOK";
case INK_HTTP_SSN_CLOSE_HOOK:
return "INK_HTTP_SSN_CLOSE_HOOK";
- case INK_HTTP_PRE_REMAP_HOOK:
- return "INK_HTTP_PRE_REMAP_HOOK";
- case INK_HTTP_POST_REMAP_HOOK:
- return "INK_HTTP_POST_REMAP_HOOK";
+ case INK_HTTP_READ_REQUEST_PRE_REMAP_HOOK:
+ return "INK_HTTP_READ_REQUEST_PRE_REMAP_HOOK";
case INK_HTTP_LAST_HOOK:
return "INK_HTTP_LAST_HOOK";
}
Modified: trafficserver/traffic/trunk/proxy/http2/HttpSM.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http2/HttpSM.cc?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http2/HttpSM.cc (original)
+++ trafficserver/traffic/trunk/proxy/http2/HttpSM.cc Sat Nov 13 05:42:50 2010
@@ -1573,8 +1573,7 @@ HttpSM::handle_api_return()
setup_client_read_request_header();
}
return;
- case HttpTransact::HTTP_API_PRE_REMAP:
- case HttpTransact::HTTP_API_POST_REMAP:
+ case HttpTransact::HTTP_API_READ_REQUEST_PRE_REMAP:
case HttpTransact::HTTP_API_READ_REQUEST_HDR:
case HttpTransact::HTTP_API_OS_DNS:
case HttpTransact::HTTP_API_READ_CACHE_HDR:
@@ -4417,11 +4416,8 @@ HttpSM::do_api_callout_internal()
case HttpTransact::HTTP_API_SM_START:
cur_hook_id = INK_HTTP_TXN_START_HOOK;
break;
- case HttpTransact::HTTP_API_PRE_REMAP:
- cur_hook_id = INK_HTTP_PRE_REMAP_HOOK;
- break;
- case HttpTransact::HTTP_API_POST_REMAP:
- cur_hook_id = INK_HTTP_POST_REMAP_HOOK;
+ case HttpTransact::HTTP_API_READ_REQUEST_PRE_REMAP:
+ cur_hook_id = INK_HTTP_READ_REQUEST_PRE_REMAP_HOOK;
break;
case HttpTransact::HTTP_API_READ_REQUEST_HDR:
cur_hook_id = INK_HTTP_READ_REQUEST_HDR_HOOK;
@@ -6536,8 +6532,7 @@ HttpSM::set_next_state()
// Use the returned "next action" code to set the next state handler //
///////////////////////////////////////////////////////////////////////
switch (t_state.next_action) {
- case HttpTransact::HTTP_API_PRE_REMAP:
- case HttpTransact::HTTP_API_POST_REMAP:
+ case HttpTransact::HTTP_API_READ_REQUEST_PRE_REMAP:
case HttpTransact::HTTP_API_READ_REQUEST_HDR:
case HttpTransact::HTTP_API_OS_DNS:
case HttpTransact::HTTP_API_SEND_REQUEST_HDR:
@@ -6563,8 +6558,15 @@ HttpSM::set_next_state()
do_remap_request(false); /* dont run inline (iow on another thread) */
}
break;
- }
-
+ }
+
+ case HttpTransact::HTTP_END_REMAP_REQUEST:
+ {
+ /* nop for now */
+ call_transact_and_set_next_state(NULL);
+ break;
+ }
+
case HttpTransact::DNS_LOOKUP:
{
if (url_remap_mode == 2 && t_state.first_dns_lookup) {
Modified: trafficserver/traffic/trunk/proxy/http2/HttpTransact.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http2/HttpTransact.cc?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http2/HttpTransact.cc (original)
+++ trafficserver/traffic/trunk/proxy/http2/HttpTransact.cc Sat Nov 13 05:42:50 2010
@@ -770,15 +770,9 @@ HttpTransact::perform_accept_encoding_fi
void
HttpTransact::StartRemapRequest(State * s)
{
-
- if (s->skip_all_remapping) {
- Debug ("http_trans", "API request to skip remapping");
- TRANSACT_RETURN(HTTP_API_POST_REMAP, HttpTransact::HandleRequest);
- }
-
Debug("http_trans", "START HttpTransact::StartRemapRequest");
- /**
+ /**
* Check for URL remappings before checking request
* validity or initializing state variables since
* the remappings can insert or change the destination
@@ -837,12 +831,6 @@ HttpTransact::StartRemapRequest(State *
}
Debug("http_trans", "END HttpTransact::StartRemapRequest");
- TRANSACT_RETURN(HTTP_API_PRE_REMAP, HttpTransact::PerformRemap);
-}
-
-void HttpTransact::PerformRemap(State *s)
-{
- Debug("http_trans","Inside PerformRemap");
TRANSACT_RETURN(HTTP_REMAP_REQUEST, HttpTransact::EndRemapRequest);
}
@@ -984,7 +972,7 @@ done:
TRANSACT_RETURN(PROXY_SEND_ERROR_CACHE_NOOP, NULL);
} else {
Debug("http_trans", "END HttpTransact::EndRemapRequest");
- TRANSACT_RETURN(HTTP_API_POST_REMAP, HttpTransact::HandleRequest);
+ TRANSACT_RETURN(HTTP_API_READ_REQUEST_HDR, HttpTransact::HandleRequest);
}
ink_debug_assert(!"not reached");
@@ -1104,13 +1092,13 @@ HttpTransact::ModifyRequest(State * s)
Debug("http_trans", "END HttpTransact::ModifyRequest");
- TRANSACT_RETURN(HTTP_API_READ_REQUEST_HDR, HttpTransact::StartRemapRequest);
+ TRANSACT_RETURN(HTTP_API_READ_REQUEST_PRE_REMAP, HttpTransact::StartRemapRequest);
}
void
HttpTransact::HandleRequest(State * s)
{
- Debug("http_trans", "START HttpTransact::HandleRequest");
+ Debug("http_trans", "START HttpTransact/HandleRequest");
HTTP_DEBUG_ASSERT(!s->hdr_info.server_request.valid());
Modified: trafficserver/traffic/trunk/proxy/http2/HttpTransact.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http2/HttpTransact.h?rev=1034663&r1=1034662&r2=1034663&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http2/HttpTransact.h (original)
+++ trafficserver/traffic/trunk/proxy/http2/HttpTransact.h Sat Nov 13 05:42:50 2010
@@ -585,12 +585,10 @@ public:
CONTINUE,
HTTP_API_SM_START,
-
- HTTP_API_READ_REQUEST_HDR,
- HTTP_API_PRE_REMAP,
+ HTTP_API_READ_REQUEST_PRE_REMAP,
HTTP_REMAP_REQUEST,
- HTTP_API_POST_REMAP,
-
+ HTTP_END_REMAP_REQUEST,
+ HTTP_API_READ_REQUEST_HDR,
HTTP_API_OS_DNS,
HTTP_API_SEND_REQUEST_HDR,
HTTP_API_READ_CACHE_HDR,
@@ -1056,8 +1054,7 @@ public:
bool already_downgraded;
URL pristine_url; // pristine url is the url before remap
-
- bool skip_all_remapping;
+
// Methods
void
@@ -1149,8 +1146,7 @@ public:
congestion_congested_or_failed(0),
congestion_connection_opened(0),
reverse_proxy(false), url_remap_success(false), remap_redirect(NULL), filter_mask(0), already_downgraded(false),
- pristine_url(),
- skip_all_remapping(false)
+ pristine_url()
{
int i;
char *via_ptr = via_string;
@@ -1263,7 +1259,6 @@ public:
static void StartRemapRequest(State * s);
static void RemapRequest(State * s);
static void EndRemapRequest(State * s);
- static void PerformRemap(State * s);
static void ModifyRequest(State * s);
static void HandleRequest(State * s);
static bool handleIfRedirect(State * s);