summaryrefslogtreecommitdiffstats
path: root/sys/compat/freebsd32/freebsd32_capability.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/compat/freebsd32/freebsd32_capability.c')
-rw-r--r--sys/compat/freebsd32/freebsd32_capability.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/sys/compat/freebsd32/freebsd32_capability.c b/sys/compat/freebsd32/freebsd32_capability.c
index 078d949..e17c394 100644
--- a/sys/compat/freebsd32/freebsd32_capability.c
+++ b/sys/compat/freebsd32/freebsd32_capability.c
@@ -38,9 +38,11 @@ __FBSDID("$FreeBSD$");
#include <sys/malloc.h>
#include <sys/proc.h>
#include <sys/syscallsubr.h>
+#include <sys/sysproto.h>
#include <security/audit/audit.h>
+#include <compat/freebsd32/freebsd32_misc.h>
#include <compat/freebsd32/freebsd32_proto.h>
#ifdef CAPABILITIES
@@ -48,6 +50,17 @@ __FBSDID("$FreeBSD$");
MALLOC_DECLARE(M_FILECAPS);
int
+freebsd32_cap_rights_limit(struct thread *td,
+ struct freebsd32_cap_rights_limit_args *uap)
+{
+ struct cap_rights_limit_args ap;
+
+ ap.fd = uap->fd;
+ ap.rights = PAIR32TO64(uint64_t, uap->rights);
+ return (sys_cap_rights_limit(td, &ap));
+}
+
+int
freebsd32_cap_ioctls_limit(struct thread *td,
struct freebsd32_cap_ioctls_limit_args *uap)
{
@@ -135,6 +148,14 @@ out:
#else /* !CAPABILITIES */
int
+freebsd32_cap_rights_limit(struct thread *td,
+ struct freebsd32_cap_rights_limit_args *uap)
+{
+
+ return (ENOSYS);
+}
+
+int
freebsd32_cap_ioctls_limit(struct thread *td,
struct freebsd32_cap_ioctls_limit_args *uap)
{
OpenPOWER on IntegriCloud