mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-03-05 02:49:01 +00:00
MINOR: backend: add new fields in lbprm to store more LB options
Some algorithms require a few extra options (up to 3). Let's provide some room in lbprm to store them, and make sure they're passed from defaults to backends.
This commit is contained in:
parent
484ff07691
commit
20e68378f1
@ -146,6 +146,9 @@ struct lbprm {
|
||||
int wdiv; /* ratio between effective weight and user weight */
|
||||
char *arg_str; /* name of the URL parameter/header/cookie used for hashing */
|
||||
int arg_len; /* strlen(arg_str), computed only once */
|
||||
int arg_opt1; /* extra option 1 for the LB algo (algo-specific) */
|
||||
int arg_opt2; /* extra option 2 for the LB algo (algo-specific) */
|
||||
int arg_opt3; /* extra option 3 for the LB algo (algo-specific) */
|
||||
struct server *fbck; /* first backup server when !PR_O_USE_ALL_BK, or NULL */
|
||||
struct lb_map map; /* LB parameters for map-based algorithms */
|
||||
struct lb_fwrr fwrr;
|
||||
|
@ -467,9 +467,14 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int kwm)
|
||||
curproxy->rdp_cookie_name = strdup(defproxy.rdp_cookie_name);
|
||||
curproxy->rdp_cookie_len = defproxy.rdp_cookie_len;
|
||||
|
||||
|
||||
if (defproxy.lbprm.arg_str)
|
||||
curproxy->lbprm.arg_str = strdup(defproxy.lbprm.arg_str);
|
||||
curproxy->lbprm.arg_len = defproxy.lbprm.arg_len;
|
||||
curproxy->lbprm.arg_opt1 = defproxy.lbprm.arg_opt1;
|
||||
curproxy->lbprm.arg_opt2 = defproxy.lbprm.arg_opt2;
|
||||
curproxy->lbprm.arg_opt3 = defproxy.lbprm.arg_opt3;
|
||||
|
||||
curproxy->uri_whole = defproxy.uri_whole;
|
||||
curproxy->uri_len_limit = defproxy.uri_len_limit;
|
||||
curproxy->uri_dirs_depth1 = defproxy.uri_dirs_depth1;
|
||||
|
Loading…
Reference in New Issue
Block a user