We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 97effc3 commit e83ce8cCopy full SHA for e83ce8c
1 file changed
examples/zcrx.c
@@ -353,6 +353,19 @@ static void return_buffer(struct io_uring_zcrx_rq *rq_ring,
353
static void process_recvzc_error(struct io_uring *ring, struct zc_conn *conn,
354
int ret)
355
{
356
+ if (ret == -ENOSPC) {
357
+ size_t left = 0;
358
+
359
+ if (cfg_size) {
360
+ left = cfg_size - received;
361
+ if (left == 0)
362
+ t_error(1, 0, "ENOSPC for a finished request");
363
+ }
364
365
+ add_recvzc(ring, connfd, left);
366
+ return;
367
368
369
if (ret != 0)
370
t_error(1, 0, "invalid final recvzc ret %i", ret);
371
if (cfg_size && conn->received != cfg_size)
0 commit comments