MINOR: stream_interface: add reporting of ressouce allocation errors
SSL and keep-alive will need to be able to fail on allocation errors,
and the stream interface did not allow to report such a cause. The flag
will then be "RC" as already documented.
diff --git a/src/proto_http.c b/src/proto_http.c
index a7e42fc..900f747 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -936,6 +936,9 @@
else if (err_type & SI_ET_CONN_ERR)
http_server_error(s, si, SN_ERR_SRVCL, SN_FINST_C,
503, http_error_message(s, HTTP_ERR_503));
+ else if (err_type & SI_ET_CONN_RES)
+ http_server_error(s, si, SN_ERR_RESOURCE, SN_FINST_C,
+ 503, http_error_message(s, HTTP_ERR_503));
else /* SI_ET_CONN_OTHER and others */
http_server_error(s, si, SN_ERR_INTERNAL, SN_FINST_C,
500, http_error_message(s, HTTP_ERR_500));
diff --git a/src/session.c b/src/session.c
index 1183d91..75ac04c 100644
--- a/src/session.c
+++ b/src/session.c
@@ -2576,6 +2576,10 @@
err = SN_ERR_SRVCL;
fin = SN_FINST_C;
}
+ else if (err_type & SI_ET_CONN_RES) {
+ err = SN_ERR_RESOURCE;
+ fin = SN_FINST_C;
+ }
else /* SI_ET_CONN_OTHER and others */ {
err = SN_ERR_INTERNAL;
fin = SN_FINST_C;