/* * Copyright (c) 1980 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. * * @(#)lstat_.c 5.1 6/7/85 */ /* * get file status * * calling sequence: * integer lstat, statb(12) * external lstat * ierr = lstat (name, statb) * where: * 'statb' will receive the stat structure for file 'name'. */ #include #ifndef MAXPATHLEN #define MAXPATHLEN 128 #endif #include #include "../libI77/f_errno.h" long lstat_(name, stbuf, namlen) char *name; long *stbuf, namlen; { char buf[MAXPATHLEN]; struct stat statb; if (namlen >= sizeof buf) return((long)(errno=F_ERARG)); g_char(name, namlen, buf); if (lstat(buf, &statb) == 0) { *stbuf++ = statb.st_dev; *stbuf++ = statb.st_ino; *stbuf++ = statb.st_mode; *stbuf++ = statb.st_nlink; *stbuf++ = statb.st_uid; *stbuf++ = statb.st_gid; *stbuf++ = statb.st_rdev; *stbuf++ = statb.st_size; *stbuf++ = statb.st_atime; *stbuf++ = statb.st_mtime; *stbuf++ = statb.st_ctime; *stbuf++ = statb.st_blksize; return(0L); } return ((long)errno); }