CLEANUP: mux-quic: remove useless app_ops is_active callback

Timeout in QUIC MUX has evolved from the simple first implementation. At
the beginning, a connection was considered dead unless bidirectional
streams were opened. This was abstracted through an app callback
is_active().

Now this paradigm has been reversed and a connection is considered alive
by default, unless an error has been reported or a timeout has already
been fired. The callback is_active() is thus not used anymore and can be
safely removed to simplify qcc_is_dead().

This commit should be backported to 2.6.
This commit is contained in:
Amaury Denoyelle 2022-08-01 11:42:48 +02:00
parent d3973853c2
commit 4ea5090f55
4 changed files with 0 additions and 27 deletions

View File

@ -176,7 +176,6 @@ struct qcc_app_ops {
size_t (*snd_buf)(struct stconn *sc, struct buffer *buf, size_t count, int flags);
void (*detach)(struct qcs *qcs);
int (*finalize)(void *ctx);
int (*is_active)(const struct qcc *qcc, void *ctx);
void (*release)(void *ctx);
void (*inc_err_cnt)(void *ctx, int err_code);
};

View File

@ -1192,18 +1192,6 @@ static void h3_release(void *ctx)
pool_free(pool_head_h3c, h3c);
}
/* Check if the H3 connection can still be considered as active.
*
* Return true if active else false.
*/
static int h3_is_active(const struct qcc *qcc, void *ctx)
{
if (qcc->strms[QCS_CLT_BIDI].nb_streams)
return 1;
return 0;
}
/* Increment the h3 error code counters for <error_code> value */
static void h3_stats_inc_err_cnt(void *ctx, int err_code)
{
@ -1238,7 +1226,6 @@ const struct qcc_app_ops h3_ops = {
.snd_buf = h3_snd_buf,
.detach = h3_detach,
.finalize = h3_finalize,
.is_active = h3_is_active,
.release = h3_release,
.inc_err_cnt = h3_stats_inc_err_cnt,
};

View File

@ -164,16 +164,7 @@ static size_t hq_interop_snd_buf(struct stconn *sc, struct buffer *buf,
return total;
}
static int hq_is_active(const struct qcc *qcc, void *ctx)
{
if (!eb_is_empty(&qcc->streams_by_id))
return 1;
return 0;
}
const struct qcc_app_ops hq_interop_ops = {
.decode_qcs = hq_interop_decode_qcs,
.snd_buf = hq_interop_snd_buf,
.is_active = hq_is_active,
};

View File

@ -1001,10 +1001,6 @@ static void qcs_destroy(struct qcs *qcs)
static inline int qcc_is_dead(const struct qcc *qcc)
{
if (qcc->app_ops && qcc->app_ops->is_active &&
qcc->app_ops->is_active(qcc, qcc->ctx))
return 0;
if ((qcc->conn->flags & CO_FL_ERROR) || !qcc->task)
return 1;