home *** CD-ROM | disk | FTP | other *** search
- #ifdef __TURBOC__
- #include <sys\types.h>
- #else
- #include <sys/types.h>
- #endif
- #include <unistd.h>
- #include <osbind.h>
- #include <mintbind.h>
- #include <errno.h>
-
- extern int __mint;
-
- static int __uid = 0, __gid = 0;
-
- uid_t getuid() { return __mint ? Pgetuid() : __uid; }
- gid_t getgid() { return __mint ? Pgetgid() : __gid; }
-
- uid_t geteuid()
- { return __mint >= 95 ? Pgeteuid() : getuid(); }
-
- gid_t getegid()
- { return __mint >= 95 ? Pgetegid() : getgid(); }
-
- int setuid(x)
- int x;
- {
- long r;
-
- if (__mint) {
- r = Psetuid(x);
- if (r) {
- errno = (int) -r;
- return -1;
- }
- return 0;
- }
- __uid = x;
- return 0;
- }
-
- int setgid(x)
- int x;
- {
- long r;
-
- if (__mint) {
- r = Psetgid(x);
- if (r) {
- errno = (int) -r;
- return -1;
- }
- return 0;
- }
- __gid = x;
- return 0;
- }
-
- int setreuid(ruid,euid)
- int ruid, euid;
- {
- return setuid(euid);
- }
-
- int setregid(rgid,egid)
- int rgid, egid;
- {
- return setgid(egid);
- }
-
- /* note: BSD getpgrp takes an argument, but ours doesn't */
- int getpgrp() { return __mint ? Pgetpgrp() : 0; }
-
- int setpgrp(pid, grp)
- int pid, grp;
- {
- return __mint ? Psetpgrp(pid, grp) : 0;
- }
-
- int seteuid(x) int x; { return setuid(x); }
- int setegid(x) int x; { return setgid(x); }
-