OSDN Git Service

hidden_def/hidden_proto: convert all users (I hope) termios split, add some missing...
[uclinux-h8/uClibc.git] / libc / sysdeps / linux / common / setregid.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * setregid() for uClibc
4  *
5  * Copyright (C) 2000-2004 by Erik Andersen <andersen@codepoet.org>
6  *
7  * GNU Library General Public License (LGPL) version 2 or later.
8  */
9
10 #include "syscalls.h"
11 #include <unistd.h>
12
13 #define __NR___syscall_setregid __NR_setregid
14 static inline _syscall2(int, __syscall_setregid,
15                 __kernel_gid_t, rgid, __kernel_gid_t, egid);
16
17 int setregid(gid_t rgid, gid_t egid)
18 {
19         if (((rgid + 1) > (gid_t) ((__kernel_gid_t) - 1U))
20                 || ((egid + 1) > (gid_t) ((__kernel_gid_t) - 1U))) {
21                 __set_errno(EINVAL);
22                 return -1;
23         }
24         return (__syscall_setregid(rgid, egid));
25 }
26 libc_hidden_proto(setregid)