#define H1_MF_CONN_UPG 0x00000080 // message contains "connection: upgrade"
#define H1_MF_XFER_LEN 0x00000100 // message xfer size can be determined
#define H1_MF_XFER_ENC 0x00000200 // transfer-encoding is present
+#define H1_MF_NO_PHDR 0x00000400 // don't add pseudo-headers in the header list
/* Note: for a connection to be persistent, we need this for the request :
* - one of CLEN or CHNK
state = H1_MSG_RQVER;
goto http_output_full;
}
- http_set_hdr(&hdr[hdr_count++], ist(":method"), sl.rq.m);
+ if (!(h1m->flags & H1_MF_NO_PHDR))
+ http_set_hdr(&hdr[hdr_count++], ist(":method"), sl.rq.m);
if (unlikely(hdr_count >= hdr_num)) {
state = H1_MSG_RQVER;
goto http_output_full;
}
- http_set_hdr(&hdr[hdr_count++], ist(":path"), sl.rq.u);
+ if (!(h1m->flags & H1_MF_NO_PHDR))
+ http_set_hdr(&hdr[hdr_count++], ist(":path"), sl.rq.u);
}
sol = ptr - start;
state = H1_MSG_RPREASON;
goto http_output_full;
}
- http_set_hdr(&hdr[hdr_count++], ist(":status"), sl.st.c);
+ if (!(h1m->flags & H1_MF_NO_PHDR))
+ http_set_hdr(&hdr[hdr_count++], ist(":status"), sl.st.c);
}
sol = ptr - start;