xref: /minix3/minix/servers/pm/table.c (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1*433d6423SLionel Sambuc /* This file contains the table used to map system call numbers onto the
2*433d6423SLionel Sambuc  * routines that perform them.
3*433d6423SLionel Sambuc  */
4*433d6423SLionel Sambuc 
5*433d6423SLionel Sambuc #define _TABLE
6*433d6423SLionel Sambuc 
7*433d6423SLionel Sambuc #include "pm.h"
8*433d6423SLionel Sambuc #include <minix/callnr.h>
9*433d6423SLionel Sambuc #include <signal.h>
10*433d6423SLionel Sambuc #include "mproc.h"
11*433d6423SLionel Sambuc 
12*433d6423SLionel Sambuc #define CALL(n)	[((n) - PM_BASE)]
13*433d6423SLionel Sambuc 
14*433d6423SLionel Sambuc int (* const call_vec[NR_PM_CALLS])(void) = {
15*433d6423SLionel Sambuc 	CALL(PM_EXIT)		= do_exit,		/* _exit(2) */
16*433d6423SLionel Sambuc 	CALL(PM_FORK)		= do_fork,		/* fork(2) */
17*433d6423SLionel Sambuc 	CALL(PM_WAITPID)	= do_waitpid,		/* waitpid(2) */
18*433d6423SLionel Sambuc 	CALL(PM_GETPID)		= do_get,		/* get[p]pid(2) */
19*433d6423SLionel Sambuc 	CALL(PM_SETUID)		= do_set,		/* setuid(2) */
20*433d6423SLionel Sambuc 	CALL(PM_GETUID)		= do_get,		/* get[e]uid(2) */
21*433d6423SLionel Sambuc 	CALL(PM_STIME)		= do_stime,		/* stime(2) */
22*433d6423SLionel Sambuc 	CALL(PM_PTRACE)		= do_trace,		/* ptrace(2) */
23*433d6423SLionel Sambuc 	CALL(PM_SETGROUPS)	= do_set,		/* setgroups(2) */
24*433d6423SLionel Sambuc 	CALL(PM_GETGROUPS)	= do_get,		/* getgroups(2) */
25*433d6423SLionel Sambuc 	CALL(PM_KILL)		= do_kill,		/* kill(2) */
26*433d6423SLionel Sambuc 	CALL(PM_SETGID)		= do_set,		/* setgid(2) */
27*433d6423SLionel Sambuc 	CALL(PM_GETGID)		= do_get,		/* get[e]gid(2) */
28*433d6423SLionel Sambuc 	CALL(PM_EXEC)		= do_exec,		/* execve(2) */
29*433d6423SLionel Sambuc 	CALL(PM_SETSID)		= do_set,		/* setsid(2) */
30*433d6423SLionel Sambuc 	CALL(PM_GETPGRP)	= do_get,		/* getpgrp(2) */
31*433d6423SLionel Sambuc 	CALL(PM_ITIMER)		= do_itimer,		/* [gs]etitimer(2) */
32*433d6423SLionel Sambuc 	CALL(PM_GETMCONTEXT)	= do_getmcontext,	/* getmcontext(2) */
33*433d6423SLionel Sambuc 	CALL(PM_SETMCONTEXT)	= do_setmcontext,	/* setmcontext(2) */
34*433d6423SLionel Sambuc 	CALL(PM_SIGACTION)	= do_sigaction,		/* sigaction(2) */
35*433d6423SLionel Sambuc 	CALL(PM_SIGSUSPEND)	= do_sigsuspend,	/* sigsuspend(2) */
36*433d6423SLionel Sambuc 	CALL(PM_SIGPENDING)	= do_sigpending,	/* sigpending(2) */
37*433d6423SLionel Sambuc 	CALL(PM_SIGPROCMASK)	= do_sigprocmask,	/* sigprocmask(2) */
38*433d6423SLionel Sambuc 	CALL(PM_SIGRETURN)	= do_sigreturn,		/* sigreturn(2) */
39*433d6423SLionel Sambuc 	CALL(PM_SYSUNAME)	= do_sysuname,		/* sysuname(2) */
40*433d6423SLionel Sambuc 	CALL(PM_GETPRIORITY)	= do_getsetpriority,	/* getpriority(2) */
41*433d6423SLionel Sambuc 	CALL(PM_SETPRIORITY)	= do_getsetpriority,	/* setpriority(2) */
42*433d6423SLionel Sambuc 	CALL(PM_GETTIMEOFDAY)	= do_time,		/* gettimeofday(2) */
43*433d6423SLionel Sambuc 	CALL(PM_SETEUID)	= do_set,		/* geteuid(2) */
44*433d6423SLionel Sambuc 	CALL(PM_SETEGID)	= do_set,		/* setegid(2) */
45*433d6423SLionel Sambuc 	CALL(PM_ISSETUGID)	= do_get,		/* issetugid */
46*433d6423SLionel Sambuc 	CALL(PM_GETSID)		= do_get,		/* getsid(2) */
47*433d6423SLionel Sambuc 	CALL(PM_CLOCK_GETRES)	= do_getres,		/* clock_getres(2) */
48*433d6423SLionel Sambuc 	CALL(PM_CLOCK_GETTIME)	= do_gettime,		/* clock_gettime(2) */
49*433d6423SLionel Sambuc 	CALL(PM_CLOCK_SETTIME)	= do_settime,		/* clock_settime(2) */
50*433d6423SLionel Sambuc 	CALL(PM_GETRUSAGE)	= do_getrusage,		/* getrusage(2) */
51*433d6423SLionel Sambuc 	CALL(PM_REBOOT)		= do_reboot,		/* reboot(2) */
52*433d6423SLionel Sambuc 	CALL(PM_SVRCTL)		= do_svrctl,		/* svrctl(2) */
53*433d6423SLionel Sambuc 	CALL(PM_SPROF)		= do_sprofile,		/* sprofile(2) */
54*433d6423SLionel Sambuc 	CALL(PM_CPROF)		= do_cprofile,		/* cprofile(2) */
55*433d6423SLionel Sambuc 	CALL(PM_SRV_FORK)	= do_srv_fork,		/* srv_fork(2) */
56*433d6423SLionel Sambuc 	CALL(PM_SRV_KILL)	= do_srv_kill,		/* srv_kill(2) */
57*433d6423SLionel Sambuc 	CALL(PM_EXEC_NEW)	= do_newexec,
58*433d6423SLionel Sambuc 	CALL(PM_EXEC_RESTART)	= do_execrestart,
59*433d6423SLionel Sambuc 	CALL(PM_GETEPINFO)	= do_getepinfo,		/* getepinfo(2) */
60*433d6423SLionel Sambuc 	CALL(PM_GETPROCNR)	= do_getprocnr,		/* getprocnr(2) */
61*433d6423SLionel Sambuc 	CALL(PM_GETSYSINFO)	= do_getsysinfo		/* getsysinfo(2) */
62*433d6423SLionel Sambuc };
63