aboutsummaryrefslogblamecommitdiff
path: root/sys/compat/cloudabi64/syscalls.master
blob: 5fd6f7eb3dfb9a3138dacd541c13b8474d65fc93 (plain) (tree)






















                                                                          
                                                                  












































































































                                                                               
                                                                
                                                                   























                                                                          
                                                                              
                                                                  
                                                                     













































                                                                                
                                                                
                                                                   
                                                                                
                                                                     







                                                                                    
 $FreeBSD$

; System call table for CloudABI.
;
; All system calls that do not use any machine-dependent data types are
; prefixed with cloudabi_sys_. The others are called cloudabi64_sys_.

#include <sys/sysent.h>
#include <sys/sysproto.h>

#include <compat/cloudabi64/cloudabi64_syscalldefs.h>
#include <compat/cloudabi64/cloudabi64_proto.h>

0	AUE_NULL	STD	{ cloudabi_timestamp_t \
					cloudabi_sys_clock_res_get( \
					cloudabi_clockid_t clock_id); }
1	AUE_NULL	STD	{ cloudabi_timestamp_t \
					cloudabi_sys_clock_time_get( \
					cloudabi_clockid_t clock_id, \
					cloudabi_timestamp_t precision); }

2	AUE_NULL	STD	{ void cloudabi_sys_condvar_signal( \
					cloudabi_condvar_t *condvar, \
					cloudabi_mflags_t scope, \
					cloudabi_nthreads_t nwaiters); }

3	AUE_NULL	STD	{ void cloudabi_sys_fd_close( \
					cloudabi_fd_t fd); }
4	AUE_NULL	STD	{ cloudabi_fd_t cloudabi_sys_fd_create1( \
					cloudabi_filetype_t type); }
5	AUE_NULL	STD	{ void cloudabi_sys_fd_create2( \
					cloudabi_filetype_t type); }
6	AUE_NULL	STD	{ void cloudabi_sys_fd_datasync( \
					cloudabi_fd_t fd); }
7	AUE_NULL	STD	{ cloudabi_fd_t cloudabi_sys_fd_dup( \
					cloudabi_fd_t from); }
8	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_fd_pread( \
					cloudabi_fd_t fd, \
					const cloudabi64_iovec_t *iov, \
					cloudabi64_size_t iovcnt, \
					cloudabi_filesize_t offset); }
9	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_fd_pwrite( \
					cloudabi_fd_t fd, \
					const cloudabi64_ciovec_t *iov, \
					cloudabi64_size_t iovcnt, \
					cloudabi_filesize_t offset); }
10	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_fd_read( \
					cloudabi_fd_t fd, \
					const cloudabi64_iovec_t *iov, \
					cloudabi64_size_t iovcnt); }
11	AUE_NULL	STD	{ void cloudabi_sys_fd_replace( \
					cloudabi_fd_t from, \
					cloudabi_fd_t to); }
12	AUE_NULL	STD	{ cloudabi_filesize_t cloudabi_sys_fd_seek( \
					cloudabi_fd_t fd, \
					cloudabi_filedelta_t offset, \
					cloudabi_whence_t whence); }
13	AUE_NULL	STD	{ void cloudabi_sys_fd_stat_get( \
					cloudabi_fd_t fd, \
					cloudabi_fdstat_t *buf); }
14	AUE_NULL	STD	{ void cloudabi_sys_fd_stat_put( \
					cloudabi_fd_t fd, \
					const cloudabi_fdstat_t *buf, \
					cloudabi_fdsflags_t flags); }
15	AUE_NULL	STD	{ void cloudabi_sys_fd_sync( \
					cloudabi_fd_t fd); }
16	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_fd_write( \
					cloudabi_fd_t fd, \
					const cloudabi64_ciovec_t *iov, \
					cloudabi64_size_t iovcnt); }

17	AUE_NULL	STD	{ void cloudabi_sys_file_advise( \
					cloudabi_fd_t fd, \
					cloudabi_filesize_t offset, \
					cloudabi_filesize_t len, \
					cloudabi_advice_t advice); }
18	AUE_NULL	STD	{ void cloudabi_sys_file_allocate( \
					cloudabi_fd_t fd, \
					cloudabi_filesize_t offset, \
					cloudabi_filesize_t len); }
19	AUE_NULL	STD	{ void cloudabi_sys_file_create( \
					cloudabi_fd_t fd, \
					const char *path, size_t pathlen, \
					cloudabi_filetype_t type); }
20	AUE_NULL	STD	{ void cloudabi_sys_file_link( \
					cloudabi_lookup_t fd1, \
					const char *path1, size_t path1len, \
					cloudabi_fd_t fd2, \
					const char *path2, size_t path2len); }
21	AUE_NULL	STD	{ cloudabi_fd_t cloudabi_sys_file_open( \
					cloudabi_lookup_t fd, \
					const char *path, size_t pathlen, \
					cloudabi_oflags_t oflags, \
					const cloudabi_fdstat_t *fds); }
22	AUE_NULL	STD	{ size_t cloudabi_sys_file_readdir( \
					cloudabi_fd_t fd, \
					void *buf, size_t nbyte, \
					cloudabi_dircookie_t cookie); }
23	AUE_NULL	STD	{ size_t cloudabi_sys_file_readlink( \
					cloudabi_fd_t fd, \
					const char *path, size_t pathlen, \
					void *buf, size_t bufsize); }
24	AUE_NULL	STD	{ void cloudabi_sys_file_rename( \
					cloudabi_fd_t oldfd, \
					const char *old, size_t oldlen, \
					cloudabi_fd_t newfd, \
					const char *new, size_t newlen); }
