From e6cc5b59746240db47bb812706bc60e7cad4be83 Mon Sep 17 00:00:00 2001 From: Remi Tricot-Le Breton Date: Wed, 23 Dec 2020 18:13:53 +0100 Subject: [PATCH] MINOR: cache: Replace the "process-vary" option's expected values Replace the <0/1> expected values of the process-vary option by a more usual pair. --- doc/configuration.txt | 6 +++--- reg-tests/cache/vary.vtc | 4 ++-- reg-tests/cache/vary_accept_encoding.vtc | 2 +- src/cache.c | 13 ++++++++++--- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/doc/configuration.txt b/doc/configuration.txt index ca4c581db..be8cb9e61 100644 --- a/doc/configuration.txt +++ b/doc/configuration.txt @@ -14642,12 +14642,12 @@ max-age seconds, which means that you can't cache an object more than 60 seconds by default. -process-vary <0 or 1> - Disable or enable the processing of the Vary header. When disabled, a response +process-vary + Enable or disable the processing of the Vary header. When disabled, a response containing such a header will never be cached. When enabled, we need to calculate a preliminary hash for a subset of request headers on all the incoming requests (which might come with a cpu cost) which will be used to build a secondary key - for a given request (see RFC 7234#4.1). The default value is 0 (disabled). + for a given request (see RFC 7234#4.1). The default value is off (disabled). max-secondary-entries Define the maximum number of simultaneous secondary entries with the same primary diff --git a/reg-tests/cache/vary.vtc b/reg-tests/cache/vary.vtc index 4e1958f25..a840799f3 100644 --- a/reg-tests/cache/vary.vtc +++ b/reg-tests/cache/vary.vtc @@ -145,13 +145,13 @@ haproxy h1 -conf { total-max-size 3 max-age 20 max-object-size 3072 - process-vary 1 + process-vary on cache no_vary_cache total-max-size 3 max-age 20 max-object-size 3072 - process-vary 0 + process-vary off } -start diff --git a/reg-tests/cache/vary_accept_encoding.vtc b/reg-tests/cache/vary_accept_encoding.vtc index 9b55dc98f..afd2cfbd5 100644 --- a/reg-tests/cache/vary_accept_encoding.vtc +++ b/reg-tests/cache/vary_accept_encoding.vtc @@ -98,7 +98,7 @@ haproxy h1 -conf { total-max-size 3 max-age 20 max-object-size 3072 - process-vary 1 + process-vary on } -start diff --git a/src/cache.c b/src/cache.c index 1f1428de7..c740818e9 100644 --- a/src/cache.c +++ b/src/cache.c @@ -1981,12 +1981,19 @@ int cfg_parse_cache(const char *file, int linenum, char **args, int kwm) } if (!*args[1]) { - ha_warning("parsing [%s:%d]: '%s' expects 0 or 1 (disable or enable vary processing).\n", + ha_warning("parsing [%s:%d]: '%s' expects \"on\" or \"off\" (enable or disable vary processing).\n", + file, linenum, args[0]); + err_code |= ERR_WARN; + } + if (strcmp(args[1], "on") == 0) + tmp_cache_config->vary_processing_enabled = 1; + else if (strcmp(args[1], "off") == 0) + tmp_cache_config->vary_processing_enabled = 0; + else { + ha_warning("parsing [%s:%d]: '%s' expects \"on\" or \"off\" (enable or disable vary processing).\n", file, linenum, args[0]); err_code |= ERR_WARN; } - - tmp_cache_config->vary_processing_enabled = atoi(args[1]); } else if (strcmp(args[0], "max-secondary-entries") == 0) { unsigned int max_sec_entries; char *err;