HomeFreeBSD

Make sendfile(SF_SYNC)'s CV wait interruptible.

Description

Make sendfile(SF_SYNC)'s CV wait interruptible.

Otherwise, since the CV is not signalled until data is drained from the
socket, it is trivial to create an unkillable process using
sendfile(SF_SYNC) and a process-private PF_LOCAL socket pair. In
particular, the cv_wait() in sendfile() does not get interrupted until
data is drained from the receiving socket buffer.

Reported by: pho
Discussed with: kib
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation

Details

Provenance
markjAuthored on
Parents
rS360437: diff(1): don't reject specifying the same format multiple times
Branches
Unknown
Tags
Unknown