mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-15 16:04:37 +00:00
[MINOR] session: switch to established state if no connect function
When a stream interface has no connect() function, it means it is immediately connected, so we don't need any connection request. This will be used with unix sockets.
This commit is contained in:
parent
6e6fb2beb9
commit
7320122655
@ -1005,8 +1005,15 @@ resync_stream_interface:
|
||||
/* it's possible that an upper layer has requested a connection setup or abort */
|
||||
if (s->req->cons->state == SI_ST_INI &&
|
||||
(s->req->flags & (BF_WRITE_ENA|BF_SHUTW|BF_SHUTW_NOW))) {
|
||||
if ((s->req->flags & (BF_WRITE_ENA|BF_SHUTW|BF_SHUTW_NOW)) == BF_WRITE_ENA)
|
||||
s->req->cons->state = SI_ST_REQ; /* new connection requested */
|
||||
if ((s->req->flags & (BF_WRITE_ENA|BF_SHUTW|BF_SHUTW_NOW)) == BF_WRITE_ENA) {
|
||||
/* If we have a ->connect method, we need to perform a connection request,
|
||||
* otherwise we immediately switch to the connected state.
|
||||
*/
|
||||
if (s->req->cons->connect)
|
||||
s->req->cons->state = SI_ST_REQ; /* new connection requested */
|
||||
else
|
||||
s->req->cons->state = SI_ST_EST; /* connection established */
|
||||
}
|
||||
else
|
||||
s->req->cons->state = SI_ST_CLO; /* shutw+ini = abort */
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user