diff --git a/src/checks.c b/src/checks.c
index 28ee4c4..b64d32e 100644
--- a/src/checks.c
+++ b/src/checks.c
@@ -49,7 +49,6 @@
 #include <proto/mux_pt.h>
 #include <proto/queue.h>
 #include <proto/port_range.h>
-#include <proto/proto_http.h>
 #include <proto/proto_tcp.h>
 #include <proto/protocol.h>
 #include <proto/proxy.h>
diff --git a/src/compression.c b/src/compression.c
index 3e98402..e7ce90a 100644
--- a/src/compression.c
+++ b/src/compression.c
@@ -37,7 +37,6 @@
 #include <proto/acl.h>
 #include <proto/compression.h>
 #include <proto/freq_ctr.h>
-#include <proto/proto_http.h>
 #include <proto/stream.h>
 
 
diff --git a/src/flt_http_comp.c b/src/flt_http_comp.c
index bf8f81a..81e1b42 100644
--- a/src/flt_http_comp.c
+++ b/src/flt_http_comp.c
@@ -17,7 +17,7 @@
 
 #include <types/compression.h>
 #include <types/filters.h>
-#include <types/proto_http.h>
+#include <types/h1.h>
 #include <types/proxy.h>
 #include <types/sample.h>
 
diff --git a/src/h1.c b/src/h1.c
index 63ff993..325f5b6 100644
--- a/src/h1.c
+++ b/src/h1.c
@@ -18,147 +18,6 @@
 #include <proto/h1.h>
 #include <proto/hdr_idx.h>
 