25	AUE_NULL	STD	{ void cloudabi_sys_file_stat_fget( \
					cloudabi_fd_t fd, \
					cloudabi_filestat_t *buf); }
26	AUE_NULL	STD	{ void cloudabi_sys_file_stat_fput( \
					cloudabi_fd_t fd, \
					const cloudabi_filestat_t *buf, \
					cloudabi_fsflags_t flags); }
27	AUE_NULL	STD	{ void cloudabi_sys_file_stat_get( \
					cloudabi_lookup_t fd, \
					const char *path, size_t pathlen, \
					cloudabi_filestat_t *buf); }
28	AUE_NULL	STD	{ void cloudabi_sys_file_stat_put( \
					cloudabi_lookup_t fd, \
					const char *path, size_t pathlen, \
					const cloudabi_filestat_t *buf, \
					cloudabi_fsflags_t flags); }
29	AUE_NULL	STD	{ void cloudabi_sys_file_symlink( \
					const char *path1, size_t path1len, \
					cloudabi_fd_t fd, \
					const char *path2, size_t path2len); }
30	AUE_NULL	STD	{ void cloudabi_sys_file_unlink( \
					cloudabi_fd_t fd, \
					const char *path, size_t pathlen, \
					cloudabi_ulflags_t flag); }

31	AUE_NULL	STD	{ void cloudabi_sys_lock_unlock( \
					cloudabi_lock_t *lock, \
					cloudabi_mflags_t scope); }

32	AUE_NULL	STD	{ void cloudabi_sys_mem_advise( \
					void *addr, size_t len, \
					cloudabi_advice_t advice); }
33	AUE_NULL	STD	{ void cloudabi_sys_mem_lock( \
					const void *addr, size_t len); }
34	AUE_NULL	STD	{ void cloudabi_sys_mem_map( \
					void *addr, size_t len, \
					cloudabi_mprot_t prot, \
					cloudabi_mflags_t flags, \
					cloudabi_fd_t fd, \
					cloudabi_filesize_t off); }
35	AUE_NULL	STD	{ void cloudabi_sys_mem_protect( \
					void *addr, size_t len, \
					cloudabi_mprot_t prot); }
36	AUE_NULL	STD	{ void cloudabi_sys_mem_sync( \
					void *addr, size_t len, \
					cloudabi_msflags_t flags); }
37	AUE_NULL	STD	{ void cloudabi_sys_mem_unlock( \
					const void *addr, size_t len); }
38	AUE_NULL	STD	{ void cloudabi_sys_mem_unmap( \
					void * addr, size_t len); }

39	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_poll( \
					const cloudabi64_subscription_t *in, \
					cloudabi64_event_t *out, \
					cloudabi64_size_t nevents); }

40	AUE_NULL	STD	{ void cloudabi_sys_proc_exec( \
					cloudabi_fd_t fd, const void *data, \
					size_t datalen, \
					const cloudabi_fd_t *fds, \
					size_t fdslen); }
41	AUE_NULL	STD	{ void cloudabi_sys_proc_exit( \
					cloudabi_exitcode_t rval); }
42	AUE_NULL	STD	{ cloudabi_fd_t cloudabi_sys_proc_fork(); }
43	AUE_NULL	STD	{ void cloudabi_sys_proc_raise( \
					cloudabi_signal_t sig); }

44	AUE_NULL	STD	{ void cloudabi_sys_random_get( \
					void *buf, size_t nbyte); }

45	AUE_NULL	STD	{ cloudabi_fd_t cloudabi_sys_sock_accept( \
					cloudabi_fd_t s, \
					cloudabi_sockstat_t *buf); }
46	AUE_NULL	STD	{ void cloudabi_sys_sock_bind( \
					cloudabi_fd_t s, cloudabi_fd_t fd, \
					const char *path, size_t pathlen); }
47	AUE_NULL	STD	{ void cloudabi_sys_sock_connect( \
					cloudabi_fd_t s, cloudabi_fd_t fd, \
					const char *path, size_t pathlen); }
48	AUE_NULL	STD	{ void cloudabi_sys_sock_listen( \
					cloudabi_fd_t s, \
					cloudabi_backlog_t backlog); }
49	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_sock_recv( \
					cloudabi_fd_t s, \
					const cloudabi64_recv_in_t *in, \
					cloudabi64_recv_out_t *out); }
50	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_sock_send( \
					cloudabi_fd_t s, \
					const cloudabi64_send_in_t *in, \
					cloudabi64_send_out_t *out); }
51	AUE_NULL	STD	{ void cloudabi_sys_sock_shutdown( \
					cloudabi_fd_t fd, \
					cloudabi_sdflags_t how); }
52	AUE_NULL	STD	{ void cloudabi_sys_sock_stat_get( \
					cloudabi_fd_t fd, \
					cloudabi_sockstat_t *buf, \
					cloudabi_ssflags_t flags); }

53	AUE_NULL	STD	{ cloudabi_tid_t cloudabi64_sys_thread_create( \
					cloudabi64_threadattr_t *attr); }
54	AUE_NULL	STD	{ void cloudabi_sys_thread_exit( \
					cloudabi_lock_t *lock, \
					cloudabi_mflags_t scope); }
55	AUE_NULL	STD	{ void cloudabi_sys_thread_tcb_set(void *tcb); }
56	AUE_NULL	STD	{ void cloudabi_sys_thread_yield(); }

57	AUE_NULL	STD	{ cloudabi64_size_t cloudabi64_sys_poll_fd( \
					cloudabi_fd_t fd, \
					const cloudabi64_subscription_t *in, \
					cloudabi64_size_t nin, \
					cloudabi64_event_t *out, \
					cloudabi64_size_t nout, \
					const cloudabi64_subscription_t *timeout); }