diff options
author | rwatson <rwatson@FreeBSD.org> | 2004-08-20 16:24:23 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2004-08-20 16:24:23 +0000 |
commit | 5c80f32b93dac9cdd43547e4e1b35d91c08c9065 (patch) | |
tree | 51ab935b8c8108691112b0e1ee1eb72e87c7c6d7 | |
parent | 7b98775375aecc9fff1d5f4667e28f1864b4d2ac (diff) | |
download | FreeBSD-src-5c80f32b93dac9cdd43547e4e1b35d91c08c9065.zip FreeBSD-src-5c80f32b93dac9cdd43547e4e1b35d91c08c9065.tar.gz |
Back out uipc_socket.c:1.208, as it incorrectly assumes that all
sockets are connection-oriented for the purposes of kqueue
registration. Since UDP sockets aren't connection-oriented, this
appeared to break a great many things, such as RPC-based
applications and services (i.e., NFS). Since jmg isn't around I'm
backing this out before too many more feet are shot, but intend to
investigate the right solution with him once he's available.
Apologies to: jmg
Discussed with: imp, scottl
-rw-r--r-- | sys/kern/uipc_socket.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index dc20608..9b6c423 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -2136,10 +2136,8 @@ soo_kqfilter(struct file *fp, struct knote *kn) case EVFILT_READ: if (so->so_options & SO_ACCEPTCONN) kn->kn_fop = &solisten_filtops; - else if (so->so_state & SS_ISCONNECTED) - kn->kn_fop = &soread_filtops; else - return (EINVAL); + kn->kn_fop = &soread_filtops; sb = &so->so_rcv; break; case EVFILT_WRITE: |