summaryrefslogtreecommitdiff
path: root/netware/sys
diff options
context:
space:
mode:
authorVenkat Raghavan S <rvenkat@php.net>2002-05-29 08:41:21 +0000
committerVenkat Raghavan S <rvenkat@php.net>2002-05-29 08:41:21 +0000
commitc61598f32babf080802a4c73d8eec1006f9fc0a2 (patch)
tree5f462c9c0ed53b50b118cc9bf0fd3be7f60f55be /netware/sys
parentb049f9bf17d7f7efa2aa8608c00baee8cc5c34c3 (diff)
downloadphp-git-c61598f32babf080802a4c73d8eec1006f9fc0a2.tar.gz
Changes to build TSRM on NetWare
Diffstat (limited to 'netware/sys')
-rw-r--r--netware/sys/stat.h138
1 files changed, 138 insertions, 0 deletions
diff --git a/netware/sys/stat.h b/netware/sys/stat.h
new file mode 100644
index 0000000000..dc1ab91347
--- /dev/null
+++ b/netware/sys/stat.h
@@ -0,0 +1,138 @@
+#ifndef __sys_stat_h__
+#define __sys_stat_h__
+/*============================================================================
+= Novell Software Development Kit
+=
+= Copyright (C) 1999-2002 Novell, Inc. All Rights Reserved.
+=
+= This work is subject to U.S. and international copyright laws and treaties.
+= Use and redistribution of this work is subject to the license agreement
+= accompanying the software development kit (SDK) that contains this work.
+= However, no part of this work may be revised and/or modified without the
+= prior written consent of Novell, Inc. Any use or exploitation of this work
+= without authorization could subject the perpetrator to criminal and civil
+= liability.
+=
+= Source(s): ISO/IEC (POSIX) 9845:1996
+=
+= sys/stat.h
+==============================================================================
+*/
+#include <time.h>
+#include <stddef.h>
+#include <sys/mode.h>
+#include <sys/time.h>
+
+#include <pshpack1.h>
+
+#ifdef CLIB_STAT_PATCH /* Venkat (7/2/02) */
+/***************** stat structure taken from CLib and modified ***************/
+struct stat
+{
+ long st_dev; /* volume number */ /* dev_t replaced by long : Venkat (19/3/02) */
+ MACHINE_WORD st_ino; /* directory entry number of the st_name */ /* ino_t replaced by MACHINE_WORD : Venkat (19/3/02) */
+ unsigned short st_mode; /* emulated file mode */
+ unsigned short st_pad1; /* reserved for alignment */
+ unsigned long st_nlink; /* count of hard links (always 1) */
+ unsigned long st_uid; /* object id of owner */
+ unsigned long st_gid; /* group-id (always 0) */
+ long st_rdev; /* device type (always 0) */ /* dev_t replaced by long : Venkat (19/3/02) */
+ off_t st_size; /* total file size--files only */
+ time_t st_atime; /* last access date--files only */
+ time_t st_mtime; /* last modify date and time */
+ time_t st_ctime; /* POSIX: last status change time... */
+ /* ...NetWare: creation date/time */
+ time_t st_btime; /* last archived date and time */
+ unsigned long st_attr; /* file attributes */
+ unsigned long st_archivedID; /* user/object ID of last archive */
+ unsigned long st_updatedID; /* user/object ID of last update */
+ unsigned short st_inheritedRightsMask; /* inherited rights mask */
+ unsigned short st_pad2; /* reserved for alignment */
+ unsigned int st_originatingNameSpace; /* namespace of creation */
+ size_t st_blksize; /* block size for allocation--files only */
+ size_t st_blocks; /* count of blocks allocated to file */
+ unsigned int st_flags; /* user-defined flags */
+ unsigned long st_spare[4]; /* for future use */
+ unsigned char st_name[255+1];/* TARGET_NAMESPACE name */
+};
+/***************** stat structure taken from CLib and modified ***************/
+
+struct stat_libc
+{
+ uint32_t st_userspec; /* untouched by stat() */
+ uint32_t st_flags; /* flags for this entry */
+ mode_t st_mode; /* emulated file mode */
+ uint32_t st_spare1;
+ uint64_t st_gen; /* generation number of inode */
+ ino_t st_ino; /* directory entry number */
+ dev_t st_dev; /* volume number */
+ dev_t st_rdev; /* device type (always 0) */
+ off64_t st_size; /* total file size */
+ uint64_t st_spare2;
+ blkcnt_t st_blocks; /* count of blocks allocated to file */
+ blksize_t st_blksize; /* block size for allocation--files only */
+ nlink_t st_nlink; /* count of hard links (always 1) */
+ uint32_t st_spare3[3];
+ uid_t st_uid; /* owner (object) identity */
+ gid_t st_gid; /* group-id (always 0) */
+ uid_t st_bid; /* identity of last archiver */
+ uid_t st_mid; /* identity of last updator */
+ timespec_t st_atime; /* last access date--files only */
+ timespec_t st_mtime; /* last modify date and time */
+ timespec_t st_ctime; /* last file attributes modification */
+ timespec_t st_btime; /* last archived date and time */
+ uint64_t st_spare4[44];
+}; /* sizeof(struct dirent) == 0x200 (512.) */
+
+#else
+struct stat
+{
+ uint32_t st_userspec; /* untouched by stat() */
+ uint32_t st_flags; /* flags for this entry */
+ mode_t st_mode; /* emulated file mode */
+ uint32_t st_spare1;
+ uint64_t st_gen; /* generation number of inode */
+ ino_t st_ino; /* directory entry number */
+ dev_t st_dev; /* volume number */
+ dev_t st_rdev; /* device type (always 0) */
+ off64_t st_size; /* total file size */
+ uint64_t st_spare2;
+ blkcnt_t st_blocks; /* count of blocks allocated to file */
+ blksize_t st_blksize; /* block size for allocation--files only */
+ nlink_t st_nlink; /* count of hard links (always 1) */
+ uint32_t st_spare3[3];
+ uid_t st_uid; /* owner (object) identity */
+ gid_t st_gid; /* group-id (always 0) */
+ uid_t st_bid; /* identity of last archiver */
+ uid_t st_mid; /* identity of last updator */
+ timespec_t st_atime; /* last access date--files only */
+ timespec_t st_mtime; /* last modify date and time */
+ timespec_t st_ctime; /* last file attributes modification */
+ timespec_t st_btime; /* last archived date and time */
+ uint64_t st_spare4[44];
+}; /* sizeof(struct dirent) == 0x200 (512.) */
+#endif
+
+#include <poppack.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+int chmod ( const char *path, mode_t mode );
+int fchmod( int fildes, mode_t mode );
+int fstat ( int fildes, struct stat *buf );
+int mkdir ( const char *pathname, mode_t mode );
+int mkfifo( const char *pathname, mode_t mode );
+int stat ( const char *path, struct stat *buf );
+mode_t umask ( mode_t cmask );
+
+#ifdef __cplusplus
+}
+#endif
+
+#define stat64 stat /* same structure and function do both */
+#define fstat64 fstat /* same function does both */
+
+#endif