From: Sylvestre Gallon Date: Wed, 24 Mar 2010 11:54:52 +0000 (+0100) Subject: Allow kernel to be compile without SYSV[SHM|MSG|SEM] X-Git-Url: https://gitweb.dragonflybsd.org/~syl/dragonfly.git/commitdiff_plain/cd10cbafe2ddb950de80e71c11c7aa7edd0e464d?hp=159758cdac0aa3f8db8549f9c7d58a76a7d79f13 Allow kernel to be compile without SYSV[SHM|MSG|SEM] --- diff --git a/sys/kern/sysv_ipc.c b/sys/kern/sysv_ipc.c index 7648f93094..203d0823dd 100644 --- a/sys/kern/sysv_ipc.c +++ b/sys/kern/sysv_ipc.c @@ -40,6 +40,13 @@ #include #include +#define SYSCALL_NOT_PRESENT_GEN(SC, str) \ +int sys_##SC (struct SC##_args *uap) \ +{ \ + sysv_nosys(str); \ + return sys_nosys((struct nosys_args *)uap); \ +} + #if defined(SYSVSEM) || defined(SYSVSHM) || defined(SYSVMSG) /* @@ -100,33 +107,10 @@ sysv_nosys(char *s) * SYSVSEM stubs */ -int -semsys(struct semsys_args *uap) -{ - sysv_nosys("SYSVSEM"); - return nosys((struct nosys_args *)uap); -}; - -int -__semctl(struct __semctl_args *uap) -{ - sysv_nosys("SYSVSEM"); - return nosys((struct nosys_args *)uap); -}; - -int -semget(struct semget_args *uap) -{ - sysv_nosys("SYSVSEM"); - return nosys((struct nosys_args *)uap); -}; - -int -semop(struct semop_args *uap) -{ - sysv_nosys("SYSVSEM"); - return nosys((struct nosys_args *)uap); -}; +SYSCALL_NOT_PRESENT_GEN(semsys, "SYSVSEM"); +SYSCALL_NOT_PRESENT_GEN(__semctl, "SYSVSEM"); +SYSCALL_NOT_PRESENT_GEN(semget, "SYSVSEM"); +SYSCALL_NOT_PRESENT_GEN(semop, "SYSVSEM"); /* called from kern_exit.c */ void @@ -146,40 +130,11 @@ semexit(struct proc *p) * note: msgsys args actually var-args? YYYY */ -int -msgsys(struct msgsys_args *uap) -{ - sysv_nosys("SYSVMSG"); - return nosys((struct nosys_args *)uap); -}; - -int -msgctl(struct msgctl_args *uap) -{ - sysv_nosys("SYSVMSG"); - return nosys((struct nosys_args *)uap); -}; - -int -msgget(struct msgget_args *uap) -{ - sysv_nosys("SYSVMSG"); - return nosys((struct nosys_args *)uap); -}; - -int -msgsnd(struct msgsnd_args *uap) -{ - sysv_nosys("SYSVMSG"); - return nosys((struct nosys_args *)uap); -}; - -int -msgrcv(struct msgrcv_args *uap) -{ - sysv_nosys("SYSVMSG"); - return nosys((struct nosys_args *)uap); -}; +SYSCALL_NOT_PRESENT_GEN(msgsys, "SYSVMSG"); +SYSCALL_NOT_PRESENT_GEN(msgctl, "SYSVMSG"); +SYSCALL_NOT_PRESENT_GEN(msgget, "SYSVMSG"); +SYSCALL_NOT_PRESENT_GEN(msgsnd, "SYSVMSG"); +SYSCALL_NOT_PRESENT_GEN(msgrcv, "SYSVMSG"); #endif /* !defined(SYSVMSG) */ @@ -190,41 +145,11 @@ msgrcv(struct msgrcv_args *uap) * SYSVSHM stubs */ -int -shmdt(struct shmdt_args *uap) -{ - sysv_nosys("SYSVSHM"); - return nosys((struct nosys_args *)uap); -}; - -int -shmat(struct shmat_args *uap) -{ - sysv_nosys("SYSVSHM"); - return nosys((struct nosys_args *)uap); -}; - -int -shmctl(struct shmctl_args *uap) -{ - sysv_nosys("SYSVSHM"); - return nosys((struct nosys_args *)uap); -}; - -int -shmget(struct shmget_args *uap) -{ - sysv_nosys("SYSVSHM"); - return nosys((struct nosys_args *)uap); -}; - -/* XXX actually varargs. */ -int -shmsys(struct shmsys_args *uap) -{ - sysv_nosys("SYSVSHM"); - return nosys((struct nosys_args *)uap); -}; +SYSCALL_NOT_PRESENT_GEN(shmdt, "SYSVSHM"); +SYSCALL_NOT_PRESENT_GEN(shmat, "SYSVSHM"); +SYSCALL_NOT_PRESENT_GEN(shmctl, "SYSVSHM"); +SYSCALL_NOT_PRESENT_GEN(shmget, "SYSVSHM"); +SYSCALL_NOT_PRESENT_GEN(shmsys, "SYSVSHM"); /* called from kern_fork.c */ void