MINOR: h1: provide a distinct init() function for request and response
h1m_init() used to handle response only since it was used by the H1
client code. Let's have one init per direction.
diff --git a/include/proto/h1.h b/include/proto/h1.h
index 472f4e7..365d069 100644
--- a/include/proto/h1.h
+++ b/include/proto/h1.h
@@ -300,8 +300,8 @@
return -stop;
}
-/* initializes an H1 message */
-static inline struct h1m *h1m_init(struct h1m *h1m)
+/* initializes an H1 message for a request */
+static inline struct h1m *h1m_init_req(struct h1m *h1m)
{
h1m->state = H1_MSG_RQBEFORE;
h1m->next = 0;
@@ -314,4 +314,18 @@
return h1m;
}
+/* initializes an H1 message for a response */
+static inline struct h1m *h1m_init_res(struct h1m *h1m)
+{
+ h1m->state = H1_MSG_RPBEFORE;
+ h1m->next = 0;
+ h1m->status = 0;
+ h1m->flags = 0;
+ h1m->curr_len = 0;
+ h1m->body_len = 0;
+ h1m->err_pos = 0;
+ h1m->err_state = 0;
+ return h1m;
+}
+
#endif /* _PROTO_H1_H */
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 595d66b..c1dad4c 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -690,8 +690,8 @@
h2s->errcode = H2_ERR_NO_ERROR;
h2s->st = H2_SS_IDLE;
h2s->rxbuf = BUF_NULL;
- h1m_init(&h2s->req);
- h1m_init(&h2s->res);
+ h1m_init_req(&h2s->req);
+ h1m_init_res(&h2s->res);
h2s->by_id.key = h2s->id = id;
h2c->max_id = id;
@@ -3231,9 +3231,7 @@
}
else if (h1m->status >= 100 && h1m->status < 200) {
/* we'll let the caller check if it has more headers to send */
- h1m->state = H1_MSG_RPBEFORE;
- h1m->status = 0;
- h1m->flags = 0;
+ h1m_init_res(h1m);
goto end;
}
else