--- sys/kern/uipc_syscalls.c.orig +++ sys/kern/uipc_syscalls.c @@ -1607,8 +1607,10 @@ fd = *fds++; error = fget(td, fd, &cap_no_rights, &fp); - if (error == 0) + if (error == 0) { fdclose(td, fp, fd); + fdrop(fp, td); + } } } clen -= datalen;