diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 12:27:41 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2010-07-16 12:27:41 +0300 |
commit | 61bb57af53ebe916d2db6e3585d4fc7ac1d99b92 (patch) | |
tree | 2bfc4e5b127618d286f57a87d416702131b1b01d /vms/vms_misc.c | |
parent | 0a9ae0c89481db540e1b817a63cc6c793a62c90d (diff) | |
download | egawk-61bb57af53ebe916d2db6e3585d4fc7ac1d99b92.tar.gz egawk-61bb57af53ebe916d2db6e3585d4fc7ac1d99b92.tar.bz2 egawk-61bb57af53ebe916d2db6e3585d4fc7ac1d99b92.zip |
Move to gawk-2.15.3.
Diffstat (limited to 'vms/vms_misc.c')
-rw-r--r-- | vms/vms_misc.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/vms/vms_misc.c b/vms/vms_misc.c index 4d065115..35be9cc7 100644 --- a/vms/vms_misc.c +++ b/vms/vms_misc.c @@ -107,20 +107,20 @@ unlink( const char *file_spec ) { #ifdef open # undef open #endif +extern int creat P((const char *,int,...)); +extern int open P((const char *,int,unsigned,...)); + /* vms_open() - open a file, possibly creating it */ int vms_open( const char *name, int mode, ... ) { - extern int creat P((const char *,int,...)); - extern int open P((const char *,int,unsigned,...)); - if (mode == (O_WRONLY|O_CREAT|O_TRUNC)) return creat(name, 0, "shr=nil", "mbc=24"); else { struct stat stb; const char *mbc, *shr = "shr=get"; - if (stat(name, &stb) < 0) { /* assume DECnet */ + if (stat((char *)name, &stb) < 0) { /* assume DECnet */ mbc = "mbc=8"; } else { /* ordinary file; allow full sharing iff record format */ mbc = "mbc=12"; @@ -140,9 +140,9 @@ vms_devopen( const char *name, int mode ) FILE *file = NULL; if (STREQ(name, "/dev/null")) - return open("NL:", mode); /* "/dev/null" => "NL:" */ + return open("NL:", mode, 0); /* "/dev/null" => "NL:" */ else if (STREQ(name, "/dev/tty")) - return open("TT:", mode); /* "/dev/tty" => "TT:" */ + return open("TT:", mode, 0); /* "/dev/tty" => "TT:" */ else if (strncasecmp(name, "SYS$", 4) == 0) { name += 4; /* skip "SYS$" */ if (strncasecmp(name, "INPUT", 5) == 0 && (mode & O_WRONLY) == 0) @@ -170,6 +170,14 @@ void tzset() return; } +/* getpgrp() -- there's no such thing as process group under VMS; + * job tree might be close enough to be useful though. + */ +int getpgrp() +{ + return 0; +} + /*----------------------------------------------------------------------*/ #ifdef NO_VMS_ARGS /* real code is in "vms/vms_args.c" */ void vms_arg_fixup( int *argc, char ***argv ) { return; } /* dummy */ |