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.
diff --git a/include/types/backend.h b/include/types/backend.h
index 3271eea..e67f0be 100644
--- a/include/types/backend.h
+++ b/include/types/backend.h
@@ -146,6 +146,9 @@
 	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;
diff --git a/src/cfgparse-listen.c b/src/cfgparse-listen.c
index 4a6c73b..9774bba 100644
--- a/src/cfgparse-listen.c
+++ b/src/cfgparse-listen.c
@@ -467,9 +467,14 @@
 				 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;