MINOR: mux-quic: Set abort info for SC-less QCS on STOP_SENDING frame
It is a revert of cc9827bb09
("BUG/MEDIUM: mux-quic: fix crash on
STOP_SENDING received without SD"). This fix was based on a wrong assumption
about QUIC streams that may have no stream-endpoint descriptor. However, it
must never happen. And this was fixed. So we can now safely revert the
commit above. However, it is not a bugfix because, for now, abort info are
only used by the upper layer. So it is not a big deal to not set it when
there is no SC.
This commit is contained in:
parent
086e51017e
commit
d11249f292
|
@ -1606,18 +1606,16 @@ int qcc_recv_stop_sending(struct qcc *qcc, uint64_t id, uint64_t err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qcs_sc(qcs)) {
|
/* Manually set EOS if FIN already reached as futures RESET_STREAM will be ignored in this case. */
|
||||||
/* Manually set EOS if FIN already reached as futures RESET_STREAM will be ignored in this case. */
|
if (qcs_sc(qcs) && se_fl_test(qcs->sd, SE_FL_EOI)) {
|
||||||
if (se_fl_test(qcs->sd, SE_FL_EOI)) {
|
se_fl_set(qcs->sd, SE_FL_EOS);
|
||||||
se_fl_set(qcs->sd, SE_FL_EOS);
|
qcs_alert(qcs);
|
||||||
qcs_alert(qcs);
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* If not defined yet, set abort info for the sedesc */
|
/* If not defined yet, set abort info for the sedesc */
|
||||||
if (!qcs->sd->abort_info.info) {
|
if (!qcs->sd->abort_info.info) {
|
||||||
qcs->sd->abort_info.info = (SE_ABRT_SRC_MUX_QUIC << SE_ABRT_SRC_SHIFT);
|
qcs->sd->abort_info.info = (SE_ABRT_SRC_MUX_QUIC << SE_ABRT_SRC_SHIFT);
|
||||||
qcs->sd->abort_info.code = err;
|
qcs->sd->abort_info.code = err;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* RFC 9000 3.5. Solicited State Transitions
|
/* RFC 9000 3.5. Solicited State Transitions
|
||||||
|
|
Loading…
Reference in New Issue