You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2011/03/17 15:01:01 UTC

svn commit: r1082495 - in /trafficserver/traffic/trunk/proxy: ReverseProxy.cc ReverseProxy.h http/remap/UrlRewrite.cc http/remap/UrlRewrite.h

Author: zwoop
Date: Thu Mar 17 14:01:01 2011
New Revision: 1082495

URL: http://svn.apache.org/viewvc?rev=1082495&view=rev
Log:
TS-710 Do not dlopen / reload a remap plugin .so more than once

Modified:
    trafficserver/traffic/trunk/proxy/ReverseProxy.cc
    trafficserver/traffic/trunk/proxy/ReverseProxy.h
    trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.cc
    trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.h

Modified: trafficserver/traffic/trunk/proxy/ReverseProxy.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/ReverseProxy.cc?rev=1082495&r1=1082494&r2=1082495&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/ReverseProxy.cc (original)
+++ trafficserver/traffic/trunk/proxy/ReverseProxy.cc Thu Mar 17 14:01:01 2011
@@ -52,6 +52,7 @@
 // Global Ptrs
 static Ptr<ProxyMutex> reconfig_mutex = NULL;
 UrlRewrite *rewrite_table = NULL;
+remap_plugin_info *remap_pi_list; // We never reload the remap plugins, just append to 'em.
 
 // Tokens for the Callback function
 #define FILE_CHANGED 0

Modified: trafficserver/traffic/trunk/proxy/ReverseProxy.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/ReverseProxy.h?rev=1082495&r1=1082494&r2=1082495&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/ReverseProxy.h (original)
+++ trafficserver/traffic/trunk/proxy/ReverseProxy.h Thu Mar 17 14:01:01 2011
@@ -51,6 +51,7 @@ struct host_hdr_info;
 extern int url_remap_mode;
 
 extern UrlRewrite *rewrite_table;
+extern remap_plugin_info *remap_pi_list;
 
 // API Functions
 int init_reverse_proxy();

Modified: trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.cc?rev=1082495&r1=1082494&r2=1082495&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.cc (original)
+++ trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.cc Thu Mar 17 14:01:01 2011
@@ -479,7 +479,7 @@ UrlRewrite::UrlRewrite(const char *file_
  : nohost_rules(0), reverse_proxy(0), backdoor_enabled(0),
    mgmt_autoconf_port(0), default_to_pac(0), default_to_pac_port(0), file_var(NULL), ts_name(NULL),
    http_default_redirect_url(NULL), num_rules_forward(0), num_rules_reverse(0), num_rules_redirect_permanent(0),
-   num_rules_redirect_temporary(0), remap_pi_list(NULL)
+   num_rules_redirect_temporary(0)
 {
 
   forward_mappings.hash_lookup = reverse_mappings.hash_lookup =
@@ -549,11 +549,6 @@ UrlRewrite::~UrlRewrite()
   DestroyStore(reverse_mappings);
   DestroyStore(permanent_redirects);
   DestroyStore(temporary_redirects);
-
-  if (remap_pi_list) {
-    remap_pi_list->delete_my_list();
-    remap_pi_list = NULL;
-  }
 }
 
 /** Sets the reverse proxy flag. */

Modified: trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.h?rev=1082495&r1=1082494&r2=1082495&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.h (original)
+++ trafficserver/traffic/trunk/proxy/http/remap/UrlRewrite.h Thu Mar 17 14:01:01 2011
@@ -116,11 +116,13 @@ public:
   url_mapping *SetupPacMapping();       // manager proxy-autconfig mapping
   url_mapping *SetupBackdoorMapping();
   void PrintTable(InkHashTable * h_table);
+
   void DestroyStore(MappingsStore &store)
   {
     _destroyTable(store.hash_lookup);
     _destroyList(store.regex_list);
   }
+
   bool TableInsert(InkHashTable *h_table, url_mapping *mapping, const char *src_host);
 
   MappingsStore forward_mappings;
@@ -176,7 +178,6 @@ public:
   int num_rules_reverse;
   int num_rules_redirect_permanent;
   int num_rules_redirect_temporary;
-  remap_plugin_info *remap_pi_list;
 
 private:
   void _doRemap(UrlMappingContainer &mapping_container, URL *request_url);