MEDIUM: http: add http-request 'add-header' and 'set-header' to build headers

These two new statements allow to pass information extracted from the request
to the server. It's particularly useful for passing SSL information to the
server, but may be used for various other purposes such as combining headers
together to emulate internal variables.
diff --git a/include/types/proto_http.h b/include/types/proto_http.h
index c6efc55..7c5a42a 100644
--- a/include/types/proto_http.h
+++ b/include/types/proto_http.h
@@ -240,8 +240,10 @@
 	HTTP_REQ_ACT_UNKNOWN = 0,
 	HTTP_REQ_ACT_ALLOW,
 	HTTP_REQ_ACT_DENY,
-	HTTP_REQ_ACT_HTTP_AUTH,
-	HTTP_REQ_ACT_MAX
+	HTTP_REQ_ACT_AUTH,
+	HTTP_REQ_ACT_ADD_HDR,
+	HTTP_REQ_ACT_SET_HDR,
+	HTTP_REQ_ACT_MAX /* must always be last */
 };
 
 /*
@@ -347,6 +349,11 @@
 		struct {
 			char *realm;
 		} auth;                        /* arg used by "auth" */
+		struct {
+			char *name;            /* header name */
+			int name_len;          /* header name's length */
+			struct list fmt;       /* log-format compatible expression */
+		} hdr_add;                     /* args used by "add-header" and "set-header" */
 	} arg;                                 /* arguments used by some actions */
 };