diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-10-28 15:40:53 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-10-31 13:18:52 +0100 |
commit | 0c9f27ba24d11dc7c50b0348036074dbc6a08846 (patch) | |
tree | 81213e30d906800a1d84522611a3009838c7dafc /freebsd/sys/kern/sys_socket.c | |
parent | Use compile-time constant for vm_guest (diff) | |
download | rtems-libbsd-0c9f27ba24d11dc7c50b0348036074dbc6a08846.tar.bz2 |
Use kqueue() and kevent() from FreeBSD
Diffstat (limited to 'freebsd/sys/kern/sys_socket.c')
-rw-r--r-- | freebsd/sys/kern/sys_socket.c | 8 |
1 files changed, 7 insertions, 1 deletions
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__ */ |