diff options
Diffstat (limited to 'contrib/libf2c/libU77/access_.c')
-rw-r--r-- | contrib/libf2c/libU77/access_.c | 46 |
1 files changed, 25 insertions, 21 deletions
diff --git a/contrib/libf2c/libU77/access_.c b/contrib/libf2c/libU77/access_.c index fefdebb..0a2dbce 100644 --- a/contrib/libf2c/libU77/access_.c +++ b/contrib/libf2c/libU77/access_.c @@ -45,35 +45,39 @@ Boston, MA 02111-1307, USA. */ # define F_OK 0 #endif -#ifdef KR_headers -void g_char (); +void g_char (const char *a, ftnlen alen, char *b); -integer G77_access_0 (name, mode, Lname, Lmode) - char *name, *mode; - ftnlen Lname, Lmode; -#else -void g_char(const char *a, ftnlen alen, char *b); - -integer G77_access_0 (const char *name, const char *mode, ftnlen Lname, ftnlen Lmode) -#endif +integer +G77_access_0 (const char *name, const char *mode, ftnlen Lname, ftnlen Lmode) { char *buff; - char *bp, *blast; int amode, i; - buff = malloc (Lname+1); - if (!buff) return -1; + buff = malloc (Lname + 1); + if (!buff) + return -1; g_char (name, Lname, buff); amode = 0; - for (i=0;i<Lmode;i++) { - switch (mode[i]) { - case 'r': amode |= R_OK; break; - case 'w': amode |= W_OK; break; - case 'x': amode |= X_OK; break; - case ' ': amode |= F_OK; break; /* as per Sun, at least */ - default: return EINVAL; + for (i = 0; i < Lmode; i++) + { + switch (mode[i]) + { + case 'r': + amode |= R_OK; + break; + case 'w': + amode |= W_OK; + break; + case 'x': + amode |= X_OK; + break; + case ' ': + amode |= F_OK; + break; /* as per Sun, at least */ + default: + return EINVAL; + } } - } i = access (buff, amode); free (buff); return i; |