File: setegid.c

package info (click to toggle)
opie 2.32-10.2
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k, lenny
  • size: 928 kB
  • ctags: 729
  • sloc: ansic: 10,116; yacc: 1,071; makefile: 202; sh: 163
file content (28 lines) | stat: -rw-r--r-- 759 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* setegid.c: A replacement for the setegid function

%%% copyright-cmetz-97
This software is Copyright 1998 by Craig Metz, All Rights Reserved.
The Inner Net License Version 2 applies to this software.
You should have received a copy of the license with this software. If
you didn't get a copy, you may request one from <license@inner.net>.

        History:

	Created by cmetz for OPIE 2.31.
*/
#include "opie_cfg.h"
#include <sys/types.h>
#include "opie.h"

int setegid FUNCTION((egid), uid_t egid)
{
#if HAVE_SETREGID
  return setregid(-1, egid);
#else /* HAVE_SETREGID */
#if HAVE_SETRESGID
  return setresgid(-1, egid, -1);
#else /* HAVE_SETRESGID */
#error Cannot build a setegid() replacement.
#endif /* HAVE_SETRESGID */
#endif /* HAVE_SETREGID */
}