|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights ! 7: * Reserved. This file contains Original Code and/or Modifications of ! 8: * Original Code as defined in and that are subject to the Apple Public ! 9: * Source License Version 1.1 (the "License"). You may not use this file ! 10: * except in compliance with the License. Please obtain a copy of the ! 11: * License at http://www.apple.com/publicsource and read it before using ! 12: * this file. ! 13: * ! 14: * The Original Code and all software distributed under the License are ! 15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 18: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ! 19: * License for the specific language governing rights and limitations ! 20: * under the License. ! 21: * ! 22: * @APPLE_LICENSE_HEADER_END@ ! 23: */ ! 24: ! 25: /* Copyright (c) 1998 Apple Computer, Inc. All Rights Reserved */ ! 26: /*- ! 27: * @(#)vstat.h ! 28: */ ! 29: /* HISTORY ! 30: * 01-27-98 chw at Apple Computer, Inc. ! 31: * Created. ! 32: */ ! 33: ! 34: #ifndef _SYS_VSTAT_H_ ! 35: #define _SYS_VSTAT_H_ ! 36: ! 37: #include <sys/time.h> ! 38: #include <sys/attr.h> ! 39: ! 40: #ifndef _POSIX_SOURCE ! 41: ! 42: struct vstat { ! 43: fsid_t vst_volid; /* volume identifier */ ! 44: fsobj_id_t vst_nodeid; /* object's id */ ! 45: fsobj_type_t vst_vnodetype; /* vnode type (VREG, VCPLX, VDIR, etc.) */ ! 46: fsobj_tag_t vst_vnodetag; /* vnode tag (HFS, UFS, etc.) */ ! 47: mode_t vst_mode; /* inode protection mode */ ! 48: nlink_t vst_nlink; /* number of hard links */ ! 49: uid_t vst_uid; /* user ID of the file's owner */ ! 50: gid_t vst_gid; /* group ID of the file's group */ ! 51: dev_t vst_dev; /* inode's device */ ! 52: dev_t vst_rdev; /* device type */ ! 53: #ifndef _POSIX_SOURCE ! 54: struct timespec vst_atimespec; /* time of last access */ ! 55: struct timespec vst_mtimespec; /* time of last data modification */ ! 56: struct timespec vst_ctimespec; /* time of last file status change */ ! 57: #else ! 58: time_t vst_atime; /* time of last access */ ! 59: long vst_atimensec; /* nsec of last access */ ! 60: time_t vst_mtime; /* time of last data modification */ ! 61: long vst_mtimensec; /* nsec of last data modification */ ! 62: time_t vst_ctime; /* time of last file status change */ ! 63: long vst_ctimensec; /* nsec of last file status change */ ! 64: #endif ! 65: off_t vst_filesize; /* file size, in bytes */ ! 66: quad_t vst_blocks; /* bytes allocated for file */ ! 67: u_int32_t vst_blksize; /* optimal blocksize for I/O */ ! 68: u_int32_t vst_flags; /* user defined flags for file */ ! 69: }; ! 70: ! 71: #endif /* ! _POSIX_SOURCE */ ! 72: ! 73: #endif /* !_SYS_VSTAT_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.