diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 13:09:56 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 13:09:56 +0300 |
commit | bc70de7b3302d5a81515b901cae376b8b51d2004 (patch) | |
tree | d36d6743e65697f6923b79d0ea8f9f9bf4ef7398 /unsupported/tandem/getid.c | |
parent | b9e4a1fd4c8c8753ab8a9887bab55f03efe1e3e2 (diff) | |
download | egawk-bc70de7b3302d5a81515b901cae376b8b51d2004.tar.gz egawk-bc70de7b3302d5a81515b901cae376b8b51d2004.tar.bz2 egawk-bc70de7b3302d5a81515b901cae376b8b51d2004.zip |
Move to gawk-3.1.0.
Diffstat (limited to 'unsupported/tandem/getid.c')
-rw-r--r-- | unsupported/tandem/getid.c | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/unsupported/tandem/getid.c b/unsupported/tandem/getid.c new file mode 100644 index 00000000..f933ac62 --- /dev/null +++ b/unsupported/tandem/getid.c @@ -0,0 +1,120 @@ +#if defined _MSC_VER || defined TANDEM + +#ifndef TANDEM +#ifdef OS2 +# define INCL_DOSPROCESS +# include <os2.h> +# if _MSC_VER == 510 +# define DosGetPID DosGetPid +# endif +#else +# include <process.h> +#endif + +#ifdef OS2 +int getpid(void) +{ + PIDINFO PidInfo; + + DosGetPID(&PidInfo); + return(PidInfo.pid); +} +#endif + +int getppid(void) +{ +#ifdef OS2 + PIDINFO PidInfo; + + DosGetPID(&PidInfo); + return(PidInfo.pidParent); +#else + return(0); +#endif +} + +#endif /* TANDEM */ +#ifdef TANDEM +unsigned int getuid (void) +{ + short cret; + short cwd,pwd; + + cret = PROCESS_GETINFO_(,,,,,,,,,,&cwd,&pwd); + return ((unsigned int) (cwd & 255)); +} + +unsigned int geteuid (void) +{ + short cret; + short cwd,pwd; + + cret = PROCESS_GETINFO_(,,,,,,,,,,&cwd,&pwd); + return ((unsigned int) (pwd & 255)); +} + +unsigned int getgid (void) +{ + short cret; + short cwd,pwd; + + cret = PROCESS_GETINFO_(,,,,,,,,,,&cwd,&pwd); + return ((unsigned int) ((cwd >> 8) & 255)); +} + +unsigned int getegid (void) +{ + short cret; + short cwd,pwd; + + cret = PROCESS_GETINFO_(,,,,,,,,,,&cwd,&pwd); + return ((unsigned int) ((pwd >> 8) & 255)); +} + +int getpid(void) +{ + return (0); +} + +int getppid(void) +{ + return (0); +} + +#else +unsigned int getuid (void) +{ + return (0); /* root! */ +} + + +unsigned int geteuid (void) +{ + return (0); +} + + +unsigned int getgid (void) +{ + return (0); +} + + +unsigned int getegid (void) +{ + return (0); +} + + +char *getlogin (void) +{ + return ("root"); +} + +#endif /* TANDEM */ +#endif + +int getpgrp(void) +{ + return (0); +} |