#define H1_MF_CHNK 0x00000002 // chunk present, exclusive with c-l
#define H1_MF_RESP 0x00000004 // this message is the response message
#define H1_MF_TOLOWER 0x00000008 // turn the header names to lower case
+#define H1_MF_VER_11 0x00000010 // message indicates version 1.1 or above
/* basic HTTP/1 message state for use in parsers. The err_pos field is special,
*/
if (likely(!skip_update)) {
+ if ((sl.rq.v_l == 8) &&
+ ((start[sl.rq.v + 5] > '1') ||
+ ((start[sl.rq.v + 5] == '1') && (start[sl.rq.v + 7] >= '1'))))
+ h1m->flags |= H1_MF_VER_11;
+
if (unlikely(hdr_count >= hdr_num)) {
state = H1_MSG_RQVER;
goto http_output_full;
if (likely(HTTP_IS_SPHT(*ptr))) {
sl.st.v_l = ptr - start;
+
+ if ((sl.st.v_l == 8) &&
+ ((start[sl.st.v + 5] > '1') ||
+ ((start[sl.st.v + 5] == '1') && (start[sl.st.v + 7] >= '1'))))
+ h1m->flags |= H1_MF_VER_11;
+
EAT_AND_JUMP_OR_RETURN(ptr, end, http_msg_rpver_sp, http_msg_ood, state, H1_MSG_RPVER_SP);
}
state = H1_MSG_RPVER;