If QCS Tx buffer cannot be allocated in nego_ff callback, disable
fast-forward for this connection and return immediately. If snd_buf is
later finally used but still no buffer can being allocated, the
connection will be closed on error.
This should fix coverity reported in github issue #2390.
This should be backported up to 2.9.
h3_debug_printf(stderr, "%s\n", __func__);
if (!(res = qcc_get_stream_txbuf(qcs))) {
- /* TODO */
+ qcs->sd->iobuf.flags |= IOBUF_FL_NO_FF;
+ goto end;
}
/* h3 DATA headers : 1-byte frame type + varint frame length */