On Wed, 27 Oct 2021 00:22:04 +0800 Tao Zhou <tao.zhou@xxxxxxxxx> wrote: > > + do { > > + retval = read(in_fd, buffer, sizeof(buffer)); > > + if (read <= 0) > > check "retval" not read. Like: > > if (retval <= 0) OUCH! Good check. Daniel, did that not produce any warnings?? -- Steve > > > + goto out_close; > > + > > + retval = write(out_fd, buffer, retval); > > + if (retval < 0) > > + goto out_close; > > + } while (retval > 0);