It is now possible to set the error message to return to client in the HTTP
transaction. If it is defined, this error message is used instead of proxy's
errors or default errors.
enum http_meth_t meth; /* HTTP method */
/* 1 unused byte here */
short status; /* HTTP status from the server, negative if from proxy */
+ struct buffer *errmsg; /* custom HTTP error message to use as reply */
char cache_hash[20]; /* Store the cache hash */
char *uri; /* first line if log needed, NULL otherwise */
{
const int msgnum = http_get_status_idx(s->txn->status);
- if (s->be->errmsg[msgnum])
+ if (s->txn && s->txn->errmsg)
+ return s->txn->errmsg;
+ else if (s->be->errmsg[msgnum])
return s->be->errmsg[msgnum];
else if (strm_fe(s)->errmsg[msgnum])
return strm_fe(s)->errmsg[msgnum];
? (TX_NOT_FIRST|TX_WAIT_NEXT_RQ)
: 0);
txn->status = -1;
+ txn->errmsg = NULL;
*(unsigned int *)txn->cache_hash = 0;
txn->cookie_first_date = 0;