From 552df67100edc65433aaec984f69620633b5b7c5 Mon Sep 17 00:00:00 2001 From: William Lallemand Date: Wed, 7 Nov 2012 13:21:47 +0100 Subject: [PATCH] MINOR: compression: try init in cfgparse.c Try to init and deinit the algorithm in the configuration parser and exit with error if it doesn't work. --- src/cfgparse.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/cfgparse.c b/src/cfgparse.c index 2b451225d..4a1ca758a 100644 --- a/src/cfgparse.c +++ b/src/cfgparse.c @@ -5296,6 +5296,8 @@ stats_error_parsing: if (!strcmp(args[1], "algo")) { int cur_arg; + struct comp_ctx ctx; + cur_arg = 2; if (!*args[cur_arg]) { Alert("parsing [%s:%d] : '%s' expects \n", @@ -5310,6 +5312,14 @@ stats_error_parsing: err_code |= ERR_ALERT | ERR_FATAL; goto out; } + if (curproxy->comp->algos->init(&ctx, 9) == 0) { + curproxy->comp->algos->end(&ctx); + } else { + Alert("parsing [%s:%d] : '%s' : Can't init '%s' algorithm.\n", + file, linenum, args[0], args[cur_arg]); + err_code |= ERR_ALERT | ERR_FATAL; + goto out; + } cur_arg ++; continue; }