[MEDIUM] errorloc now checked first from backend then from frontend

It is now possible to define an errorloc in the backend as well as
in the frontend. The backend's will be used first, and if undefined,
then the frontend's will be used instead. If none is used, then the
original error messages will be used.
diff --git a/src/backend.c b/src/backend.c
index f794ea5..f7dd675 100644
--- a/src/backend.c
+++ b/src/backend.c
@@ -30,6 +30,7 @@
 
 #include <proto/backend.h>
 #include <proto/fd.h>
+#include <proto/httperr.h>
 #include <proto/log.h>
 #include <proto/proto_http.h>
 #include <proto/queue.h>
@@ -545,7 +546,7 @@
 		/* if not retryable anymore, let's abort */
 		tv_eternity(&t->req->cex);
 		srv_close_with_err(t, conn_err, SN_FINST_C,
-				   503, &t->fe->errmsg[HTTP_ERR_503]);
+				   503, error_message(t, HTTP_ERR_503));
 		if (t->srv)
 			t->srv->failed_conns++;
 		t->be->beprm->failed_conns++;
@@ -587,7 +588,7 @@
 		case SN_ERR_INTERNAL:
 			tv_eternity(&t->req->cex);
 			srv_close_with_err(t, SN_ERR_INTERNAL, SN_FINST_C,
-					   500, &t->fe->errmsg[HTTP_ERR_500]);
+					   500, error_message(t, HTTP_ERR_500));
 			if (t->srv)
 				t->srv->failed_conns++;
 			t->be->beprm->failed_conns++;
@@ -647,7 +648,7 @@
 		/* note: it is guaranteed that t->srv == NULL here */
 		tv_eternity(&t->req->cex);
 		srv_close_with_err(t, SN_ERR_SRVTO, SN_FINST_C,
-				   503, &t->fe->errmsg[HTTP_ERR_503]);
+				   503, error_message(t, HTTP_ERR_503));
 		if (t->srv)
 			t->srv->failed_conns++;
 		t->be->beprm->failed_conns++;
@@ -669,7 +670,7 @@
 	default:
 		tv_eternity(&t->req->cex);
 		srv_close_with_err(t, SN_ERR_INTERNAL, SN_FINST_C,
-				   500, &t->fe->errmsg[HTTP_ERR_500]);
+				   500, error_message(t, HTTP_ERR_500));
 		if (t->srv)
 			t->srv->failed_conns++;
 		t->be->beprm->failed_conns++;