summaryrefslogtreecommitdiffstats
path: root/sys/compat
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2010-03-19 11:10:24 +0000
committerkib <kib@FreeBSD.org>2010-03-19 11:10:24 +0000
commit06319cba031100f85cac9068d9e4bd85dc27bbd6 (patch)
tree0e4ecafd4583d7b459b3e3b5ab24255261bda2d7 /sys/compat
parent34d2655cb1e162c177a2b7b282f0b71ec22840ff (diff)
downloadFreeBSD-src-06319cba031100f85cac9068d9e4bd85dc27bbd6.zip
FreeBSD-src-06319cba031100f85cac9068d9e4bd85dc27bbd6.tar.gz
Implement compat32 shims for mqueuefs.
Reviewed by: jhb MFC after: 2 weeks
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/freebsd32/freebsd32.h8
-rw-r--r--sys/compat/freebsd32/syscalls.master23
2 files changed, 25 insertions, 6 deletions
diff --git a/sys/compat/freebsd32/freebsd32.h b/sys/compat/freebsd32/freebsd32.h
index 058ac72..b68f8fb 100644
--- a/sys/compat/freebsd32/freebsd32.h
+++ b/sys/compat/freebsd32/freebsd32.h
@@ -221,4 +221,12 @@ struct prpsinfo32 {
char pr_psargs[PRARGSZ+1];
};
+struct mq_attr32 {
+ int mq_flags;
+ int mq_maxmsg;
+ int mq_msgsize;
+ int mq_curmsgs;
+ int __reserved[4];
+};
+
#endif /* !_COMPAT_FREEBSD32_FREEBSD32_H_ */
diff --git a/sys/compat/freebsd32/syscalls.master b/sys/compat/freebsd32/syscalls.master
index 584ffe5..1afe586 100644
--- a/sys/compat/freebsd32/syscalls.master
+++ b/sys/compat/freebsd32/syscalls.master
@@ -797,12 +797,23 @@
int param_size); }
456 AUE_NULL NOPROTO { int sigqueue(pid_t pid, int signum, \
void *value); }
-457 AUE_NULL UNIMPL kmq_open
-458 AUE_NULL UNIMPL kmq_setattr
-459 AUE_NULL UNIMPL kmq_timedreceive
-460 AUE_NULL UNIMPL kmq_timedsend
-461 AUE_NULL UNIMPL kmq_notify
-462 AUE_NULL UNIMPL kmq_unlink
+457 AUE_NULL NOSTD { int freebsd32_kmq_open( \
+ const char *path, int flags, mode_t mode, \
+ const struct mq_attr32 *attr); }
+458 AUE_NULL NOSTD { int freebsd32_kmq_setattr(int mqd, \
+ const struct mq_attr32 *attr, \
+ struct mq_attr32 *oattr); }
+459 AUE_NULL NOSTD { int freebsd32_kmq_timedreceive(int mqd, \
+ char *msg_ptr, size_t msg_len, \
+ unsigned *msg_prio, \
+ const struct timespec32 *abs_timeout); }
+460 AUE_NULL NOSTD { int freebsd32_kmq_timedsend(int mqd, \
+ const char *msg_ptr, size_t msg_len,\
+ unsigned msg_prio, \
+ const struct timespec32 *abs_timeout);}
+461 AUE_NULL NOPROTO|NOSTD { int kmq_notify(int mqd, \
+ const struct sigevent *sigev); }
+462 AUE_NULL NOPROTO|NOSTD { int kmq_unlink(const char *path); }
463 AUE_NULL NOPROTO { int abort2(const char *why, int nargs, void **args); }
464 AUE_NULL NOPROTO { int thr_set_name(long id, const char *name); }
465 AUE_NULL NOSTD { int freebsd32_aio_fsync(int op, \
OpenPOWER on IntegriCloud