aboutsummaryrefslogtreecommitdiff
path: root/sys/compat/cloudabi/cloudabi_fd.c
diff options
context:
space:
mode:
authorEd Schouten <ed@FreeBSD.org>2015-08-05 07:37:06 +0000
committerEd Schouten <ed@FreeBSD.org>2015-08-05 07:37:06 +0000
commit4958fab8cd74f644947444102e6b51ef329407d6 (patch)
tree1466f2b1c4c23949826575fc388aa464327b192f /sys/compat/cloudabi/cloudabi_fd.c
parenta2034cc98ab0519e76b632773ee9e9d94126f42a (diff)
downloadsrc-4958fab8cd74f644947444102e6b51ef329407d6.tar.gz
src-4958fab8cd74f644947444102e6b51ef329407d6.zip
Allow the creation of polling descriptors (kqueues) on CloudABI.
Notes
Notes: svn path=/head/; revision=286310
Diffstat (limited to 'sys/compat/cloudabi/cloudabi_fd.c')
-rw-r--r--sys/compat/cloudabi/cloudabi_fd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/compat/cloudabi/cloudabi_fd.c b/sys/compat/cloudabi/cloudabi_fd.c
index d2004a9e27d1..03d65bd4e8f0 100644
--- a/sys/compat/cloudabi/cloudabi_fd.c
+++ b/sys/compat/cloudabi/cloudabi_fd.c
@@ -104,6 +104,9 @@ cloudabi_sys_fd_create1(struct thread *td,
};
switch (uap->type) {
+ case CLOUDABI_FILETYPE_POLL:
+ cap_rights_init(&fcaps.fc_rights, CAP_FSTAT, CAP_KQUEUE);
+ return (kern_kqueue(td, 0, &fcaps));
case CLOUDABI_FILETYPE_SHARED_MEMORY:
cap_rights_init(&fcaps.fc_rights, CAP_FSTAT, CAP_FTRUNCATE,
CAP_MMAP_RWX);