printf("0\n");
return;
}
+ SHOW_FLAG(f, CS_FL_INDEP_STR);
SHOW_FLAG(f, CS_FL_DONT_WAKE);
SHOW_FLAG(f, CS_FL_NOLINGER);
SHOW_FLAG(f, CS_FL_NOHALF);
SHOW_FLAG(f, SI_FL_WAIT_DATA);
SHOW_FLAG(f, SI_FL_ISBACK);
- SHOW_FLAG(f, SI_FL_INDEP_STR);
SHOW_FLAG(f, SI_FL_SRC_ADDR);
SHOW_FLAG(f, SI_FL_WANT_GET);
SHOW_FLAG(f, SI_FL_CLEAN_ABRT);
CS_FL_NOLINGER = 0x00000008, /* may close without lingering. One-shot. */
CS_FL_NOHALF = 0x00000010, /* no half close, close both sides at once */
CS_FL_DONT_WAKE = 0x00000020, /* resync in progress, don't wake up */
+ CS_FL_INDEP_STR = 0x00000040, /* independent streams = don't update rex on write */
};
/* cs_shutr() modes */
/* unused: 0x00000001, 0x00000002 */
SI_FL_WAIT_DATA = 0x00000008, /* stream-int waits for more outgoing data to send */
SI_FL_ISBACK = 0x00000010, /* 0 for front-side SI, 1 for back-side */
- SI_FL_INDEP_STR = 0x00000040, /* independent streams = don't update rex on write */
SI_FL_SRC_ADDR = 0x00001000, /* get the source ip/port with getsockname */
/* unused: 0x00000200 */
SI_FL_WANT_GET = 0x00004000, /* a stream-int would like to get some data from the buffer */
proxy_inc_be_ctr(be);
/* assign new parameters to the stream from the new backend */
- cs_si(s->csb)->flags &= ~SI_FL_INDEP_STR;
+ s->csb->flags &= ~CS_FL_INDEP_STR;
if (be->options2 & PR_O2_INDEPSTR)
- cs_si(s->csb)->flags |= SI_FL_INDEP_STR;
+ s->csb->flags |= CS_FL_INDEP_STR;
if (tick_isset(be->timeout.serverfin))
s->csb->hcto = be->timeout.serverfin;
s->csf->hcto = sess->fe->timeout.clientfin;
if (likely(sess->fe->options2 & PR_O2_INDEPSTR))
- cs_si(s->csf)->flags |= SI_FL_INDEP_STR;
+ s->csf->flags |= CS_FL_INDEP_STR;
cs_si(s->csb)->flags = SI_FL_ISBACK;
s->csb->hcto = TICK_ETERNITY;
if (likely(sess->fe->options2 & PR_O2_INDEPSTR))
- cs_si(s->csb)->flags |= SI_FL_INDEP_STR;
+ s->csb->flags |= CS_FL_INDEP_STR;
if (cs->endp->flags & CS_EP_WEBSOCKET)
s->flags |= SF_WEBSOCKET;
if (tick_isset(oc->wex))
oc->wex = tick_add_ifset(now_ms, oc->wto);
- if (!(si->flags & SI_FL_INDEP_STR))
+ if (!(si->cs->flags & CS_FL_INDEP_STR))
if (tick_isset(ic->rex))
ic->rex = tick_add_ifset(now_ms, ic->rto);
}
si->flags &= ~SI_FL_WAIT_DATA;
if (!tick_isset(oc->wex)) {
oc->wex = tick_add_ifset(now_ms, oc->wto);
- if (tick_isset(ic->rex) && !(si->flags & SI_FL_INDEP_STR)) {
+ if (tick_isset(ic->rex) && !(si->cs->flags & CS_FL_INDEP_STR)) {
/* Note: depending on the protocol, we don't know if we're waiting
* for incoming data or not. So in order to prevent the socket from
* expiring read timeouts during writes, we refresh the read timeout,
!channel_is_empty(oc))
oc->wex = tick_add_ifset(now_ms, oc->wto);
- if (tick_isset(ic->rex) && !(si->flags & SI_FL_INDEP_STR)) {
+ if (tick_isset(ic->rex) && !(cs->flags & CS_FL_INDEP_STR)) {
/* Note: to prevent the client from expiring read timeouts
* during writes, we refresh it. We only do this if the
* interface is not configured for "independent streams",