diff --git a/lib/swift b/lib/swift index e247f15d3f..fc09093925 100644 --- a/lib/swift +++ b/lib/swift @@ -842,7 +842,7 @@ function start_swift { if is_service_enabled tls-proxy; then local proxy_port=${SWIFT_DEFAULT_BIND_PORT} - start_tls_proxy swift '*' $proxy_port $SERVICE_HOST $SWIFT_DEFAULT_BIND_PORT_INT + start_tls_proxy swift '*' $proxy_port $SERVICE_HOST $SWIFT_DEFAULT_BIND_PORT_INT $SWIFT_MAX_HEADER_SIZE fi run_process s-proxy "$SWIFT_BIN_DIR/swift-proxy-server ${SWIFT_CONF_DIR}/proxy-server.conf -v" diff --git a/lib/tls b/lib/tls index 6d67c90249..6a3d260ebd 100644 --- a/lib/tls +++ b/lib/tls @@ -494,6 +494,8 @@ function start_tls_proxy { local f_port=$3 local b_host=$4 local b_port=$5 + # 8190 is the default apache size. + local f_header_size=${6:-8190} tune_apache_connections @@ -521,6 +523,11 @@ $listen_string # ('Connection aborted.', BadStatusLine("''",)) error KeepAlive Off + # This increase in allowed request header sizes is required + # for swift functional testing to work with tls enabled. It is 2 bytes + # larger than the apache default of 8190. + LimitRequestFieldSize $f_header_size + ProxyPass http://$b_host:$b_port/ retry=0 nocanon ProxyPassReverse http://$b_host:$b_port/