[PATCH] Change cygwin dirent.h for 64 bit inode

Christopher Faylor cgf@redhat.com
Mon May 12 11:22:00 GMT 2003


2003-05-10  Christopher Faylor  <cgf@redhat.com>

	* libc/sys/cygwin/sys/dirent.h (struct dirent): Accommodate (slightly)
	64 bit inodes.

Index: libc/sys/cygwin/sys/dirent.h
===================================================================
RCS file: /cvs/uberbaum/newlib/libc/sys/cygwin/sys/dirent.h,v
retrieving revision 1.9
diff -u -p -r1.9 dirent.h
--- libc/sys/cygwin/sys/dirent.h	1 Apr 2003 14:53:02 -0000	1.9
+++ libc/sys/cygwin/sys/dirent.h	11 May 2003 00:11:18 -0000
@@ -13,17 +13,19 @@
 
 #include <sys/types.h>
 
-#define __DIRENT_VERSION	1
+#define __DIRENT_VERSION	2
 
+#pragma pack(push,4)
 struct dirent
 {
   long d_version;	/* Used since Cygwin 1.3.3. */
-  long __d_reserved[2];
+  ino_t d_ino;		/* still junk but with more bits */
   long d_fd;		/* File descriptor of open directory.
 			   Used since Cygwin 1.3.3. */
-  ino_t d_ino;		/* Just for compatibility, it's junk */
+  unsigned long old_d_ino;/* Just for compatibility, it's junk */
   char d_name[256];	/* FIXME: use NAME_MAX? */
 };
+#pragma pack(pop)
 
 #define __DIRENT_COOKIE 0xdede4242
 



More information about the Newlib mailing list