MEDIUM: config: set tune.maxrewrite to 1024 by default

The tune.maxrewrite parameter used to be pre-initialized to half of
the buffer size since the very early days when buffers were very small.
It has grown to absurdly large values over the years to reach 8kB for a
16kB buffer. This prevents large requests from being accepted, which is
the opposite of the initial goal.

Many users fix it to 1024 which is already quite large for header
addition.

So let's change the default setting policy :
  - pre-initialize it to 1024
  - let the user tweak it
  - in any case, limit it to tune.bufsize / 2

This results in 15kB usable to buffer HTTP messages instead of 8kB, and
doesn't affect existing configurations which already force it.
diff --git a/src/cfgparse.c b/src/cfgparse.c
index f7944c3..d732ac3 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -833,8 +833,6 @@
 			err_code |= ERR_ALERT | ERR_FATAL;
 			goto out;
 		}
-		if (global.tune.maxrewrite >= global.tune.bufsize / 2)
-			global.tune.maxrewrite = global.tune.bufsize / 2;
 		chunk_init(&trash, realloc(trash.str, global.tune.bufsize), global.tune.bufsize);
 		alloc_trash_buffers(global.tune.bufsize);
 	}
@@ -847,8 +845,11 @@
 			goto out;
 		}
 		global.tune.maxrewrite = atol(args[1]);
-		if (global.tune.maxrewrite >= global.tune.bufsize / 2)
-			global.tune.maxrewrite = global.tune.bufsize / 2;
+		if (global.tune.maxrewrite < 0) {
+			Alert("parsing [%s:%d] : '%s' expects a positive integer argument.\n", file, linenum, args[0]);
+			err_code |= ERR_ALERT | ERR_FATAL;
+			goto out;
+		}
 	}
 	else if (!strcmp(args[0], "tune.idletimer")) {
 		unsigned int idle;
diff --git a/src/haproxy.c b/src/haproxy.c
index a20f497..bdfa318 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -150,7 +150,7 @@
 	},
 	.tune = {
 		.bufsize = BUFSIZE,
-		.maxrewrite = MAXREWRITE,
+		.maxrewrite = -1,
 		.chksize = BUFSIZE,
 		.reserved_bufs = RESERVED_BUFS,
 		.pattern_cache = DEFAULT_PAT_LRU_SIZE,
@@ -1018,6 +1018,9 @@
 	if (global.tune.recv_enough == 0)
 		global.tune.recv_enough = MIN_RECV_AT_ONCE_ENOUGH;
 
+	if (global.tune.maxrewrite < 0)
+		global.tune.maxrewrite = MAXREWRITE;
+
 	if (global.tune.maxrewrite >= global.tune.bufsize / 2)
 		global.tune.maxrewrite = global.tune.bufsize / 2;