You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by gs...@apache.org on 2013/07/11 05:53:46 UTC

svn commit: r1502101 - in /subversion/branches/1.8.x-busted-proxy: ./ subversion/include/svn_config.h subversion/libsvn_ra_serf/ra_serf.h subversion/libsvn_ra_serf/serf.c subversion/libsvn_subr/config_file.c

Author: gstein
Date: Thu Jul 11 03:53:46 2013
New Revision: 1502101

URL: http://svn.apache.org/r1502101
Log:
On the 1.8.x-busted-proxy branch:

Merge r1502099 (uses new option name)

Modified:
    subversion/branches/1.8.x-busted-proxy/   (props changed)
    subversion/branches/1.8.x-busted-proxy/subversion/include/svn_config.h
    subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/ra_serf.h
    subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c
    subversion/branches/1.8.x-busted-proxy/subversion/libsvn_subr/config_file.c

Propchange: subversion/branches/1.8.x-busted-proxy/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1502097

Modified: subversion/branches/1.8.x-busted-proxy/subversion/include/svn_config.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/include/svn_config.h?rev=1502101&r1=1502100&r2=1502101&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/include/svn_config.h (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/include/svn_config.h Thu Jul 11 03:53:46 2013
@@ -96,7 +96,7 @@ typedef struct svn_config_t svn_config_t
 /** @since New in 1.8. */
 #define SVN_CONFIG_OPTION_HTTP_MAX_CONNECTIONS      "http-max-connections"
 /** @since New in 1.9. */
-#define SVN_CONFIG_OPTION_BUSTED_PROXY              "busted-proxy"
+#define SVN_CONFIG_OPTION_HTTP_DETECT_CHUNKING      "http-detect-chunking"
 
 #define SVN_CONFIG_CATEGORY_CONFIG          "config"
 #define SVN_CONFIG_SECTION_AUTH                 "auth"

Modified: subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/ra_serf.h
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/ra_serf.h?rev=1502101&r1=1502100&r2=1502101&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/ra_serf.h (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/ra_serf.h Thu Jul 11 03:53:46 2013
@@ -147,6 +147,10 @@ struct svn_ra_serf__session_t {
   /* Should we use Transfer-Encoding: chunked for HTTP/1.1 servers. */
   svn_boolean_t using_chunked_requests;
 
+  /* Do we need to detect whether the connection supports chunked requests?
+     i.e. is there a (reverse) proxy that does not support them?  */
+  svn_boolean_t detect_chunking;
+
   /* Our Version-Controlled-Configuration; may be NULL until we know it. */
   const char *vcc_url;
 
@@ -191,10 +195,6 @@ struct svn_ra_serf__session_t {
   /* Are we using a proxy? */
   svn_boolean_t using_proxy;
 
-  /* Should we be careful with this proxy? (some have insufficient support that
-     we need to work around).  */
-  svn_boolean_t busted_proxy;
-
   const char *proxy_username;
   const char *proxy_password;
   int proxy_auth_attempts;

Modified: subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c?rev=1502101&r1=1502100&r2=1502101&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/libsvn_ra_serf/serf.c Thu Jul 11 03:53:46 2013
@@ -225,10 +225,11 @@ load_config(svn_ra_serf__session_t *sess
                                SVN_CONFIG_OPTION_HTTP_MAX_CONNECTIONS,
                                SVN_CONFIG_DEFAULT_OPTION_HTTP_MAX_CONNECTIONS));
 
-  /* Is this proxy potentially busted? Do we need to take special care?  */
-  SVN_ERR(svn_config_get_bool(config, &session->busted_proxy,
+  /* Do we need to detect whether an intervening proxy does not support
+     chunked requests?  */
+  SVN_ERR(svn_config_get_bool(config, &session->detect_chunking,
                               SVN_CONFIG_SECTION_GLOBAL,
-                              SVN_CONFIG_OPTION_BUSTED_PROXY,
+                              SVN_CONFIG_OPTION_HTTP_DETECT_CHUNKING,
                               FALSE));
 
   if (config)
@@ -290,10 +291,10 @@ load_config(svn_ra_serf__session_t *sess
 
       /* Do we need to take care with this proxy?  */
       SVN_ERR(svn_config_get_bool(
-               config, &session->busted_proxy,
+               config, &session->detect_chunking,
                server_group,
-               SVN_CONFIG_OPTION_BUSTED_PROXY,
-               session->busted_proxy));
+               SVN_CONFIG_OPTION_HTTP_DETECT_CHUNKING,
+               session->detect_chunking));
     }
 
   /* Don't allow the http-max-connections value to be larger than our
@@ -506,11 +507,11 @@ svn_ra_serf__open(svn_ra_session_t *sess
   SVN_ERR(err);
 
   /* We have set up a useful connection (that doesn't indication a redirect).
-     If we've been told there is possibly a busted proxy in our path to the
+     If we've been told there is possibly a worrisome proxy in our path to the
      server AND we switched to HTTP/1.1 (chunked requests), then probe for
      problems in any proxy.  */
   if ((corrected_url == NULL || *corrected_url == NULL)
-      && serf_sess->busted_proxy && !serf_sess->http10)
+      && serf_sess->detect_chunking && !serf_sess->http10)
     SVN_ERR(svn_ra_serf__probe_proxy(serf_sess, pool));
 
   return SVN_NO_ERROR;

Modified: subversion/branches/1.8.x-busted-proxy/subversion/libsvn_subr/config_file.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x-busted-proxy/subversion/libsvn_subr/config_file.c?rev=1502101&r1=1502100&r2=1502101&view=diff
==============================================================================
--- subversion/branches/1.8.x-busted-proxy/subversion/libsvn_subr/config_file.c (original)
+++ subversion/branches/1.8.x-busted-proxy/subversion/libsvn_subr/config_file.c Thu Jul 11 03:53:46 2013
@@ -806,9 +806,14 @@ svn_config_ensure(const char *config_dir
         "###   http-max-connections       Maximum number of parallel server" NL
         "###                              connections to use for any given"  NL
         "###                              HTTP operation."                   NL
-        "###   busted-proxy               The proxy may have some protocol"  NL
-        "###                              issues that Subversion needs to"   NL
-        "###                              detect and work around."           NL
+        "###   http-detect-chunking       Detect if the connection supports" NL
+        "###                              chunked requests (which some proxies"
+                                                                             NL
+        "###                              do not support). This defaults to" NL
+        "###                              off since mod_dav_svn supports "   NL
+        "###                              chunked requests and the detection"
+                                                                             NL
+        "###                              may hurt performance."             NL
         "###   neon-debug-mask            Debug mask for Neon HTTP library"  NL
         "###   ssl-authority-files        List of files, each of a trusted CA"
                                                                              NL