CLEANUP: stats/cli: stop using appctx->st2

Instead, let's have the state as an enum inside the context. It's much
cleaner and safer as we know nobody else touches it.
diff --git a/include/haproxy/stats-t.h b/include/haproxy/stats-t.h
index f512419..6fbe28b 100644
--- a/include/haproxy/stats-t.h
+++ b/include/haproxy/stats-t.h
@@ -122,7 +122,7 @@
 
 
 /* data transmission states for the stats responses */
-enum {
+enum stat_state {
 	STAT_ST_INIT = 0,
 	STAT_ST_HEAD,
 	STAT_ST_INFO,
@@ -529,6 +529,7 @@
 	unsigned int flags;	/* STAT_* from stats-t.h */
 	int iid, type, sid;	/* proxy id, type and service id if bounding of stats is enabled */
 	int st_code;		/* the status code returned by an action */
+	enum stat_state state;  /* phase of output production */
 };
 
 extern THREAD_LOCAL void *trash_counters;
diff --git a/src/http_ana.c b/src/http_ana.c
index 1968f84..d2da628 100644
--- a/src/http_ana.c
+++ b/src/http_ana.c
@@ -3927,7 +3927,8 @@
 	struct htx *htx;
 	struct htx_sl *sl;
 
-	appctx->st1 = appctx->st2 = 0;
+	appctx->st1 = 0;
+	ctx->state = STAT_ST_INIT;
 	ctx->st_code = STAT_STATUS_INIT;
 	ctx->flags |= uri_auth->flags;
 	ctx->flags |= STAT_FMT_HTML; /* assume HTML mode by default */
diff --git a/src/stats.c b/src/stats.c
index ea43275..19c96cd 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -3732,9 +3732,9 @@
 
 	chunk_reset(&trash);
 
-	switch (appctx->st2) {
+	switch (ctx->state) {
 	case STAT_ST_INIT:
-		appctx->st2 = STAT_ST_HEAD; /* let's start producing data */
+		ctx->state = STAT_ST_HEAD; /* let's start producing data */
 		/* fall through */
 
 	case STAT_ST_HEAD:
@@ -3751,10 +3751,10 @@
 			goto full;
 
 		if (ctx->flags & STAT_JSON_SCHM) {
-			appctx->st2 = STAT_ST_FIN;
+			ctx->state = STAT_ST_FIN;
 			return 1;
 		}
-		appctx->st2 = STAT_ST_INFO;
+		ctx->state = STAT_ST_INFO;
 		/* fall through */
 
 	case STAT_ST_INFO:
@@ -3768,7 +3768,7 @@
 			ctx->obj1 = proxies_list;
 
 		ctx->px_st = STAT_PX_ST_INIT;
-		appctx->st2 = STAT_ST_LIST;
+		ctx->state = STAT_ST_LIST;
 		/* fall through */
 
 	case STAT_ST_LIST:
@@ -3789,7 +3789,7 @@
 			break;
 		}
 
-		appctx->st2 = STAT_ST_END;
+		ctx->state = STAT_ST_END;
 		/* fall through */
 
 	case STAT_ST_END:
@@ -3802,7 +3802,7 @@
 				goto full;
 		}
 
-		appctx->st2 = STAT_ST_FIN;
+		ctx->state = STAT_ST_FIN;
 		/* fall through */
 
 	case STAT_ST_FIN:
@@ -3810,7 +3810,7 @@
 
 	default:
 		/* unknown state ! */
-		appctx->st2 = STAT_ST_FIN;
+		ctx->state = STAT_ST_FIN;
 		return -1;
 	}