Xenomai 3.3.2
Loading...
Searching...
No Matches
io.h
1/*
2 * Copyright (C) 2005 Jan Kiszka <jan.kiszka@web.de>.
3 * Copyright (C) 2005 Joerg Langenberg <joerg.langenberg@gmx.net>.
4 *
5 * Xenomai is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * Xenomai is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with Xenomai; if not, write to the Free Software Foundation,
17 * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 */
19#ifndef _COBALT_POSIX_IO_H
20#define _COBALT_POSIX_IO_H
21
22#include <rtdm/rtdm.h>
23#include <xenomai/posix/syscall.h>
24#include <cobalt/kernel/select.h>
25
26int __cobalt_select(int nfds, void __user *u_rfds, void __user *u_wfds,
27 void __user *u_xfds, struct timespec64 *to, bool compat);
28
29COBALT_SYSCALL_DECL(open,
30 (const char __user *u_path, int oflag));
31
32COBALT_SYSCALL_DECL(socket,
33 (int protocol_family,
34 int socket_type, int protocol));
35
36COBALT_SYSCALL_DECL(close, (int fd));
37
38COBALT_SYSCALL_DECL(fcntl, (int fd, int cmd, long arg));
39
40COBALT_SYSCALL_DECL(ioctl,
41 (int fd, unsigned int request, void __user *arg));
42
43COBALT_SYSCALL_DECL(read,
44 (int fd, void __user *buf, size_t size));
45
46COBALT_SYSCALL_DECL(write,
47 (int fd, const void __user *buf, size_t size));
48
49COBALT_SYSCALL_DECL(recvmsg,
50 (int fd, struct user_msghdr __user *umsg, int flags));
51
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));
55
56COBALT_SYSCALL_DECL(recvmmsg64,
57 (int fd, struct mmsghdr __user *u_msgvec, unsigned int vlen,
58 unsigned int flags,
59 struct __kernel_timespec __user *u_timeout));
60
61COBALT_SYSCALL_DECL(sendmsg,
62 (int fd, struct user_msghdr __user *umsg, int flags));
63
64COBALT_SYSCALL_DECL(sendmmsg,
65 (int fd, struct mmsghdr __user *u_msgvec,
66 unsigned int vlen, unsigned int flags));
67
68COBALT_SYSCALL_DECL(mmap,
69 (int fd, struct _rtdm_mmap_request __user *u_rma,
70 void __user * __user *u_addrp));
71
72COBALT_SYSCALL_DECL(select,
73 (int nfds,
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));
78
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));
84
85#endif /* !_COBALT_POSIX_IO_H */