19#ifndef _COBALT_POSIX_IO_H
20#define _COBALT_POSIX_IO_H
23#include <xenomai/posix/syscall.h>
24#include <cobalt/kernel/select.h>
26int __cobalt_select(
int nfds,
void __user *u_rfds,
void __user *u_wfds,
27 void __user *u_xfds,
struct timespec64 *to,
bool compat);
29COBALT_SYSCALL_DECL(open,
30 (
const char __user *u_path,
int oflag));
32COBALT_SYSCALL_DECL(socket,
34 int socket_type,
int protocol));
36COBALT_SYSCALL_DECL(close, (
int fd));
38COBALT_SYSCALL_DECL(fcntl, (
int fd,
int cmd,
long arg));
40COBALT_SYSCALL_DECL(ioctl,
41 (
int fd,
unsigned int request,
void __user *arg));
43COBALT_SYSCALL_DECL(read,
44 (
int fd,
void __user *buf,
size_t size));
46COBALT_SYSCALL_DECL(write,
47 (
int fd,
const void __user *buf,
size_t size));
49COBALT_SYSCALL_DECL(recvmsg,
50 (
int fd,
struct user_msghdr __user *umsg,
int flags));
52COBALT_SYSCALL_DECL(recvmmsg,
53 (
int fd,
struct mmsghdr __user *u_msgvec,
unsigned int vlen,
54 unsigned int flags,
struct __kernel_old_timespec __user *u_timeout));
56COBALT_SYSCALL_DECL(recvmmsg64,
57 (
int fd,
struct mmsghdr __user *u_msgvec,
unsigned int vlen,
59 struct __kernel_timespec __user *u_timeout));
61COBALT_SYSCALL_DECL(sendmsg,
62 (
int fd,
struct user_msghdr __user *umsg,
int flags));
64COBALT_SYSCALL_DECL(sendmmsg,
65 (
int fd,
struct mmsghdr __user *u_msgvec,
66 unsigned int vlen,
unsigned int flags));
68COBALT_SYSCALL_DECL(mmap,
69 (
int fd,
struct _rtdm_mmap_request __user *u_rma,
70 void __user * __user *u_addrp));
72COBALT_SYSCALL_DECL(select,
74 fd_set __user *u_rfds,
75 fd_set __user *u_wfds,
76 fd_set __user *u_xfds,
77 struct __kernel_old_timeval __user *u_tv));
79COBALT_SYSCALL_DECL(pselect64, (
int nfds,
80 fd_set __user *u_rfds,
81 fd_set __user *u_wfds,
82 fd_set __user *u_xfds,
83 struct __kernel_timespec __user *u_tv));