From 0c9f27ba24d11dc7c50b0348036074dbc6a08846 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 28 Oct 2013 15:40:53 +0100 Subject: Use kqueue() and kevent() from FreeBSD --- freebsd/sys/kern/sys_socket.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'freebsd/sys/kern/sys_socket.c') diff --git a/freebsd/sys/kern/sys_socket.c b/freebsd/sys/kern/sys_socket.c index 19633aeb..6bb4416e 100644 --- a/freebsd/sys/kern/sys_socket.c +++ b/freebsd/sys/kern/sys_socket.c @@ -440,6 +440,11 @@ soo_close(struct file *fp, struct thread *td) int error = 0; struct socket *so; +#ifdef __rtems__ + /* FIXME: Move this to the RTEMS close() function */ + knote_fdclose(td, rtems_bsd_fp_to_fd(fp)); +#endif /* __rtems__ */ + so = fp->f_data; #ifndef __rtems__ fp->f_ops = &badfileops; @@ -474,6 +479,7 @@ const rtems_filesystem_file_handlers_r socketops = { .fsync_h = rtems_filesystem_default_fsync_or_fdatasync, .fdatasync_h = rtems_filesystem_default_fsync_or_fdatasync, .fcntl_h = rtems_filesystem_default_fcntl, - .poll_h = rtems_bsd_soo_poll + .poll_h = rtems_bsd_soo_poll, + .kqfilter_h = rtems_bsd_soo_kqfilter }; #endif /* __rtems__ */ -- cgit v1.2.3