|
|
1.1 root 1: /*
2: * ids.c
3: *
4: * Public-domain relatively quick-and-dirty implemenation of
5: * ANSI library routine for System V Unix systems.
6: *
7: * It's written in old-style C for maximal portability.
8: *
9: * Arnold Robbins
10: * January, February, 1991
11: *
12: * Fixes from [email protected]
13: * February 1991
14: *-----------------------------------------------------------------------------
15: * $Id: ids.c,v 2.0 1992/10/16 04:52:16 markd Rel $
16: *-----------------------------------------------------------------------------
17: */
18:
19: /*
20: * To avoid Unix version problems, this code has been simplified to avoid
21: * const and size_t, however this can cause an incompatible definition on
22: * ansi-C systems, so a game is played with defines to ignore a strftime
23: * declaration in time.h
24: */
25:
26: #include <sys/types.h>
27:
28: static uid_t usrID = 100;
29: static gid_t grpID = 10;
30:
31: static int procID = 12345;
32: static int pgrpID = 10;
33:
34:
35: /* getppid --- returns the process ID of the parent process */
36:
37: int
38: getppid()
39: {
40: return procID;
41: }
42:
43: /* getpgrp --- returns the process group of the process indicated by pid */
44:
45: int
46: getpgrp(pid)
47: int pid;
48: {
49: return pgrpID;
50: }
51:
52: /* setpgrp --- sets the process group of the process indicated by pid */
53:
54: int
55: setpgrp(pid, pgrp)
56: int pid;
57: int pgrp;
58: {
59: pgrpID = pgrp;
60: return pgrp;
61: }
62:
63: /* setuid --- sets the real and effective user ID of the current process */
64:
65: int setuid(uid)
66: uid_t uid;
67: {
68: usrID = uid;
69: return 0;
70: }
71:
72: /* getgid --- gets the effective group ID of the current process */
73:
74: uid_t setgid(gid)
75: gid_t gid;
76: {
77: grpID = gid;
78: return 0;
79: }
80:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.