-/* It is about twice as fast on recent architectures to lookup a byte in a
- * table than to perform a boolean AND or OR between two tests. Refer to
- * RFC2616/RFC5234/RFC7230 for those chars. A token is any ASCII char that is
- * neither a separator nor a CTL char. An http ver_token is any ASCII which can
- * be found in an HTTP version, which includes 'H', 'T', 'P', '/', '.' and any
- * digit. Note: please do not overwrite values in assignment since gcc-2.95
- * will not handle them correctly. It's worth noting that chars 128..255 are
- * nothing, not even control chars.
- */
-const unsigned char h1_char_classes[256] = {
-	[  0] = H1_FLG_CTL,
-	[  1] = H1_FLG_CTL,
-	[  2] = H1_FLG_CTL,
-	[  3] = H1_FLG_CTL,
-	[  4] = H1_FLG_CTL,
-	[  5] = H1_FLG_CTL,
-	[  6] = H1_FLG_CTL,
-	[  7] = H1_FLG_CTL,
-	[  8] = H1_FLG_CTL,
-	[  9] = H1_FLG_SPHT | H1_FLG_LWS | H1_FLG_SEP | H1_FLG_CTL,
-	[ 10] = H1_FLG_CRLF | H1_FLG_LWS | H1_FLG_CTL,
-	[ 11] = H1_FLG_CTL,
-	[ 12] = H1_FLG_CTL,
-	[ 13] = H1_FLG_CRLF | H1_FLG_LWS | H1_FLG_CTL,
-	[ 14] = H1_FLG_CTL,
-	[ 15] = H1_FLG_CTL,
-	[ 16] = H1_FLG_CTL,
-	[ 17] = H1_FLG_CTL,
-	[ 18] = H1_FLG_CTL,
-	[ 19] = H1_FLG_CTL,
-	[ 20] = H1_FLG_CTL,
-	[ 21] = H1_FLG_CTL,
-	[ 22] = H1_FLG_CTL,
-	[ 23] = H1_FLG_CTL,
-	[ 24] = H1_FLG_CTL,
-	[ 25] = H1_FLG_CTL,
-	[ 26] = H1_FLG_CTL,
-	[ 27] = H1_FLG_CTL,
-	[ 28] = H1_FLG_CTL,
-	[ 29] = H1_FLG_CTL,
-	[ 30] = H1_FLG_CTL,
-	[ 31] = H1_FLG_CTL,
-	[' '] = H1_FLG_SPHT | H1_FLG_LWS | H1_FLG_SEP,
-	['!'] = H1_FLG_TOK,
-	['"'] = H1_FLG_SEP,
-	['#'] = H1_FLG_TOK,
-	['$'] = H1_FLG_TOK,
-	['%'] = H1_FLG_TOK,
-	['&'] = H1_FLG_TOK,
-	[ 39] = H1_FLG_TOK,
-	['('] = H1_FLG_SEP,
-	[')'] = H1_FLG_SEP,
-	['*'] = H1_FLG_TOK,
-	['+'] = H1_FLG_TOK,
-	[','] = H1_FLG_SEP,
-	['-'] = H1_FLG_TOK,
-	['.'] = H1_FLG_TOK | H1_FLG_VER,
-	['/'] = H1_FLG_SEP | H1_FLG_VER,
-	['0'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['1'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['2'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['3'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['4'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['5'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['6'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['7'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['8'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	['9'] = H1_FLG_TOK | H1_FLG_VER | H1_FLG_DIG,
-	[':'] = H1_FLG_SEP,
-	[';'] = H1_FLG_SEP,
-	['<'] = H1_FLG_SEP,
-	['='] = H1_FLG_SEP,
-	['>'] = H1_FLG_SEP,
-	['?'] = H1_FLG_SEP,
-	['@'] = H1_FLG_SEP,
-	['A'] = H1_FLG_TOK,
-	['B'] = H1_FLG_TOK,
-	['C'] = H1_FLG_TOK,
-	['D'] = H1_FLG_TOK,
-	['E'] = H1_FLG_TOK,
-	['F'] = H1_FLG_TOK,
-	['G'] = H1_FLG_TOK,
-	['H'] = H1_FLG_TOK | H1_FLG_VER,
-	['I'] = H1_FLG_TOK,
-	['J'] = H1_FLG_TOK,
-	['K'] = H1_FLG_TOK,
-	['L'] = H1_FLG_TOK,
-	['M'] = H1_FLG_TOK,
-	['N'] = H1_FLG_TOK,
-	['O'] = H1_FLG_TOK,
-	['P'] = H1_FLG_TOK | H1_FLG_VER,
-	['Q'] = H1_FLG_TOK,
-	['R'] = H1_FLG_TOK | H1_FLG_VER,
-	['S'] = H1_FLG_TOK | H1_FLG_VER,
-	['T'] = H1_FLG_TOK | H1_FLG_VER,
-	['U'] = H1_FLG_TOK,
-	['V'] = H1_FLG_TOK,
-	['W'] = H1_FLG_TOK,
-	['X'] = H1_FLG_TOK,
-	['Y'] = H1_FLG_TOK,
-	['Z'] = H1_FLG_TOK,
-	['['] = H1_FLG_SEP,
-	[ 92] = H1_FLG_SEP,
-	[']'] = H1_FLG_SEP,
-	['^'] = H1_FLG_TOK,
-	['_'] = H1_FLG_TOK,
-	['`'] = H1_FLG_TOK,
-	['a'] = H1_FLG_TOK,
-	['b'] = H1_FLG_TOK,
-	['c'] = H1_FLG_TOK,
-	['d'] = H1_FLG_TOK,
-	['e'] = H1_FLG_TOK,
-	['f'] = H1_FLG_TOK,
-	['g'] = H1_FLG_TOK,
-	['h'] = H1_FLG_TOK,
-	['i'] = H1_FLG_TOK,
-	['j'] = H1_FLG_TOK,
-	['k'] = H1_FLG_TOK,
-	['l'] = H1_FLG_TOK,
-	['m'] = H1_FLG_TOK,
-	['n'] = H1_FLG_TOK,
-	['o'] = H1_FLG_TOK,
-	['p'] = H1_FLG_TOK,
-	['q'] = H1_FLG_TOK,
-	['r'] = H1_FLG_TOK,
-	['s'] = H1_FLG_TOK,
-	['t'] = H1_FLG_TOK,
-	['u'] = H1_FLG_TOK,
-	['v'] = H1_FLG_TOK,
-	['w'] = H1_FLG_TOK,
-	['x'] = H1_FLG_TOK,
-	['y'] = H1_FLG_TOK,
-	['z'] = H1_FLG_TOK,
-	['{'] = H1_FLG_SEP,
-	['|'] = H1_FLG_TOK,
-	['}'] = H1_FLG_SEP,
-	['~'] = H1_FLG_TOK,
-	[127] = H1_FLG_CTL,
-};
-
-
 /*
  * This function parses a status line between <ptr> and <end>, starting with
  * parser state <state>. Only states HTTP_MSG_RPVER, HTTP_MSG_RPVER_SP,
diff --git a/src/hlua_fcn.c b/src/hlua_fcn.c
index cebce22..5721445 100644
--- a/src/hlua_fcn.c
+++ b/src/hlua_fcn.c
@@ -26,7 +26,7 @@
 #include <types/proxy.h>
 #include <types/stats.h>
 
-#include <proto/proto_http.h>
+#include <proto/h1.h>
 #include <proto/proxy.h>
 #include <proto/server.h>
 #include <proto/stats.h>
diff --git a/src/http.c b/src/http.c
new file mode 100644
index 0000000..ad620a9
--- /dev/null
+++ b/src/http.c
@@ -0,0 +1,185 @@
+/*
+ * HTTP semantics
+ *
+ * Copyright 2000-2018 Willy Tarreau <w@1wt.eu>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ *
+ */
+
+#include <ctype.h>
+#include <common/config.h>
+#include <common/http.h>
+
+/* It is about twice as fast on recent architectures to lookup a byte in a
+ * table than to perform a boolean AND or OR between two tests. Refer to
+ * RFC2616/RFC5234/RFC7230 for those chars. A token is any ASCII char that is
+ * neither a separator nor a CTL char. An http ver_token is any ASCII which can
+ * be found in an HTTP version, which includes 'H', 'T', 'P', '/', '.' and any
+ * digit. Note: please do not overwrite values in assignment since gcc-2.95
+ * will not handle them correctly. It's worth noting that chars 128..255 are
+ * nothing, not even control chars.
+ */
+const unsigned char http_char_classes[256] = {
+	[  0] = HTTP_FLG_CTL,
+	[  1] = HTTP_FLG_CTL,
+	[  2] = HTTP_FLG_CTL,
+	[  3] = HTTP_FLG_CTL,
+	[  4] = HTTP_FLG_CTL,
+	[  5] = HTTP_FLG_CTL,
+	[  6] = HTTP_FLG_CTL,
+	[  7] = HTTP_FLG_CTL,
+	[  8] = HTTP_FLG_CTL,
+	[  9] = HTTP_FLG_SPHT | HTTP_FLG_LWS | HTTP_FLG_SEP | HTTP_FLG_CTL,
+	[ 10] = HTTP_FLG_CRLF | HTTP_FLG_LWS | HTTP_FLG_CTL,
+	[ 11] = HTTP_FLG_CTL,
+	[ 12] = HTTP_FLG_CTL,
+	[ 13] = HTTP_FLG_CRLF | HTTP_FLG_LWS | HTTP_FLG_CTL,
+	[ 14] = HTTP_FLG_CTL,
+	[ 15] = HTTP_FLG_CTL,
+	[ 16] = HTTP_FLG_CTL,
+	[ 17] = HTTP_FLG_CTL,
+	[ 18] = HTTP_FLG_CTL,
+	[ 19] = HTTP_FLG_CTL,
+	[ 20] = HTTP_FLG_CTL,
+	[ 21] = HTTP_FLG_CTL,
+	[ 22] = HTTP_FLG_CTL,
+	[ 23] = HTTP_FLG_CTL,
+	[ 24] = HTTP_FLG_CTL,
+	[ 25] = HTTP_FLG_CTL,
+	[ 26] = HTTP_FLG_CTL,
+	[ 27] = HTTP_FLG_CTL,
+	[ 28] = HTTP_FLG_CTL,
+	[ 29] = HTTP_FLG_CTL,
+	[ 30] = HTTP_FLG_CTL,
+	[ 31] = HTTP_FLG_CTL,
+	[' '] = HTTP_FLG_SPHT | HTTP_FLG_LWS | HTTP_FLG_SEP,
+	['!'] = HTTP_FLG_TOK,
+	['"'] = HTTP_FLG_SEP,
+	['#'] = HTTP_FLG_TOK,
+	['$'] = HTTP_FLG_TOK,
+	['%'] = HTTP_FLG_TOK,
+	['&'] = HTTP_FLG_TOK,
+	[ 39] = HTTP_FLG_TOK,
+	['('] = HTTP_FLG_SEP,
+	[')'] = HTTP_FLG_SEP,
+	['*'] = HTTP_FLG_TOK,
+	['+'] = HTTP_FLG_TOK,
+	[','] = HTTP_FLG_SEP,
+	['-'] = HTTP_FLG_TOK,
+	['.'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['/'] = HTTP_FLG_SEP | HTTP_FLG_VER,
+	['0'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['1'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['2'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['3'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['4'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['5'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['6'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['7'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['8'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	['9'] = HTTP_FLG_TOK | HTTP_FLG_VER | HTTP_FLG_DIG,
+	[':'] = HTTP_FLG_SEP,
+	[';'] = HTTP_FLG_SEP,
+	['<'] = HTTP_FLG_SEP,
+	['='] = HTTP_FLG_SEP,
+	['>'] = HTTP_FLG_SEP,
+	['?'] = HTTP_FLG_SEP,
+	['@'] = HTTP_FLG_SEP,
+	['A'] = HTTP_FLG_TOK,
+	['B'] = HTTP_FLG_TOK,
+	['C'] = HTTP_FLG_TOK,
+	['D'] = HTTP_FLG_TOK,
+	['E'] = HTTP_FLG_TOK,
+	['F'] = HTTP_FLG_TOK,
+	['G'] = HTTP_FLG_TOK,
+	['H'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['I'] = HTTP_FLG_TOK,
+	['J'] = HTTP_FLG_TOK,
+	['K'] = HTTP_FLG_TOK,
+	['L'] = HTTP_FLG_TOK,
+	['M'] = HTTP_FLG_TOK,
+	['N'] = HTTP_FLG_TOK,
+	['O'] = HTTP_FLG_TOK,
+	['P'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['Q'] = HTTP_FLG_TOK,
+	['R'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['S'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['T'] = HTTP_FLG_TOK | HTTP_FLG_VER,
+	['U'] = HTTP_FLG_TOK,
+	['V'] = HTTP_FLG_TOK,
+	['W'] = HTTP_FLG_TOK,
+	['X'] = HTTP_FLG_TOK,
+	['Y'] = HTTP_FLG_TOK,
+	['Z'] = HTTP_FLG_TOK,
+	['['] = HTTP_FLG_SEP,
+	[ 92] = HTTP_FLG_SEP,
+	[']'] = HTTP_FLG_SEP,
+	['^'] = HTTP_FLG_TOK,
+	['_'] = HTTP_FLG_TOK,
+	['`'] = HTTP_FLG_TOK,
+	['a'] = HTTP_FLG_TOK,
+	['b'] = HTTP_FLG_TOK,
+	['c'] = HTTP_FLG_TOK,
+	['d'] = HTTP_FLG_TOK,
+	['e'] = HTTP_FLG_TOK,
+	['f'] = HTTP_FLG_TOK,
+	['g'] = HTTP_FLG_TOK,
+	['h'] = HTTP_FLG_TOK,
+	['i'] = HTTP_FLG_TOK,
+	['j'] = HTTP_FLG_TOK,
+	['k'] = HTTP_FLG_TOK,
+	['l'] = HTTP_FLG_TOK,
+	['m'] = HTTP_FLG_TOK,
+	['n'] = HTTP_FLG_TOK,
+	['o'] = HTTP_FLG_TOK,
+	['p'] = HTTP_FLG_TOK,
+	['q'] = HTTP_FLG_TOK,
+	['r'] = HTTP_FLG_TOK,
+	['s'] = HTTP_FLG_TOK,
+	['t'] = HTTP_FLG_TOK,
+	['u'] = HTTP_FLG_TOK,
+	['v'] = HTTP_FLG_TOK,
+	['w'] = HTTP_FLG_TOK,
+	['x'] = HTTP_FLG_TOK,
+	['y'] = HTTP_FLG_TOK,
+	['z'] = HTTP_FLG_TOK,
+	['{'] = HTTP_FLG_SEP,
+	['|'] = HTTP_FLG_TOK,
+	['}'] = HTTP_FLG_SEP,
+	['~'] = HTTP_FLG_TOK,
+	[127] = HTTP_FLG_CTL,
+};
+
+const struct ist http_known_methods[HTTP_METH_OTHER] = {
+	[HTTP_METH_OPTIONS] = IST("OPTIONS"),
+	[HTTP_METH_GET]     = IST("GET"),
+	[HTTP_METH_HEAD]    = IST("HEAD"),
+	[HTTP_METH_POST]    = IST("POST"),
+	[HTTP_METH_PUT]     = IST("PUT"),
+	[HTTP_METH_DELETE]  = IST("DELETE"),
+	[HTTP_METH_TRACE]   = IST("TRACE"),
+	[HTTP_METH_CONNECT] = IST("CONNECT"),
+};
+
+/*
+ * returns a known method among HTTP_METH_* or HTTP_METH_OTHER for all unknown
+ * ones.
+ */
+enum http_meth_t find_http_meth(const char *str, const int len)
+{
+	const struct ist m = ist2(str, len);
+
+	if      (isteq(m, ist("GET")))     return HTTP_METH_GET;
+	else if (isteq(m, ist("HEAD")))    return HTTP_METH_HEAD;
+	else if (isteq(m, ist("POST")))    return HTTP_METH_POST;
+	else if (isteq(m, ist("CONNECT"))) return HTTP_METH_CONNECT;
+	else if (isteq(m, ist("PUT")))     return HTTP_METH_PUT;
+	else if (isteq(m, ist("OPTIONS"))) return HTTP_METH_OPTIONS;
+	else if (isteq(m, ist("DELETE")))  return HTTP_METH_DELETE;
+	else if (isteq(m, ist("TRACE")))   return HTTP_METH_TRACE;
+	else                               return HTTP_METH_OTHER;
+}
diff --git a/src/lb_map.c b/src/lb_map.c
index 54569b0..2d8faa9 100644
--- a/src/lb_map.c
+++ b/src/lb_map.c
@@ -20,8 +20,6 @@
 
 #include <proto/backend.h>
 #include <proto/lb_map.h>
-#include <proto/proto_http.h>
-#include <proto/proto_tcp.h>
 #include <proto/queue.h>
 
 /* this function updates the map according to server <srv>'s new state.
diff --git a/src/log.c b/src/log.c
index 3bd2285..11e75ec 100644
--- a/src/log.c
+++ b/src/log.c
@@ -36,7 +36,7 @@
 #include <proto/applet.h>
 #include <proto/cli.h>
 #include <proto/frontend.h>
-#include <proto/proto_http.h>
+#include <proto/h1.h>
 #include <proto/log.h>
 #include <proto/sample.h>
 #include <proto/stream.h>
diff --git a/src/peers.c b/src/peers.c
index 1fefa94..50aee87 100644
--- a/src/peers.c
+++ b/src/peers.c
@@ -39,8 +39,6 @@
 #include <proto/log.h>
 #include <proto/hdr_idx.h>
 #include <proto/mux_pt.h>
-#include <proto/proto_tcp.h>
-#include <proto/proto_http.h>
 #include <proto/proxy.h>
 #include <proto/session.h>
 #include <proto/stream.h>
diff --git a/src/proto_http.c b/src/proto_http.c
index b97c6bf..b153b14 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -488,55 +488,6 @@
 }
 
 /*
- * We have 26 list of methods (1 per first letter), each of which can have
- * up to 3 entries (2 valid, 1 null).
- */
-struct http_method_desc {
-	enum http_meth_t meth;
-	int len;
-	const char text[8];
-};
-
-const struct http_method_desc http_methods[26][3] = {
-	['C' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_CONNECT , .len=7, .text="CONNECT" },
-	},
-	['D' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_DELETE  , .len=6, .text="DELETE"  },
-	},
-	['G' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_GET     , .len=3, .text="GET"     },
-	},
-	['H' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_HEAD    , .len=4, .text="HEAD"    },
-	},
-	['O' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_OPTIONS , .len=7, .text="OPTIONS" },
-	},
-	['P' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_POST    , .len=4, .text="POST"    },
-		[1] = {	.meth = HTTP_METH_PUT     , .len=3, .text="PUT"     },
-	},
-	['T' - 'A'] = {
-		[0] = {	.meth = HTTP_METH_TRACE   , .len=5, .text="TRACE"   },
-	},
-	/* rest is empty like this :
-	 *      [0] = {	.meth = HTTP_METH_OTHER   , .len=0, .text=""        },
-	 */
-};
-
-const struct http_method_name http_known_methods[HTTP_METH_OTHER] = {
-	[HTTP_METH_OPTIONS] = { "OPTIONS",  7 },
-	[HTTP_METH_GET]     = { "GET",      3 },
-	[HTTP_METH_HEAD]    = { "HEAD",     4 },
-	[HTTP_METH_POST]    = { "POST",     4 },
-	[HTTP_METH_PUT]     = { "PUT",      3 },
-	[HTTP_METH_DELETE]  = { "DELETE",   6 },
-	[HTTP_METH_TRACE]   = { "TRACE",    5 },
-	[HTTP_METH_CONNECT] = { "CONNECT",  7 },
-};
-
-/*
  * Adds a header and its CRLF at the tail of the message's buffer, just before
  * the last CRLF.
  * The header is also automatically added to the index <hdr_idx>, and the end
@@ -959,28 +910,6 @@
 	stream_int_retnclose(&s->si[0], msg);
 }
 
-/*
- * returns a known method among HTTP_METH_* or HTTP_METH_OTHER for all unknown
- * ones.
- */
-enum http_meth_t find_http_meth(const char *str, const int len)
-{
-	unsigned char m;
-	const struct http_method_desc *h;
-
-	m = ((unsigned)*str - 'A');
-
-	if (m < 26) {
-		for (h = http_methods[m]; h->len > 0; h++) {
-			if (unlikely(h->len != len))
-				continue;
-			if (likely(memcmp(str, h->text, h->len) == 0))
-				return h->meth;
-		};
-	}
-	return HTTP_METH_OTHER;
-}
-
 /* Parse the URI from the given transaction (which is assumed to be in request
  * phase) and look for the "/" beginning the PATH. If not found, return NULL.
  * It is returned otherwise.
diff --git a/src/sample.c b/src/sample.c
index e3dea1b..138390d 100644
--- a/src/sample.c
+++ b/src/sample.c
@@ -20,6 +20,7 @@
 
 #include <common/chunk.h>
 #include <common/hash.h>
+#include <common/http.h>
 #include <common/standard.h>
 #include <common/uri_auth.h>
 #include <common/base64.h>
@@ -27,7 +28,6 @@
 #include <proto/arg.h>
 #include <proto/auth.h>
 #include <proto/log.h>
-#include <proto/proto_http.h>
 #include <proto/proxy.h>
 #include <proto/sample.h>
 #include <proto/stick_table.h>
@@ -749,7 +749,7 @@
 	else if (smp->data.u.meth.meth < HTTP_METH_OTHER) {
 		/* The method is known, copy the pointer containing the string. */
 		meth = smp->data.u.meth.meth;
-		smp->data.u.str.area = http_known_methods[meth].name;
+		smp->data.u.str.area = http_known_methods[meth].ptr;
 		smp->data.u.str.data = http_known_methods[meth].len;
 		smp->flags |= SMP_F_CONST;
 		smp->data.type = SMP_T_STR;
diff --git a/src/session.c b/src/session.c
index c9d50df..3454925 100644
--- a/src/session.c
+++ b/src/session.c
@@ -13,6 +13,7 @@
 #include <common/config.h>
 #include <common/buffer.h>
 #include <common/debug.h>
+#include <common/http.h>
 #include <common/memory.h>
 
 #include <types/global.h>
@@ -21,7 +22,6 @@
 #include <proto/connection.h>
 #include <proto/listener.h>
 #include <proto/log.h>
-#include <proto/proto_http.h>
 #include <proto/proxy.h>
 #include <proto/session.h>
 #include <proto/stream.h>
diff --git a/src/stats.c b/src/stats.c
index 4cea776..da960f5 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -28,6 +28,7 @@
 #include <common/compat.h>
 #include <common/config.h>
 #include <common/debug.h>
+#include <common/http.h>
 #include <common/memory.h>
 #include <common/mini-clist.h>
 #include <common/standard.h>
@@ -57,7 +58,6 @@
 #include <proto/pipe.h>
 #include <proto/listener.h>
 #include <proto/map.h>
-#include <proto/proto_http.h>
 #include <proto/proxy.h>
 #include <proto/sample.h>
 #include <proto/session.h>
diff --git a/src/vars.c b/src/vars.c
index 5787cf6..905e20c 100644
--- a/src/vars.c
+++ b/src/vars.c
@@ -1,6 +1,7 @@
 #include <ctype.h>
 
 #include <common/cfgparse.h>
+#include <common/http.h>
 #include <common/mini-clist.h>
 
 #include <types/vars.h>
